Skip to contentSkip to conversation

scsi/initio: add GFP_KERNEL flag

PATCH New Dan Carpenter 1 participant 1 message Jul 17, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 scsi/initio: add GFP_KERNEL flag

Calling scb = kzalloc(i, GFP_DMA) is not the right idea. If this is what we really wanted it would be better to specify it explicitly as kzalloc(i, GFP_NOWAIT | GFP_DMA). But in this case it's OK to wait so I changed it to use GFP_KERNEL. Also I added a __GFP_NOWARN, since we expect the allocation to fail occasionaly (and we just try allocate a smaller amount on the next time through the loop).

drivers/scsi/initio.c +2 -1
index a771416..a4baa44 100644
@@ -2885,7 +2885,8 @@ static int initio_probe_one(struct pci_dev *pdev,
 
 	for (; num_scb >= MAX_TARGETS + 3; num_scb--) {
 		i = num_scb * sizeof(struct scsi_ctrl_blk);
-		if ((scb = kzalloc(i, GFP_DMA)) != NULL)
+		scb = kzalloc(i, GFP_KERNEL | GFP_DMA | __GFP_NOWARN);
+		if (scb)
 			break;
 	}