scsi: check kmalloc() return value.
PATCH 1/1 scsi: check kmalloc() return value.
Description: Check the return value of kmalloc() in function ch_readconfig(), in file drivers/scsi/ch.c.
Signed-off-by Amit Choudhary <[email protected]>
drivers/scsi/ch.c +6 -2
@@ -324,7 +324,7 @@ ch_readconfig(scsi_changer *ch)if (!buffer)return -ENOMEM ;memset (buffer,0 ,512 ); - +memset (cmd,0 ,sizeof (cmd)); cmd[0 ] =MODE_SENSE ; cmd[1 ] = ch->device->lun <<5 ;
@@ -367,7 +367,7 @@ ch_readconfig(scsi_changer *ch) }else {vprintk ("reading element address assigment page failed!\n" ); } - +/* vendor specific element types */ for (i =0 ; i <4 ; i++) {if (0 == vendor_counts[i])
@@ -384,6 +384,10 @@ ch_readconfig(scsi_changer *ch)/* look up the devices of the data transfer elements */ ch->dt =kmalloc (ch->counts[CHET_DT ]*sizeof (struct scsi_device ),GFP_KERNEL ); +if (!ch->dt) { +kfree (buffer); +return -ENOMEM ; + }for (elem =0 ; elem < ch->counts[CHET_DT ]; elem++) { id =-1 ; lun =0 ;