linux/drivers/scsi/qedi
Jia-Ju Bai b128458876 scsi: qedi: Fix a possible sleep-in-atomic bug in qedi_process_tmf_resp
The driver may sleep under a spinlock.
The function call path is:
qedi_cpu_offline (acquire the spinlock)
  qedi_fp_process_cqes
    qedi_mtask_completion
      qedi_process_tmf_resp
        kzalloc(GFP_KERNEL) --> may sleep

To fix it, GFP_KERNEL is replaced with GFP_ATOMIC.

This bug is found by my static analysis tool(DSAC) and checked by my
code review.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Acked-by: Manish Rangankar <Manish.Rangankar@cavium.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2017-12-20 21:11:51 -05:00
..
Kconfig
Makefile
qedi_dbg.c
qedi_dbg.h
qedi_debugfs.c
qedi_fw_api.c
qedi_fw_iscsi.h
qedi_fw_scsi.h
qedi_fw.c scsi: qedi: Fix a possible sleep-in-atomic bug in qedi_process_tmf_resp 2017-12-20 21:11:51 -05:00
qedi_gbl.h
qedi_hsi.h
qedi_iscsi.c
qedi_iscsi.h
qedi_main.c
qedi_nvm_iscsi_cfg.h
qedi_sysfs.c
qedi_version.h
qedi.h