diff mbox series

[2/7] smartpqi: correct stream detection

Message ID 20240827185501.692804-3-don.brace@microchip.com (mailing list archive)
State Deferred
Headers show
Series smartpqi updates | expand

Commit Message

Don Brace Aug. 27, 2024, 6:54 p.m. UTC
From: Mahesh Rajashekhara <mahesh.rajashekhara@microchip.com>

Correct stream detection by initializing the structure
pqi_scsi_dev_raid_map_data to 0s.

When the OS issues SCSI READ commands, the driver erroneously
considers them as SCSI WRITES. If they are identified as sequential
IOs, the driver then submits those requests via the RAID path
instead of the AIO path.

The 'is_write' flag might be set for SCSI READ commands also.
The driver may interpret SCSI READ commands as SCSI WRITE
commands, resulting in IOs being submitted through the RAID path.

Note: This does not cause data corruption.

Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Signed-off-by: Mahesh Rajashekhara <mahesh.rajashekhara@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 54f7fe843445..8e2e71ab49ae 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -5942,7 +5942,7 @@  static bool pqi_is_parity_write_stream(struct pqi_ctrl_info *ctrl_info,
 	int rc;
 	struct pqi_scsi_dev *device;
 	struct pqi_stream_data *pqi_stream_data;
-	struct pqi_scsi_dev_raid_map_data rmd;
+	struct pqi_scsi_dev_raid_map_data rmd = { 0 };
 
 	if (!ctrl_info->enable_stream_detection)
 		return false;