Re: [PATCH 08/13] qla2xxx: Fix SRB allocation flag to avoid sleeping in IRQ context

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2019-01-24 at 23:23 -0800, Himanshu Madhani wrote:
+AD4 From: Giridhar Malavali +ADw-gmalavali+AEA-marvell.com+AD4
+AD4 
+AD4 This patch fixes SRB allocation flag from GFP+AF8-KERNEL to GFP+AF8-ATOMIC, to
+AD4 prevent sleeping in IRQ context
+AD4 
+AD4 Signed-off-by: Giridhar Malavali +ADw-gmalavali+AEA-marvell.com+AD4
+AD4 Signed-off-by: Himanshu Madhani +ADw-hmadhani+AEA-marvell.com+AD4
+AD4 ---
+AD4  drivers/scsi/qla2xxx/qla+AF8-init.c +AHw 2 +--
+AD4  1 file changed, 1 insertion(+-), 1 deletion(-)
+AD4 
+AD4 diff --git a/drivers/scsi/qla2xxx/qla+AF8-init.c b/drivers/scsi/qla2xxx/qla+AF8-init.c
+AD4 index aa72e8316533..3bb4fa97e40a 100644
+AD4 --- a/drivers/scsi/qla2xxx/qla+AF8-init.c
+AD4 +-+-+- b/drivers/scsi/qla2xxx/qla+AF8-init.c
+AD4 +AEAAQA -1829,7 +-1829,7 +AEAAQA qla24xx+AF8-async+AF8-abort+AF8-cmd(srb+AF8-t +ACo-cmd+AF8-sp, bool wait)
+AD4  	int rval +AD0 QLA+AF8-FUNCTION+AF8-FAILED+ADs
+AD4  
+AD4  	sp +AD0 qla2xxx+AF8-get+AF8-qpair+AF8-sp(cmd+AF8-sp-+AD4-vha, cmd+AF8-sp-+AD4-qpair, cmd+AF8-sp-+AD4-fcport,
+AD4 -	    GFP+AF8-KERNEL)+ADs
+AD4 +-	    GFP+AF8-ATOMIC)+ADs
+AD4  	if (+ACE-sp)
+AD4  		goto done+ADs

Is this change necessary because this function can be called from inside a
timer callback function? Is that callback function qla2x00+AF8-sp+AF8-timeout()?
If so, have you considered to modify that function such that it schedules
the work it has to do? Would that be sufficient to avoid that GFP+AF8-KERNEL
has to be changed into GFP+AF8-ATOMIC in qla24xx+AF8-async+AF8-abort+AF8-cmd()?

Thanks,

Bart.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux