linux/drivers/isdn/hisax
Florin Malita 9ee0be05dc ISDN HiSax: uninitialized return in hisax_cs_setup
Coverity (1792) spotted a possibly uninitialized return value in case of
kmalloc() failure:

1116 static int hisax_cs_setup(int cardnr, struct IsdnCard *card,
1117                           struct IsdnCardState *cs)
1119         int ret;
1120
1121         if (!(cs->rcvbuf = kmalloc(MAX_DFRAME_LEN_L1, GFP_ATOMIC))) {
1122                 printk(KERN_WARNING "HiSax: No memory for isac rcvbuf\n");
1123                 ll_unload(cs);
1124                 goto outf_cs;
...
1165 outf_cs:
1166         kfree(cs);
1167         card->cs = NULL;
1168         return ret;

The straightforward solution would be to just add the missing
initialization but hardcoding the return value in the out_cs branch
(only taken on failure) seems to work just as well and it allows killing
a couple of other lines too.

Signed-off-by: Florin Malita <fmalita@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-07-18 18:17:23 -04:00
..
amd7930_fn.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
amd7930_fn.h fix file specification in comments 2006-10-03 23:01:26 +02:00
arcofi.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
arcofi.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
asuscom.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
avm_a1.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
avm_a1p.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
avm_pci.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
avma1_cs.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
bkm_a4t.c [ISDN] HiSax bkm_a4t: split setup into two smaller functions 2007-07-17 17:24:17 -04:00
bkm_a8.c PCI: Change all drivers to use pci_device->revision 2007-07-11 16:02:10 -07:00
bkm_ax.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
callc.c [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
config.c ISDN HiSax: uninitialized return in hisax_cs_setup 2007-07-18 18:17:23 -04:00
diva.c [PATCH] ISDN: fix warnings 2006-12-08 08:29:01 -08:00
elsa_cs.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
elsa_ser.c [SK_BUFF]: Introduce skb_copy_from_linear_data{_offset} 2007-04-25 22:28:23 -07:00
elsa.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
enternow_pci.c [ISDN] HiSax enternow: split setup into 3 smaller functions 2007-07-17 17:23:22 -04:00
fsm.c [PATCH] isdn: replace kmalloc+memset with kzalloc 2006-12-08 08:29:01 -08:00
fsm.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gazel.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
hfc4s8s_l1.c [PATCH] ISDN: Rename special macro CONFIG_HISAX_HFC4S8S_PCIMEM 2007-02-12 09:48:35 -08:00
hfc4s8s_l1.h Fix misc .c/.h comment typos 2006-11-30 05:24:39 +01:00
hfc_2bds0.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
hfc_2bds0.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hfc_2bs0.c [PATCH] hisax: fix usage of __init* 2006-07-10 13:24:15 -07:00
hfc_2bs0.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hfc_pci.c [ISDN] HiSax hfc_pci: minor cleanups 2007-07-17 17:26:24 -04:00
hfc_pci.h [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
hfc_sx.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
hfc_sx.h [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
hfc_usb.c HiSax: fix error checking for hisax_register()] 2007-05-23 20:14:14 -07:00
hfc_usb.h [PATCH] drivers/isdn/hisax/: Convert to generic boolean-values 2007-02-12 09:48:35 -08:00
hfcscard.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
hisax_cfg.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hisax_debug.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
hisax_fcpcipnp.c HiSax: fix error checking for hisax_register()] 2007-05-23 20:14:14 -07:00
hisax_fcpcipnp.h [PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1 2006-01-08 20:14:07 -08:00
hisax_if.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hisax_isac.c [PATCH] drivers/isdn/*: trivial vsnprintf() conversion 2006-12-08 08:29:01 -08:00
hisax_isac.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
hisax.h [PATCH] ISDN: Remove defunct test emulator 2007-02-12 09:48:34 -08:00
hscx_irq.c [PATCH] Unlinline a bunch of other functions 2006-01-14 18:27:06 -08:00
hscx.c [PATCH] kfree cleanup: drivers/isdn 2005-11-07 07:54:02 -08:00
hscx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
icc.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
icc.h [PATCH] hisax: fix usage of __init* 2006-07-10 13:24:15 -07:00
ipac.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ipacx.c [PATCH] hisax: fix usage of __init* 2006-07-10 13:24:15 -07:00
ipacx.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isac.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
isac.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isar.c [PATCH] ISDN: fix BChannel_bh() call from isar_bh() 2007-03-27 09:05:15 -07:00
isar.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isdnhdlc.c [PATCH] isdn/hisax: use bitrev8 2006-12-08 08:28:40 -08:00
isdnhdlc.h [PATCH] isdn/hisax: use bitrev8 2006-12-08 08:28:40 -08:00
isdnl1.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
isdnl1.h [PATCH] drivers/isdn/hisax/: proper prototypes 2007-02-12 09:48:34 -08:00
isdnl2.c [SK_BUFF]: Introduce skb_copy_from_linear_data{_offset} 2007-04-25 22:28:23 -07:00
isdnl2.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isdnl3.c [PATCH] drivers/isdn/hisax/: proper prototypes 2007-02-12 09:48:34 -08:00
isdnl3.h [PATCH] drivers/isdn/hisax/: proper prototypes 2007-02-12 09:48:34 -08:00
isurf.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
ix1_micro.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
jade_irq.c [PATCH] Unlinline a bunch of other functions 2006-01-14 18:27:06 -08:00
jade.c [PATCH] hisax: fix usage of __init* 2006-07-10 13:24:15 -07:00
jade.h [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
Kconfig [PATCH] ISDN: Remove defunct test emulator 2007-02-12 09:48:34 -08:00
l3_1tr6.c [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
l3_1tr6.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
l3dss1.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
l3dss1.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
l3ni1.c [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
l3ni1.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
lmgr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile [PATCH] ISDN: Remove defunct test emulator 2007-02-12 09:48:34 -08:00
mic.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
netjet.c PCI: Cleanup the includes of <linux/pci.h> 2007-05-02 19:02:35 -07:00
netjet.h IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
niccy.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
nj_s.c [ISDN] HiSax netjet_s: code movement, prep for hotplug 2007-07-17 17:18:29 -04:00
nj_u.c [ISDN] HiSax netjet_u: split setup into 3 smaller functions 2007-07-17 17:21:37 -04:00
q931.c [PATCH] Fix typo in drivers/isdn/hisax/q931.c 2006-06-26 09:58:23 -07:00
s0box.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
saphir.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sedlbauer_cs.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
sedlbauer.c sane irq initialization in sedlbauer hisax 2007-07-17 10:23:05 -07:00
sportster.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
st5481_b.c [PATCH] isdn/hisax: use bitrev8 2006-12-08 08:28:40 -08:00
st5481_d.c [PATCH] drivers/isdn/*: trivial vsnprintf() conversion 2006-12-08 08:29:01 -08:00
st5481_init.c HiSax: fix error checking for hisax_register()] 2007-05-23 20:14:14 -07:00
st5481_usb.c HiSax: fix error checking for hisax_register()] 2007-05-23 20:14:14 -07:00
st5481.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tei.c [PATCH] drivers/isdn/hisax/: possible cleanups 2005-06-25 16:25:07 -07:00
teleint.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
teles0.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
teles3.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
teles_cs.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
telespci.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
w6692.c WorkStruct: make allyesconfig 2006-11-22 14:57:56 +00:00
w6692.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00