ce9f061...
by
Hannes Reinecke <email address hidden>
scsi: megaraid_sas: fixup MSIx interrupt setup during resume
Streamline resume workflow by using the same functions for enabling MSIx
interrupts as used during initialisation. Without it the driver might
crash during resume with:
WARNING: CPU: 2 PID: 4306 at ../drivers/pci/msi.c:1303 pci_irq_get_affinity+0x3b/0x90
Link: https://<email address hidden>
Signed-off-by: Hannes Reinecke <email address hidden>
Acked-by: Sumit Saxena <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 92b4f9d150593a7a78d9872c2d5dc05ffae4521b)
Signed-off-by: Michael Reed <email address hidden>
scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO requests
Remove usage of device_busy counter from driver. Instead of device_busy
counter now driver uses 'nr_active' counter of request_queue to get the
number of inflight request for a LUN.
Link: https://lore<email address hidden>
Link : https://patchwork.kernel.org/patch/11249297/
Signed-off-by: Chandrakanth Patil <email address hidden>
Signed-off-by: Anand Lodnoor <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 4d1634b8d12ecb844f0d1af0b79c703cf9911484)
Signed-off-by: Michael Reed <email address hidden>
scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing firmware fault
IOCTLs causing firmware fault may end up in failed controller resets and
finally killing the adapter.
This patch fixes this problem as stated below:
In OCR sequence, driver will attempt refiring pended IOCTLs upto two times.
If first two attempts fail, then in third attempt driver will return pended
IOCTLs with EBUSY status to application. These changes are done to ensure
if any of pended IOCTLs is causing firmware fault and resulting into OCR
failure, then in last attempt of OCR driver will refrain firing it to
firmware and saving adapter from being killed due to faulty IOCTL.
Link: https://lore<email address hidden>
Signed-off-by: Sumit Saxena <email address hidden>
Signed-off-by: Shivasharan S <email address hidden>
Signed-off-by: Chandrakanth Patil <email address hidden>
Signed-off-by: Anand Lodnoor <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 56ee0c585602d32058d19da0d3b664be5bc374ba)
Signed-off-by: Michael Reed <email address hidden>
scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational state
After issuing a adapter reset, driver blindly used to set adprecovery flag
to OPERATIONAL state. Add a check to see if the FW is operational before
setting the flag and marking reset adapter successful.
Link: https://lore<email address hidden>
Signed-off-by: Shivasharan S <email address hidden>
Signed-off-by: Anand Lodnoor <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit eeb63c23ffe1704990202af279400bf2b448ad89)
Signed-off-by: Michael Reed <email address hidden>
scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is disabled
At the time of firmware initialization, if JBOD map or RAID map is not
available, driver can function without these features in a limited
functionality mode.
Link: https://lore<email address hidden>
Signed-off-by: Shivasharan S <email address hidden>
Signed-off-by: Anand Lodnoor <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 9330a0fd827a02234ebdb536810d6adbbb6a2aaa)
Signed-off-by: Michael Reed <email address hidden>
scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices
Ideally, optimal queue depth will be provided by firmware. The driver
defines will be used as a fallback mechanism in case the FW assisted QD is
not supported. The driver defined values provide optimal queue depth for
most of the drives and the workloads, as is learned from the firmware
assisted QD results.
Link: https://lore<email address hidden>
Signed-off-by: Chandrakanth Patil <email address hidden>
Signed-off-by: Anand Lodnoor <email address hidden>
Signed-off-by: Martin K. Petersen <email address hidden>
(cherry picked from commit 6e73550670ed1c07779706bb6cf61b99c871fc42)
Signed-off-by: Michael Reed <email address hidden>