linux/drivers/scsi/qla2xxx
Nilesh Javali 59f10a05b5 scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id()
The following call trace was observed:

localhost kernel: nvme nvme0: NVME-FC{0}: controller connect complete
localhost kernel: BUG: using smp_processor_id() in preemptible [00000000] code: kworker/u129:4/75092
localhost kernel: nvme nvme0: NVME-FC{0}: new ctrl: NQN "nqn.1992-08.com.netapp:sn.b42d198afb4d11ecad6d00a098d6abfa:subsystem.PR_Channel2022_RH84_subsystem_291"
localhost kernel: caller is qla_nvme_post_cmd+0x216/0x1380 [qla2xxx]
localhost kernel: CPU: 6 PID: 75092 Comm: kworker/u129:4 Kdump: loaded Tainted: G    B   W  OE    --------- ---  5.14.0-70.22.1.el9_0.x86_64+debug #1
localhost kernel: Hardware name: HPE ProLiant XL420 Gen10/ProLiant XL420 Gen10, BIOS U39 01/13/2022
localhost kernel: Workqueue: nvme-wq nvme_async_event_work [nvme_core]
localhost kernel: Call Trace:
localhost kernel: dump_stack_lvl+0x57/0x7d
localhost kernel: check_preemption_disabled+0xc8/0xd0
localhost kernel: qla_nvme_post_cmd+0x216/0x1380 [qla2xxx]

Use raw_smp_processor_id() instead of smp_processor_id().

Also use queue_work() across the driver instead of queue_work_on() thus
avoiding usage of smp_processor_id() when CONFIG_DEBUG_PREEMPT is enabled.

Cc: stable@vger.kernel.org
Suggested-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Link: https://lore.kernel.org/r/20230831112146.32595-2-njavali@marvell.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2023-09-05 05:36:08 -04:00
..
Kconfig scsi: Add HAS_IOPORT dependencies 2023-05-31 19:59:26 -04:00
Makefile scsi: qla2xxx: edif: Add start + stop bsgs 2021-07-27 00:06:42 -04:00
qla_attr.c scsi: qla2xxx: Remove unsupported ql2xenabledif option 2023-08-21 17:45:15 -04:00
qla_bsg.c scsi: qla2xxx: Pointer may be dereferenced 2023-06-14 22:06:02 -04:00
qla_bsg.h scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status 2022-09-01 00:30:55 -04:00
qla_dbg.c scsi: qla2xxx: Remove unsupported ql2xenabledif option 2023-08-21 17:45:15 -04:00
qla_dbg.h scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe 2023-08-21 17:45:14 -04:00
qla_def.h Merge branch '6.5/scsi-fixes' into 6.6/scsi-staging 2023-08-30 20:56:24 -04:00
qla_devtbl.h
qla_dfs.c scsi: qla2xxx: Fix firmware resource tracking 2023-08-21 17:45:14 -04:00
qla_dsd.h
qla_edif_bsg.h scsi: qla2xxx: edif: Fix clang warning 2023-01-11 23:48:26 -05:00
qla_edif.c scsi: qla2xxx: Avoid fcport pointer dereference 2023-06-14 22:06:01 -04:00
qla_edif.h scsi: qla2xxx: Relocate/rename vp map 2023-01-11 23:48:25 -05:00
qla_fw.h scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status 2022-09-01 00:30:55 -04:00
qla_gbl.h Merge patch series "qla2xxx driver misc features" 2023-08-25 17:07:34 -04:00
qla_gs.c scsi: qla2xxx: Replace one-element array with DECLARE_FLEX_ARRAY() helper 2023-06-07 21:27:28 -04:00
qla_init.c Merge branch '6.5/scsi-fixes' into 6.6/scsi-staging 2023-08-30 20:56:24 -04:00
qla_inline.h scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() 2023-09-05 05:36:08 -04:00
qla_iocb.c Merge branch '6.5/scsi-fixes' into 6.6/scsi-staging 2023-08-30 20:56:24 -04:00
qla_isr.c scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() 2023-09-05 05:36:08 -04:00
qla_mbx.c scsi: qla2xxx: Flush mailbox commands on chip reset 2023-08-21 17:45:14 -04:00
qla_mid.c scsi: qla2xxx: Declare SCSI host template const 2023-03-24 19:19:59 -04:00
qla_mr.c scsi: qla2xxx: Replace all non-returning strlcpy() with strscpy() 2023-05-16 21:41:34 -04:00
qla_mr.h
qla_nvme.c scsi: qla2xxx: Correct endianness for rqstlen and rsplen 2023-09-05 05:34:14 -04:00
qla_nvme.h scsi: qla2xxx: Add Unsolicited LS Request and Response Support for NVMe 2023-08-21 17:45:14 -04:00
qla_nx2.c scsi: qla2xxx: Use named initializers for q_dev_state 2022-02-22 21:11:07 -05:00
qla_nx2.h
qla_nx.c scsi: qla2xxx: Use named initializers for q_dev_state 2022-02-22 21:11:07 -05:00
qla_nx.h scsi: qla2xxx: Allow 32-byte CDBs 2023-08-21 17:37:42 -04:00
qla_os.c scsi: qla2xxx: Remove unsupported ql2xenabledif option 2023-08-21 17:45:15 -04:00
qla_settings.h
qla_sup.c scsi: qla2xxx: Add devids and conditionals for 28xx 2022-01-24 23:57:32 -05:00
qla_target.c scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() 2023-09-05 05:36:08 -04:00
qla_target.h scsi: qla2xxx: Relocate/rename vp map 2023-01-11 23:48:25 -05:00
qla_tmpl.c scsi: qla2xxx: Fix premature hw access after PCI error 2022-01-24 23:57:30 -05:00
qla_tmpl.h
qla_version.h scsi: qla2xxx: Update version to 10.02.09.100-k 2023-08-21 17:45:15 -04:00
tcm_qla2xxx.c scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() 2023-09-05 05:36:08 -04:00
tcm_qla2xxx.h