linux/drivers/scsi/lpfc
Justin Tee 4623713e7a scsi: lpfc: Remove IRQF_ONESHOT flag from threaded IRQ handling
IRQF_ONESHOT is found to mask HBA generated interrupts when thread_fn is
running.  As a result, some EQEs/CQEs miss timely processing resulting in
SCSI layer attempts to abort commands due to io_timeout.  Abort CQEs are
also not processed leading to the observations of hangs and spam of "0748
abort handler timed out waiting for aborting I/O" log messages.

Remove the IRQF_ONESHOT flag.  The cmpxchg and xchg atomic operations on
lpfc_queue->queue_claimed already protect potential parallel access to an
EQ/CQ should the thread_fn get interrupted by the primary irq handler.

Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Link: https://lore.kernel.org/r/20240305200503.57317-4-justintee8345@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2024-03-10 18:56:43 -04:00
..
lpfc_attr.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_attr.h
lpfc_bsg.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_bsg.h
lpfc_compat.h
lpfc_crtn.h scsi: lpfc: Replace blk_irq_poll intr handler with threaded IRQ 2023-05-08 07:16:05 -04:00
lpfc_ct.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_debugfs.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_debugfs.h
lpfc_disc.h scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID 2022-09-15 22:18:27 -04:00
lpfc_els.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_hbadisc.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_hw4.h scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_hw.h scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions 2023-07-23 16:17:07 -04:00
lpfc_ids.h
lpfc_init.c scsi: lpfc: Remove IRQF_ONESHOT flag from threaded IRQ handling 2024-03-10 18:56:43 -04:00
lpfc_logmsg.h scsi: lpfc: Introduce LOG_NODE_VERBOSE messaging flag 2023-10-13 16:58:27 -04:00
lpfc_mbox.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_mem.c scsi: lpfc: Copyright updates for 14.2.0.16 patches 2023-11-15 09:52:58 -05:00
lpfc_nl.h
lpfc_nportdisc.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_nvme.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_nvme.h
lpfc_nvmet.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_scsi.c scsi: lpfc: Remove unnecessary log message in queuecommand path 2024-03-10 18:56:43 -04:00
lpfc_scsi.h
lpfc_sli4.h scsi: lpfc: Replace blk_irq_poll intr handler with threaded IRQ 2023-05-08 07:16:05 -04:00
lpfc_sli.c scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_sli.h scsi: lpfc: Copyright updates for 14.2.0.16 patches 2023-11-15 09:52:58 -05:00
lpfc_version.h scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
lpfc_vmid.c scsi: lpfc: Move determination of vmid_flag after VMID reinitialization completes 2023-12-13 22:17:57 -05:00
lpfc_vport.c scsi: lpfc: Move NPIV's transport unregistration to after resource clean up 2024-03-10 18:56:43 -04:00
lpfc_vport.h
lpfc.h scsi: lpfc: Copyright updates for 14.4.0.0 patches 2024-02-05 20:51:36 -05:00
Makefile