Skip to content

Commit b977b0d

Browse files
committed
Merge: megaraid: Driver update
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-9/-/merge_requests/6738 JIRA: https://issues.redhat.com/browse/RHEL-80700 scsi: megaraid_sas driver update Upstream Status: Accepted Tested: Compiled and tested on Local Development Setup Signed-off-by: Chandrakanth Patil <chanpati@redhat.com> Approved-by: Tomas Henzl <thenzl@redhat.com> Approved-by: Chris Leech <cleech@redhat.com> Approved-by: Ewan D. Milne <emilne@redhat.com> Approved-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> Merged-by: Augusto Caringi <acaringi@redhat.com>
2 parents b71e05a + 684753c commit b977b0d

File tree

3 files changed

+18
-10
lines changed

3 files changed

+18
-10
lines changed

drivers/scsi/megaraid/megaraid_sas.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
/*
2424
* MegaRAID SAS Driver meta data
2525
*/
26-
#define MEGASAS_VERSION "07.727.03.00-rc1"
27-
#define MEGASAS_RELDATE "Oct 03, 2023"
26+
#define MEGASAS_VERSION "07.734.00.00-rc1"
27+
#define MEGASAS_RELDATE "Apr 03, 2025"
2828

2929
#define MEGASAS_MSIX_NAME_LEN 32
3030

drivers/scsi/megaraid/megaraid_sas_base.c

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ static unsigned int scmd_timeout = MEGASAS_DEFAULT_CMD_TIMEOUT;
9393
module_param(scmd_timeout, int, 0444);
9494
MODULE_PARM_DESC(scmd_timeout, "scsi command timeout (10-90s), default 90s. See megasas_reset_timer.");
9595

96-
int perf_mode = -1;
96+
static int perf_mode = -1;
9797
module_param(perf_mode, int, 0444);
9898
MODULE_PARM_DESC(perf_mode, "Performance mode (only for Aero adapters), options:\n\t\t"
9999
"0 - balanced: High iops and low latency queues are allocated &\n\t\t"
@@ -105,15 +105,15 @@ MODULE_PARM_DESC(perf_mode, "Performance mode (only for Aero adapters), options:
105105
"default mode is 'balanced'"
106106
);
107107

108-
int event_log_level = MFI_EVT_CLASS_CRITICAL;
108+
static int event_log_level = MFI_EVT_CLASS_CRITICAL;
109109
module_param(event_log_level, int, 0644);
110110
MODULE_PARM_DESC(event_log_level, "Asynchronous event logging level- range is: -2(CLASS_DEBUG) to 4(CLASS_DEAD), Default: 2(CLASS_CRITICAL)");
111111

112-
unsigned int enable_sdev_max_qd;
112+
static unsigned int enable_sdev_max_qd;
113113
module_param(enable_sdev_max_qd, int, 0444);
114114
MODULE_PARM_DESC(enable_sdev_max_qd, "Enable sdev max qd as can_queue. Default: 0");
115115

116-
int poll_queues;
116+
static int poll_queues;
117117
module_param(poll_queues, int, 0444);
118118
MODULE_PARM_DESC(poll_queues, "Number of queues to be use for io_uring poll mode.\n\t\t"
119119
"This parameter is effective only if host_tagset_enable=1 &\n\t\t"
@@ -122,7 +122,7 @@ MODULE_PARM_DESC(poll_queues, "Number of queues to be use for io_uring poll mode
122122
"High iops queues are not allocated &\n\t\t"
123123
);
124124

125-
int host_tagset_enable = 1;
125+
static int host_tagset_enable = 1;
126126
module_param(host_tagset_enable, int, 0444);
127127
MODULE_PARM_DESC(host_tagset_enable, "Shared host tagset enable/disable Default: enable(1)");
128128

@@ -2103,6 +2103,9 @@ static int megasas_device_configure(struct scsi_device *sdev,
21032103
/* This sdev property may change post OCR */
21042104
megasas_set_dynamic_target_properties(sdev, lim, is_target_prop);
21052105

2106+
if (!MEGASAS_IS_LOGICAL(sdev))
2107+
sdev->no_vpd_size = 1;
2108+
21062109
mutex_unlock(&instance->reset_mutex);
21072110

21082111
return 0;
@@ -3660,8 +3663,10 @@ megasas_complete_cmd(struct megasas_instance *instance, struct megasas_cmd *cmd,
36603663

36613664
case MFI_STAT_SCSI_IO_FAILED:
36623665
case MFI_STAT_LD_INIT_IN_PROGRESS:
3663-
cmd->scmd->result =
3664-
(DID_ERROR << 16) | hdr->scsi_status;
3666+
if (hdr->scsi_status == 0xf0)
3667+
cmd->scmd->result = (DID_ERROR << 16) | SAM_STAT_CHECK_CONDITION;
3668+
else
3669+
cmd->scmd->result = (DID_ERROR << 16) | hdr->scsi_status;
36653670
break;
36663671

36673672
case MFI_STAT_SCSI_DONE_WITH_ERROR:

drivers/scsi/megaraid/megaraid_sas_fusion.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2043,7 +2043,10 @@ map_cmd_status(struct fusion_context *fusion,
20432043

20442044
case MFI_STAT_SCSI_IO_FAILED:
20452045
case MFI_STAT_LD_INIT_IN_PROGRESS:
2046-
scmd->result = (DID_ERROR << 16) | ext_status;
2046+
if (ext_status == 0xf0)
2047+
scmd->result = (DID_ERROR << 16) | SAM_STAT_CHECK_CONDITION;
2048+
else
2049+
scmd->result = (DID_ERROR << 16) | ext_status;
20472050
break;
20482051

20492052
case MFI_STAT_SCSI_DONE_WITH_ERROR:

0 commit comments

Comments
 (0)