mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-16 01:04:08 +08:00
scsi: st: Replace GFP_ATOMIC with GFP_KERNEL in st_probe
st_probe() is never called in atomic context. st_probe() is only set as ".probe" in struct scsi_driver. Despite never getting called from atomic context, st_probe() calls kzalloc() with GFP_ATOMIC, which does not sleep for allocation. GFP_ATOMIC is not necessary and can be replaced with GFP_KERNEL, which can sleep and improve the possibility of sucessful allocation. This is found by a static analysis tool named DCNS written by myself. And I also manually check it. Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
c360652006
commit
1f618aac2f
@ -4290,7 +4290,7 @@ static int st_probe(struct device *dev)
|
||||
goto out_buffer_free;
|
||||
}
|
||||
|
||||
tpnt = kzalloc(sizeof(struct scsi_tape), GFP_ATOMIC);
|
||||
tpnt = kzalloc(sizeof(struct scsi_tape), GFP_KERNEL);
|
||||
if (tpnt == NULL) {
|
||||
sdev_printk(KERN_ERR, SDp,
|
||||
"st: Can't allocate device descriptor.\n");
|
||||
|
Loading…
Reference in New Issue
Block a user