All of lore.kernel.org
 help / color / mirror / Atom feed
* [smartpqi updates  PATCH 0/9] smartpqi updates
@ 2021-07-06 18:16 Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 1/9] smartpqi: add pci id for H3C controller Don Brace
                   ` (8 more replies)
  0 siblings, 9 replies; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

These patches are based on Martin Peterson's 5.14/scsi-queue tree
https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git 
      5.14/scsi-queue

Most of these patches consist of adding new PCI devices. The remainder
are simple updates to correct some rare issues and clean up some
driver messages.

This set of changes consist of:
  * Add in new PCI-IDs.
    5 of these patches are adding in new PCI-IDs.
  * Removing unnecessary unsupported feature messages.
  * Update copyright information.
  * Enhance reset messages.
    - Add SCSI command CDB[0] value to message.
    - Also check for a 0 length SCSI command that can occur if
      sg_reset is issued without any outstanding SCSI commands.
  * Clean up a rare initialization issue where interrupts are
    enabled before the supporting controller context has been
    fully initialized causing NULL pointer access.
  * Update the driver version to 2.1.10-020


Balsundar P (2):
  smartpqi: add PCI id for H3C P4408 controller
  smartpqi: add PCI IDs for new ZTE controllers

Don Brace (1):
  smartpqi: update version to 2.1.10-020

Kevin Barnett (2):
  smartpqi: rm unsupported controller features msgs
  smartpqi: update copyright notices

Mahesh Rajashekhara (1):
  smartpqi: add pci id for H3C controller

Mike McGowen (2):
  smartpqi: add PCI-ID for new Norsi controller
  smartpqi: fix isr accessing null structure member

Murthy Bhat (1):
  smartpqi: add SCSI cmd info for resets

 drivers/scsi/smartpqi/smartpqi.h              |  6 +-
 drivers/scsi/smartpqi/smartpqi_init.c         | 69 ++++++++++++++-----
 .../scsi/smartpqi/smartpqi_sas_transport.c    |  4 +-
 drivers/scsi/smartpqi/smartpqi_sis.c          |  4 +-
 drivers/scsi/smartpqi/smartpqi_sis.h          |  4 +-
 5 files changed, 61 insertions(+), 26 deletions(-)

-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 1/9] smartpqi: add pci id for H3C controller
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs Don Brace
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Mahesh Rajashekhara <mahesh.rajashekhara@microchip.com>

Add support for H3C P4408-Ma-8i-2GB device ID
     VID_9005, DID_028F, SVID_193D and SDID_1108

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Murthy Bhat <Murthy.Bhat@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@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 | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index dcc0b9618a64..d977c7b30d5c 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -8711,6 +8711,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       0x193d, 0x1107)
 	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x193d, 0x1108)
+	},
 	{
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       0x193d, 0x8460)
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 2/9] smartpqi: rm unsupported controller features msgs
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 1/9] smartpqi: add pci id for H3C controller Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-07  7:28   ` Paul Menzel
  2021-07-06 18:16 ` [smartpqi updates PATCH 3/9] smartpqi: update copyright notices Don Brace
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Kevin Barnett <kevin.barnett@microchip.com>

Remove "Feature XYZ not supported by controller" messages.

During driver initialization, the driver examines the PQI Table Feature bits.
These bits are used by the controller to advertise features supported by the
controller. For any features not supported by the controller, the driver would
display a message in the form:
        "Feature XYZ not supported by controller"
Some of these "negative" messages were causing customer confusion.

Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index d977c7b30d5c..7958316841a4 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -7255,11 +7255,8 @@ struct pqi_firmware_feature {
 static void pqi_firmware_feature_status(struct pqi_ctrl_info *ctrl_info,
 	struct pqi_firmware_feature *firmware_feature)
 {
-	if (!firmware_feature->supported) {
-		dev_info(&ctrl_info->pci_dev->dev, "%s not supported by controller\n",
-			firmware_feature->feature_name);
+	if (!firmware_feature->supported)
 		return;
-	}
 
 	if (firmware_feature->enabled) {
 		dev_info(&ctrl_info->pci_dev->dev,
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 3/9] smartpqi: update copyright notices
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 1/9] smartpqi: add pci id for H3C controller Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-07  7:35   ` Paul Menzel
  2021-07-06 18:16 ` [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets Don Brace
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Kevin Barnett <kevin.barnett@microchip.com>

Updated copyright notices and company name strings to reflect
Microchip ownership.

Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi.h               |  6 +++---
 drivers/scsi/smartpqi/smartpqi_init.c          | 12 ++++++------
 drivers/scsi/smartpqi/smartpqi_sas_transport.c |  4 ++--
 drivers/scsi/smartpqi/smartpqi_sis.c           |  4 ++--
 drivers/scsi/smartpqi/smartpqi_sis.h           |  4 ++--
 5 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi.h b/drivers/scsi/smartpqi/smartpqi.h
index d7dac5572274..f340afc011b5 100644
--- a/drivers/scsi/smartpqi/smartpqi.h
+++ b/drivers/scsi/smartpqi/smartpqi.h
@@ -1,7 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 /*
- *    driver for Microsemi PQI-based storage controllers
- *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
+ *    driver for Microchip PQI-based storage controllers
+ *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
  *    Copyright (c) 2016-2018 Microsemi Corporation
  *    Copyright (c) 2016 PMC-Sierra, Inc.
  *
@@ -59,7 +59,7 @@ struct pqi_device_registers {
 /*
  * controller registers
  *
- * These are defined by the Microsemi implementation.
+ * These are defined by the Microchip implementation.
  *
  * Some registers (those named sis_*) are only used when in
  * legacy SIS mode before we transition the controller into
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 7958316841a4..5ce1c41a758d 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -1,7 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
- *    driver for Microsemi PQI-based storage controllers
- *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
+ *    driver for Microchip PQI-based storage controllers
+ *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
  *    Copyright (c) 2016-2018 Microsemi Corporation
  *    Copyright (c) 2016 PMC-Sierra, Inc.
  *
@@ -39,7 +39,7 @@
 #define DRIVER_RELEASE		8
 #define DRIVER_REVISION		45
 
-#define DRIVER_NAME		"Microsemi PQI Driver (v" \
+#define DRIVER_NAME		"Microchip SmartPQI Driver (v" \
 				DRIVER_VERSION BUILD_TIMESTAMP ")"
 #define DRIVER_NAME_SHORT	"smartpqi"
 
@@ -48,8 +48,8 @@
 #define PQI_POST_RESET_DELAY_SECS			5
 #define PQI_POST_OFA_RESET_DELAY_UPON_TIMEOUT_SECS	10
 
-MODULE_AUTHOR("Microsemi");
-MODULE_DESCRIPTION("Driver for Microsemi Smart Family Controller version "
+MODULE_AUTHOR("Microchip");
+MODULE_DESCRIPTION("Driver for Microchip Smart Family Controller version "
 	DRIVER_VERSION);
 MODULE_VERSION(DRIVER_VERSION);
 MODULE_LICENSE("GPL");
@@ -8448,7 +8448,7 @@ static void pqi_print_ctrl_info(struct pci_dev *pci_dev,
 	if (id->driver_data)
 		ctrl_description = (char *)id->driver_data;
 	else
-		ctrl_description = "Microsemi Smart Family Controller";
+		ctrl_description = "Microchip Smart Family Controller";
 
 	dev_info(&pci_dev->dev, "%s found\n", ctrl_description);
 }
diff --git a/drivers/scsi/smartpqi/smartpqi_sas_transport.c b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
index dd628cc87f78..afd9bafebd1d 100644
--- a/drivers/scsi/smartpqi/smartpqi_sas_transport.c
+++ b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
@@ -1,7 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
- *    driver for Microsemi PQI-based storage controllers
- *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
+ *    driver for Microchip PQI-based storage controllers
+ *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
  *    Copyright (c) 2016-2018 Microsemi Corporation
  *    Copyright (c) 2016 PMC-Sierra, Inc.
  *
diff --git a/drivers/scsi/smartpqi/smartpqi_sis.c b/drivers/scsi/smartpqi/smartpqi_sis.c
index c954620628e0..d63c46a8e38b 100644
--- a/drivers/scsi/smartpqi/smartpqi_sis.c
+++ b/drivers/scsi/smartpqi/smartpqi_sis.c
@@ -1,7 +1,7 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
- *    driver for Microsemi PQI-based storage controllers
- *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
+ *    driver for Microchip PQI-based storage controllers
+ *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
  *    Copyright (c) 2016-2018 Microsemi Corporation
  *    Copyright (c) 2016 PMC-Sierra, Inc.
  *
diff --git a/drivers/scsi/smartpqi/smartpqi_sis.h b/drivers/scsi/smartpqi/smartpqi_sis.h
index 12cd2ab1aead..d29c1352a826 100644
--- a/drivers/scsi/smartpqi/smartpqi_sis.h
+++ b/drivers/scsi/smartpqi/smartpqi_sis.h
@@ -1,7 +1,7 @@
 /* SPDX-License-Identifier: GPL-2.0 */
 /*
- *    driver for Microsemi PQI-based storage controllers
- *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
+ *    driver for Microchip PQI-based storage controllers
+ *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
  *    Copyright (c) 2016-2018 Microsemi Corporation
  *    Copyright (c) 2016 PMC-Sierra, Inc.
  *
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 4/9] smartpqi: add SCSI cmd info for resets
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (2 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 3/9] smartpqi: update copyright notices Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-07  7:37   ` Paul Menzel
  2021-07-06 18:16 ` [smartpqi updates PATCH 5/9] smartpqi: add PCI id for H3C P4408 controller Don Brace
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Murthy Bhat <Murthy.Bhat@microchip.com>

Report on SCSI command that has triggered the reset.
 - Also add check for 0 length SCSI commands.

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Murthy Bhat <Murthy.Bhat@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 5ce1c41a758d..c2ddb66b5c2d 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -6033,8 +6033,10 @@ static int pqi_eh_device_reset_handler(struct scsi_cmnd *scmd)
 	mutex_lock(&ctrl_info->lun_reset_mutex);
 
 	dev_err(&ctrl_info->pci_dev->dev,
-		"resetting scsi %d:%d:%d:%d\n",
-		shost->host_no, device->bus, device->target, device->lun);
+		"resetting scsi %d:%d:%d:%d due to cmd 0x%02x\n",
+		shost->host_no,
+		device->bus, device->target, device->lun,
+		scmd->cmd_len > 0 ? scmd->cmnd[0] : 0xff);
 
 	pqi_check_ctrl_health(ctrl_info);
 	if (pqi_ctrl_offline(ctrl_info))
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 5/9] smartpqi: add PCI id for H3C P4408 controller
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (3 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller Don Brace
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Balsundar P <balsundar.p@microchip.com>

Added support for H3C P4408-Mr-8i-2GB device ID.
      VID_9005, DID_028F, SVID_193D and SDID_1109

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Balsundar P <balsundar.p@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index c2ddb66b5c2d..1195e70b6ec3 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -8714,6 +8714,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       0x193d, 0x1108)
 	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x193d, 0x1109)
+	},
 	{
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       0x193d, 0x8460)
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (4 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 5/9] smartpqi: add PCI id for H3C P4408 controller Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-07  7:38   ` Paul Menzel
  2021-07-06 18:16 ` [smartpqi updates PATCH 7/9] smartpqi: add PCI IDs for new ZTE controllers Don Brace
                   ` (2 subsequent siblings)
  8 siblings, 1 reply; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Mike McGowen <mike.mcgowen@microchip.com>

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Mike McGowen <mike.mcgowen@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 1195e70b6ec3..a8dfb6101830 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -9178,6 +9178,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       PCI_VENDOR_ID_GIGABYTE, 0x1000)
 	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1dfc, 0x3161)
+	},
 	{
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       PCI_ANY_ID, PCI_ANY_ID)
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 7/9] smartpqi: add PCI IDs for new ZTE controllers
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (5 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member Don Brace
  2021-07-06 18:16 ` [smartpqi updates PATCH 9/9] smartpqi: update version to 2.1.10-020 Don Brace
  8 siblings, 0 replies; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Balsundar P <balsundar.p@microchip.com>

Added support for ZTE RM241-18i 2G device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_5445

Added support for ZTE RM242-18i 4G device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_5446

Added support for ZTE RM243-18i device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_5447

Added support for ZTE SDPSA/B-18i 4G device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_0B27

Added support for ZTE SDPSA/B_I-18i device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_0B29

Added support for ZTE SDPSA/B_L-18i 2G device ID.
VID_9005, DID_028F, SVID_1CF2 and SDID_0B45

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Balsundar P <balsundar.p@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index a8dfb6101830..6f2263abaa8c 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -9182,6 +9182,30 @@ static const struct pci_device_id pqi_pci_id_table[] = {
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       0x1dfc, 0x3161)
 	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x5445)
+	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x5446)
+	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x5447)
+	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x0b27)
+	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x0b29)
+	},
+	{
+		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
+			       0x1cf2, 0x0b45)
+	},
 	{
 		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
 			       PCI_ANY_ID, PCI_ANY_ID)
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 8/9] smartpqi: fix isr accessing null structure member
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (6 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 7/9] smartpqi: add PCI IDs for new ZTE controllers Don Brace
@ 2021-07-06 18:16 ` Don Brace
  2021-07-07  7:48   ` Paul Menzel
  2021-07-06 18:16 ` [smartpqi updates PATCH 9/9] smartpqi: update version to 2.1.10-020 Don Brace
  8 siblings, 1 reply; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

From: Mike McGowen <mike.mcgowen@microchip.com>

Correct driver's ISR accessing a data structure member
that has not been fully initialized during driver init.
  - The pqi queue groups can be null when an interrupt fires.

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Mike McGowen <mike.mcgowen@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 6f2263abaa8c..eeaf0568b5e3 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -7757,11 +7757,11 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)
 
 	pqi_init_operational_queues(ctrl_info);
 
-	rc = pqi_request_irqs(ctrl_info);
+	rc = pqi_create_queues(ctrl_info);
 	if (rc)
 		return rc;
 
-	rc = pqi_create_queues(ctrl_info);
+	rc = pqi_request_irqs(ctrl_info);
 	if (rc)
 		return rc;
 
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [smartpqi updates  PATCH 9/9] smartpqi: update version to 2.1.10-020
  2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
                   ` (7 preceding siblings ...)
  2021-07-06 18:16 ` [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member Don Brace
@ 2021-07-06 18:16 ` Don Brace
  8 siblings, 0 replies; 22+ messages in thread
From: Don Brace @ 2021-07-06 18:16 UTC (permalink / raw)
  To: hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, pmenzel, linux-kernel

Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Reviewed-by: Gerry Morong <gerry.morong@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index eeaf0568b5e3..a41acf8729a3 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -33,11 +33,11 @@
 #define BUILD_TIMESTAMP
 #endif
 
-#define DRIVER_VERSION		"2.1.8-045"
+#define DRIVER_VERSION		"2.1.10-020"
 #define DRIVER_MAJOR		2
 #define DRIVER_MINOR		1
-#define DRIVER_RELEASE		8
-#define DRIVER_REVISION		45
+#define DRIVER_RELEASE		10
+#define DRIVER_REVISION		20
 
 #define DRIVER_NAME		"Microchip SmartPQI Driver (v" \
 				DRIVER_VERSION BUILD_TIMESTAMP ")"
-- 
2.28.0.rc1.9.ge7ae437ac1


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs
  2021-07-06 18:16 ` [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs Don Brace
@ 2021-07-07  7:28   ` Paul Menzel
  2021-07-08 19:04     ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-07  7:28 UTC (permalink / raw)
  To: Don Brace, Kevin Barnett
  Cc: scott.teel, Justin.Lindley, scott.benesh, gerry.morong,
	mahesh.rajashekhara, mike.mcgowen, murthy.bhat, balsundar.p,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, Christoph Hellwig, martin.peterson, jejb,
	linux-scsi

Dear Kevin, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Kevin Barnett <kevin.barnett@microchip.com>
> 
> Remove "Feature XYZ not supported by controller" messages.
> 
> During driver initialization, the driver examines the PQI Table Feature bits.
> These bits are used by the controller to advertise features supported by the
> controller. For any features not supported by the controller, the driver would
> display a message in the form:
>          "Feature XYZ not supported by controller"
> Some of these "negative" messages were causing customer confusion.

As it’s info log level and not warning or notice, these message are 
useful in my opinion. You could downgrade them to debug, but I do not 
see why. If customers do not want to see these info messages, they 
should filter them out.

For completeness, is there an alternative to list the unsupported 
features from the firmware for example from sysfs?


Kind regards,

Paul


> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 5 +----
>   1 file changed, 1 insertion(+), 4 deletions(-)
> 
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index d977c7b30d5c..7958316841a4 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -7255,11 +7255,8 @@ struct pqi_firmware_feature {
>   static void pqi_firmware_feature_status(struct pqi_ctrl_info *ctrl_info,
>   	struct pqi_firmware_feature *firmware_feature)
>   {
> -	if (!firmware_feature->supported) {
> -		dev_info(&ctrl_info->pci_dev->dev, "%s not supported by controller\n",
> -			firmware_feature->feature_name);
> +	if (!firmware_feature->supported)
>   		return;
> -	}
>   
>   	if (firmware_feature->enabled) {
>   		dev_info(&ctrl_info->pci_dev->dev,
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 3/9] smartpqi: update copyright notices
  2021-07-06 18:16 ` [smartpqi updates PATCH 3/9] smartpqi: update copyright notices Don Brace
@ 2021-07-07  7:35   ` Paul Menzel
  2021-07-08 19:10     ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-07  7:35 UTC (permalink / raw)
  To: Don Brace, Kevin Barnett
  Cc: scott.teel, Justin.Lindley, scott.benesh, gerry.morong,
	mahesh.rajashekhara, mike.mcgowen, murthy.bhat, balsundar.p,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

Dear Kevin, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Kevin Barnett <kevin.barnett@microchip.com>
> 
> Updated copyright notices and company name strings to reflect

… from Microsemi to Microchip …

> Microchip ownership.

You also change the driver name. Maybe do that in a separate commit with 
a dedicated commit messages summary.

Name changes affecting strings showing up in log messages are always 
confusing for people’s muscle memory. No idea, if it’d be better to 
include both names in the driver name until the next Linux LTS series is 
released.


Kind regards,

Paul


> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi.h               |  6 +++---
>   drivers/scsi/smartpqi/smartpqi_init.c          | 12 ++++++------
>   drivers/scsi/smartpqi/smartpqi_sas_transport.c |  4 ++--
>   drivers/scsi/smartpqi/smartpqi_sis.c           |  4 ++--
>   drivers/scsi/smartpqi/smartpqi_sis.h           |  4 ++--
>   5 files changed, 15 insertions(+), 15 deletions(-)
> 
> diff --git a/drivers/scsi/smartpqi/smartpqi.h b/drivers/scsi/smartpqi/smartpqi.h
> index d7dac5572274..f340afc011b5 100644
> --- a/drivers/scsi/smartpqi/smartpqi.h
> +++ b/drivers/scsi/smartpqi/smartpqi.h
> @@ -1,7 +1,7 @@
>   /* SPDX-License-Identifier: GPL-2.0 */
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> @@ -59,7 +59,7 @@ struct pqi_device_registers {
>   /*
>    * controller registers
>    *
> - * These are defined by the Microsemi implementation.
> + * These are defined by the Microchip implementation.
>    *
>    * Some registers (those named sis_*) are only used when in
>    * legacy SIS mode before we transition the controller into
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 7958316841a4..5ce1c41a758d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> @@ -39,7 +39,7 @@
>   #define DRIVER_RELEASE		8
>   #define DRIVER_REVISION		45
>   
> -#define DRIVER_NAME		"Microsemi PQI Driver (v" \
> +#define DRIVER_NAME		"Microchip SmartPQI Driver (v" \
>   				DRIVER_VERSION BUILD_TIMESTAMP ")"
>   #define DRIVER_NAME_SHORT	"smartpqi"
>   
> @@ -48,8 +48,8 @@
>   #define PQI_POST_RESET_DELAY_SECS			5
>   #define PQI_POST_OFA_RESET_DELAY_UPON_TIMEOUT_SECS	10
>   
> -MODULE_AUTHOR("Microsemi");
> -MODULE_DESCRIPTION("Driver for Microsemi Smart Family Controller version "
> +MODULE_AUTHOR("Microchip");
> +MODULE_DESCRIPTION("Driver for Microchip Smart Family Controller version "
>   	DRIVER_VERSION);
>   MODULE_VERSION(DRIVER_VERSION);
>   MODULE_LICENSE("GPL");
> @@ -8448,7 +8448,7 @@ static void pqi_print_ctrl_info(struct pci_dev *pci_dev,
>   	if (id->driver_data)
>   		ctrl_description = (char *)id->driver_data;
>   	else
> -		ctrl_description = "Microsemi Smart Family Controller";
> +		ctrl_description = "Microchip Smart Family Controller";
>   
>   	dev_info(&pci_dev->dev, "%s found\n", ctrl_description);
>   }
> diff --git a/drivers/scsi/smartpqi/smartpqi_sas_transport.c b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> index dd628cc87f78..afd9bafebd1d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> +++ b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> diff --git a/drivers/scsi/smartpqi/smartpqi_sis.c b/drivers/scsi/smartpqi/smartpqi_sis.c
> index c954620628e0..d63c46a8e38b 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sis.c
> +++ b/drivers/scsi/smartpqi/smartpqi_sis.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> diff --git a/drivers/scsi/smartpqi/smartpqi_sis.h b/drivers/scsi/smartpqi/smartpqi_sis.h
> index 12cd2ab1aead..d29c1352a826 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sis.h
> +++ b/drivers/scsi/smartpqi/smartpqi_sis.h
> @@ -1,7 +1,7 @@
>   /* SPDX-License-Identifier: GPL-2.0 */
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets
  2021-07-06 18:16 ` [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets Don Brace
@ 2021-07-07  7:37   ` Paul Menzel
  2021-07-08 20:20     ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-07  7:37 UTC (permalink / raw)
  To: Don Brace, murthy.bhat
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, balsundar.p,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

Dear Murthy, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Murthy Bhat <Murthy.Bhat@microchip.com>
> 
> Report on SCSI command that has triggered the reset.
>   - Also add check for 0 length SCSI commands.

Can you please add an example log message line to the git commit message 
summary?


Kind regards,

Paul


> Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Murthy Bhat <Murthy.Bhat@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 5ce1c41a758d..c2ddb66b5c2d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -6033,8 +6033,10 @@ static int pqi_eh_device_reset_handler(struct scsi_cmnd *scmd)
>   	mutex_lock(&ctrl_info->lun_reset_mutex);
>   
>   	dev_err(&ctrl_info->pci_dev->dev,
> -		"resetting scsi %d:%d:%d:%d\n",
> -		shost->host_no, device->bus, device->target, device->lun);
> +		"resetting scsi %d:%d:%d:%d due to cmd 0x%02x\n",
> +		shost->host_no,
> +		device->bus, device->target, device->lun,
> +		scmd->cmd_len > 0 ? scmd->cmnd[0] : 0xff);
>   
>   	pqi_check_ctrl_health(ctrl_info);
>   	if (pqi_ctrl_offline(ctrl_info))
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller
  2021-07-06 18:16 ` [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller Don Brace
@ 2021-07-07  7:38   ` Paul Menzel
  2021-07-08 21:35     ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-07  7:38 UTC (permalink / raw)
  To: Don Brace, hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	balsundar.p, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, linux-kernel

Dear Don, dear Mike,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Mike McGowen <mike.mcgowen@microchip.com>

Can you please mention the device ID and name in the git commit message, 
so it can be compared to the code change? See *[smartpqi updates PATCH 
1/9] smartpqi: add pci id for H3C controller* as an example.


Kind regards,

Paul


> Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Mike McGowen <mike.mcgowen@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 4 ++++
>   1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 1195e70b6ec3..a8dfb6101830 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -9178,6 +9178,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
>   		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
>   			       PCI_VENDOR_ID_GIGABYTE, 0x1000)
>   	},
> +	{
> +		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
> +			       0x1dfc, 0x3161)
> +	},
>   	{
>   		PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
>   			       PCI_ANY_ID, PCI_ANY_ID)
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member
  2021-07-06 18:16 ` [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member Don Brace
@ 2021-07-07  7:48   ` Paul Menzel
  2021-07-08 21:17     ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-07  7:48 UTC (permalink / raw)
  To: Don Brace, Mike McGowen
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, murthy.bhat, balsundar.p,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

Dear Don, dear Mike,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Mike McGowen <mike.mcgowen@microchip.com>
> 
> Correct driver's ISR accessing a data structure member
> that has not been fully initialized during driver init.

Does that crash the Linux kernel?

>    - The pqi queue groups can be null when an interrupt fires.

If it fixes a crash(?), please add a Fixes: tag so it can be backported 
to the stable series.

> Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Mike McGowen <mike.mcgowen@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
> index 6f2263abaa8c..eeaf0568b5e3 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -7757,11 +7757,11 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)
>   
>   	pqi_init_operational_queues(ctrl_info);
>   
> -	rc = pqi_request_irqs(ctrl_info);
> +	rc = pqi_create_queues(ctrl_info);

 From a quick look, these two functions are quite different. It’d be 
great if you elaborated a bit in the commit message, what else the new 
function does.

Also, with this change, `pqi_request_irqs()` does not seem to have any 
users anymore. Without your patch:

     $ git grep pqi_request_irqs
     drivers/scsi/smartpqi/smartpqi_init.c:static int 
pqi_request_irqs(struct pqi_ctrl_info *ctrl_info)
     drivers/scsi/smartpqi/smartpqi_init.c:  rc = 
pqi_request_irqs(ctrl_info);

>   	if (rc)
>   		return rc;
>   
> -	rc = pqi_create_queues(ctrl_info);
> +	rc = pqi_request_irqs(ctrl_info);
>   	if (rc)
>   		return rc;
> 


Kind regards,

Paul

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs
  2021-07-07  7:28   ` Paul Menzel
@ 2021-07-08 19:04     ` Don.Brace
  2021-07-09  7:24       ` Paul Menzel
  0 siblings, 1 reply; 22+ messages in thread
From: Don.Brace @ 2021-07-08 19:04 UTC (permalink / raw)
  To: pmenzel, Kevin.Barnett
  Cc: Scott.Teel, Justin.Lindley, Scott.Benesh, Gerry.Morong,
	Mahesh.Rajashekhara, Mike.McGowen, Murthy.Bhat, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

-----Original Message-----
From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 
Sent: Wednesday, July 7, 2021 2:29 AM
Subject: Re: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs

Dear Kevin, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Kevin Barnett <kevin.barnett@microchip.com>
>
> Remove "Feature XYZ not supported by controller" messages.
>
> During driver initialization, the driver examines the PQI Table Feature bits.
> These bits are used by the controller to advertise features supported 
> by the controller. For any features not supported by the controller, 
> the driver would display a message in the form:
>          "Feature XYZ not supported by controller"
> Some of these "negative" messages were causing customer confusion.

As it’s info log level and not warning or notice, these message are useful in my opinion. You could downgrade them to debug, but I do not see why. If customers do not want to see these info messages, they should filter them out.

For completeness, is there an alternative to list the unsupported features from the firmware for example from sysfs?


Kind regards,

Paul

Don> Thanks for your Review.
At this time we would prefer to not provide messages about unsupported features. We may add them back at some point but we have taken them out of our out-of-box driver also so we hope to keep the driver code in sync.

> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 5 +----
>   1 file changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c 
> b/drivers/scsi/smartpqi/smartpqi_init.c
> index d977c7b30d5c..7958316841a4 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -7255,11 +7255,8 @@ struct pqi_firmware_feature {
>   static void pqi_firmware_feature_status(struct pqi_ctrl_info *ctrl_info,
>       struct pqi_firmware_feature *firmware_feature)
>   {
> -     if (!firmware_feature->supported) {
> -             dev_info(&ctrl_info->pci_dev->dev, "%s not supported by controller\n",
> -                     firmware_feature->feature_name);
> +     if (!firmware_feature->supported)
>               return;
> -     }
>
>       if (firmware_feature->enabled) {
>               dev_info(&ctrl_info->pci_dev->dev,
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 3/9] smartpqi: update copyright notices
  2021-07-07  7:35   ` Paul Menzel
@ 2021-07-08 19:10     ` Don.Brace
  0 siblings, 0 replies; 22+ messages in thread
From: Don.Brace @ 2021-07-08 19:10 UTC (permalink / raw)
  To: pmenzel, Kevin.Barnett
  Cc: Scott.Teel, Justin.Lindley, Scott.Benesh, Gerry.Morong,
	Mahesh.Rajashekhara, Mike.McGowen, Murthy.Bhat, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

-----Original Message-----
From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 
Subject: Re: [smartpqi updates PATCH 3/9] smartpqi: update copyright notices

Dear Kevin, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Kevin Barnett <kevin.barnett@microchip.com>
>
> Updated copyright notices and company name strings to reflect

… from Microsemi to Microchip …

> Microchip ownership.

You also change the driver name. Maybe do that in a separate commit with a dedicated commit messages summary.

Don: I'll separate the driver name from the copyright patches and send up a new patch in V2.

Thanks for your review.


Name changes affecting strings showing up in log messages are always confusing for people’s muscle memory. No idea, if it’d be better to include both names in the driver name until the next Linux LTS series is released.

Don: We would rather just have one name.


Kind regards,

Paul


> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi.h               |  6 +++---
>   drivers/scsi/smartpqi/smartpqi_init.c          | 12 ++++++------
>   drivers/scsi/smartpqi/smartpqi_sas_transport.c |  4 ++--
>   drivers/scsi/smartpqi/smartpqi_sis.c           |  4 ++--
>   drivers/scsi/smartpqi/smartpqi_sis.h           |  4 ++--
>   5 files changed, 15 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi.h 
> b/drivers/scsi/smartpqi/smartpqi.h
> index d7dac5572274..f340afc011b5 100644
> --- a/drivers/scsi/smartpqi/smartpqi.h
> +++ b/drivers/scsi/smartpqi/smartpqi.h
> @@ -1,7 +1,7 @@
>   /* SPDX-License-Identifier: GPL-2.0 */
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> @@ -59,7 +59,7 @@ struct pqi_device_registers {
>   /*
>    * controller registers
>    *
> - * These are defined by the Microsemi implementation.
> + * These are defined by the Microchip implementation.
>    *
>    * Some registers (those named sis_*) are only used when in
>    * legacy SIS mode before we transition the controller into diff 
> --git a/drivers/scsi/smartpqi/smartpqi_init.c 
> b/drivers/scsi/smartpqi/smartpqi_init.c
> index 7958316841a4..5ce1c41a758d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> @@ -39,7 +39,7 @@
>   #define DRIVER_RELEASE              8
>   #define DRIVER_REVISION             45
>
> -#define DRIVER_NAME          "Microsemi PQI Driver (v" \
> +#define DRIVER_NAME          "Microchip SmartPQI Driver (v" \
>                               DRIVER_VERSION BUILD_TIMESTAMP ")"
>   #define DRIVER_NAME_SHORT   "smartpqi"
>
> @@ -48,8 +48,8 @@
>   #define PQI_POST_RESET_DELAY_SECS                   5
>   #define PQI_POST_OFA_RESET_DELAY_UPON_TIMEOUT_SECS  10
>
> -MODULE_AUTHOR("Microsemi");
> -MODULE_DESCRIPTION("Driver for Microsemi Smart Family Controller version "
> +MODULE_AUTHOR("Microchip");
> +MODULE_DESCRIPTION("Driver for Microchip Smart Family Controller version "
>       DRIVER_VERSION);
>   MODULE_VERSION(DRIVER_VERSION);
>   MODULE_LICENSE("GPL");
> @@ -8448,7 +8448,7 @@ static void pqi_print_ctrl_info(struct pci_dev *pci_dev,
>       if (id->driver_data)
>               ctrl_description = (char *)id->driver_data;
>       else
> -             ctrl_description = "Microsemi Smart Family Controller";
> +             ctrl_description = "Microchip Smart Family Controller";
>
>       dev_info(&pci_dev->dev, "%s found\n", ctrl_description);
>   }
> diff --git a/drivers/scsi/smartpqi/smartpqi_sas_transport.c 
> b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> index dd628cc87f78..afd9bafebd1d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> +++ b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> diff --git a/drivers/scsi/smartpqi/smartpqi_sis.c 
> b/drivers/scsi/smartpqi/smartpqi_sis.c
> index c954620628e0..d63c46a8e38b 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sis.c
> +++ b/drivers/scsi/smartpqi/smartpqi_sis.c
> @@ -1,7 +1,7 @@
>   // SPDX-License-Identifier: GPL-2.0
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
> diff --git a/drivers/scsi/smartpqi/smartpqi_sis.h 
> b/drivers/scsi/smartpqi/smartpqi_sis.h
> index 12cd2ab1aead..d29c1352a826 100644
> --- a/drivers/scsi/smartpqi/smartpqi_sis.h
> +++ b/drivers/scsi/smartpqi/smartpqi_sis.h
> @@ -1,7 +1,7 @@
>   /* SPDX-License-Identifier: GPL-2.0 */
>   /*
> - *    driver for Microsemi PQI-based storage controllers
> - *    Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries
> + *    driver for Microchip PQI-based storage controllers
> + *    Copyright (c) 2019-2021 Microchip Technology Inc. and its subsidiaries
>    *    Copyright (c) 2016-2018 Microsemi Corporation
>    *    Copyright (c) 2016 PMC-Sierra, Inc.
>    *
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets
  2021-07-07  7:37   ` Paul Menzel
@ 2021-07-08 20:20     ` Don.Brace
  0 siblings, 0 replies; 22+ messages in thread
From: Don.Brace @ 2021-07-08 20:20 UTC (permalink / raw)
  To: pmenzel, Murthy.Bhat
  Cc: Kevin.Barnett, Scott.Teel, Justin.Lindley, Scott.Benesh,
	Gerry.Morong, Mahesh.Rajashekhara, Mike.McGowen, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 
Subject: Re: [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets

Dear Murthy, dear Don,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Murthy Bhat <Murthy.Bhat@microchip.com>
>
> Report on SCSI command that has triggered the reset.
>   - Also add check for 0 length SCSI commands.

Can you please add an example log message line to the git commit message summary?

Don: Thanks for your review. I added an example.

Kind regards,

Paul


> Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Murthy Bhat <Murthy.Bhat@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c 
> b/drivers/scsi/smartpqi/smartpqi_init.c
> index 5ce1c41a758d..c2ddb66b5c2d 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -6033,8 +6033,10 @@ static int pqi_eh_device_reset_handler(struct scsi_cmnd *scmd)
>       mutex_lock(&ctrl_info->lun_reset_mutex);
>
>       dev_err(&ctrl_info->pci_dev->dev,
> -             "resetting scsi %d:%d:%d:%d\n",
> -             shost->host_no, device->bus, device->target, device->lun);
> +             "resetting scsi %d:%d:%d:%d due to cmd 0x%02x\n",
> +             shost->host_no,
> +             device->bus, device->target, device->lun,
> +             scmd->cmd_len > 0 ? scmd->cmnd[0] : 0xff);
>
>       pqi_check_ctrl_health(ctrl_info);
>       if (pqi_ctrl_offline(ctrl_info))
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member
  2021-07-07  7:48   ` Paul Menzel
@ 2021-07-08 21:17     ` Don.Brace
  0 siblings, 0 replies; 22+ messages in thread
From: Don.Brace @ 2021-07-08 21:17 UTC (permalink / raw)
  To: pmenzel, Mike.McGowen
  Cc: Kevin.Barnett, Scott.Teel, Justin.Lindley, Scott.Benesh,
	Gerry.Morong, Mahesh.Rajashekhara, Murthy.Bhat, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.peterson, jejb, linux-scsi

From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 
Subject: Re: [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member

Dear Don, dear Mike,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Mike McGowen <mike.mcgowen@microchip.com>
>
> Correct driver's ISR accessing a data structure member that has not 
> been fully initialized during driver init.

Does that crash the Linux kernel?
Don: 
No. I updated the title and description to reflect this. It resulted in some brief access to uninitialized members.
This was found during some internal testing, no bugs were ever filed for this change.
 
Thanks for your review.

>    - The pqi queue groups can be null when an interrupt fires.

If it fixes a crash(?), please add a Fixes: tag so it can be backported to the stable series.



Kind regards,

Paul

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller
  2021-07-07  7:38   ` Paul Menzel
@ 2021-07-08 21:35     ` Don.Brace
  0 siblings, 0 replies; 22+ messages in thread
From: Don.Brace @ 2021-07-08 21:35 UTC (permalink / raw)
  To: pmenzel, hch, martin.peterson, jejb, linux-scsi
  Cc: Kevin.Barnett, Scott.Teel, Justin.Lindley, Scott.Benesh,
	Gerry.Morong, Mahesh.Rajashekhara, Mike.McGowen, Murthy.Bhat,
	Balsundar.P, joseph.szczypek, jeff, POSWALD, john.p.donnelly,
	mwilck, linux-kernel

From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 
Subject: Re: [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller

Dear Don, dear Mike,


Am 06.07.21 um 20:16 schrieb Don Brace:
> From: Mike McGowen <mike.mcgowen@microchip.com>

Can you please mention the device ID and name in the git commit message, so it can be compared to the code change? See *[smartpqi updates PATCH 1/9] smartpqi: add pci id for H3C controller* as an example.


Kind regards,

Paul

Don: 
Updated patch title to reflect the controller.
Added more to the patch description.

Thanks for your review.


> Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
> Reviewed-by: Scott Teel <scott.teel@microchip.com>
> Signed-off-by: Mike McGowen <mike.mcgowen@microchip.com>
> Signed-off-by: Don Brace <don.brace@microchip.com>
> ---
>   drivers/scsi/smartpqi/smartpqi_init.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c 
> b/drivers/scsi/smartpqi/smartpqi_init.c
> index 1195e70b6ec3..a8dfb6101830 100644
> --- a/drivers/scsi/smartpqi/smartpqi_init.c
> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
> @@ -9178,6 +9178,10 @@ static const struct pci_device_id pqi_pci_id_table[] = {
>               PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
>                              PCI_VENDOR_ID_GIGABYTE, 0x1000)
>       },
> +     {
> +             PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
> +                            0x1dfc, 0x3161)
> +     },
>       {
>               PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
>                              PCI_ANY_ID, PCI_ANY_ID)
>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs
  2021-07-08 19:04     ` Don.Brace
@ 2021-07-09  7:24       ` Paul Menzel
  2021-07-09 15:06         ` Don.Brace
  0 siblings, 1 reply; 22+ messages in thread
From: Paul Menzel @ 2021-07-09  7:24 UTC (permalink / raw)
  To: Don.Brace, Kevin.Barnett
  Cc: Scott.Teel, Justin.Lindley, Scott.Benesh, Gerry.Morong,
	Mahesh.Rajashekhara, Mike.McGowen, Murthy.Bhat, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.petersen, jejb, linux-scsi

[I corrected Martin’s email from peterson to peters*e*n. Don, you should 
have also receive a bounce message from the MTA. I guess Martin has 
these as a list subscriber nevertheless, but I suggest to resend the 
series as soon as possible.]

Dear Don,


Thank you for your reply.


Am 08.07.21 um 21:04 schrieb Don.Brace@microchip.com:
> -----Original Message-----
> From: Paul Menzel [mailto:pmenzel@molgen.mpg.de]
> Sent: Wednesday, July 7, 2021 2:29 AM
> Subject: Re: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs

> Am 06.07.21 um 20:16 schrieb Don Brace:
>> From: Kevin Barnett <kevin.barnett@microchip.com>
>>
>> Remove "Feature XYZ not supported by controller" messages.
>>
>> During driver initialization, the driver examines the PQI Table Feature bits.
>> These bits are used by the controller to advertise features supported
>> by the controller. For any features not supported by the controller,
>> the driver would display a message in the form:
>>           "Feature XYZ not supported by controller"
>> Some of these "negative" messages were causing customer confusion.
> 
> As it’s info log level and not warning or notice, these message are
> useful in my opinion. You could downgrade them to debug, but I do not
> see why. If customers do not want to see these info messages, they
> should filter them out.
> 
> For completeness, is there an alternative to list the unsupported
> features from the firmware for example from sysfs?

> Don> Thanks for your Review. At this time we would prefer to not
> provide messages about unsupported features.

Only because a customer complained? That is not a good enough reason in 
my opinion. Log messages, often grepped for, are an interface which 
should only be changed with caution.

If these absent feature message were present for a long time, and you 
suddenly remove them, people looking a newer Linux kernel messages, 
users conclude the feature is supported now. That is quite a downside in 
my opinion.

> We may add them back at some point but we have taken them out of our
> out-of-box driver also so we hope to keep the driver code in sync.
That’s why you should develop for Linux master branch and upstream 
*first* to get external reviews. That argument should not count for 
Linux upstream reviews in my opinion.


Kind regards,

Paul


>> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
>> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
>> Reviewed-by: Scott Teel <scott.teel@microchip.com>
>> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
>> Signed-off-by: Don Brace <don.brace@microchip.com>
>> ---
>>    drivers/scsi/smartpqi/smartpqi_init.c | 5 +----
>>    1 file changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c
>> b/drivers/scsi/smartpqi/smartpqi_init.c
>> index d977c7b30d5c..7958316841a4 100644
>> --- a/drivers/scsi/smartpqi/smartpqi_init.c
>> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
>> @@ -7255,11 +7255,8 @@ struct pqi_firmware_feature {
>>    static void pqi_firmware_feature_status(struct pqi_ctrl_info *ctrl_info,
>>        struct pqi_firmware_feature *firmware_feature)
>>    {
>> -     if (!firmware_feature->supported) {
>> -             dev_info(&ctrl_info->pci_dev->dev, "%s not supported by controller\n",
>> -                     firmware_feature->feature_name);
>> +     if (!firmware_feature->supported)
>>                return;
>> -     }
>>
>>        if (firmware_feature->enabled) {
>>                dev_info(&ctrl_info->pci_dev->dev,
>>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* RE: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs
  2021-07-09  7:24       ` Paul Menzel
@ 2021-07-09 15:06         ` Don.Brace
  0 siblings, 0 replies; 22+ messages in thread
From: Don.Brace @ 2021-07-09 15:06 UTC (permalink / raw)
  To: pmenzel, Kevin.Barnett
  Cc: Scott.Teel, Justin.Lindley, Scott.Benesh, Gerry.Morong,
	Mahesh.Rajashekhara, Mike.McGowen, Murthy.Bhat, Balsundar.P,
	joseph.szczypek, jeff, POSWALD, john.p.donnelly, mwilck,
	linux-kernel, hch, martin.petersen, jejb, linux-scsi

-----Original Message-----
From: Paul Menzel [mailto:pmenzel@molgen.mpg.de] 

Dear Don,


Thank you for your reply.


Am 08.07.21 um 21:04 schrieb Don.Brace@microchip.com:
> -----Original Message-----
> From: Paul Menzel [mailto:pmenzel@molgen.mpg.de]
> Sent: Wednesday, July 7, 2021 2:29 AM
> Subject: Re: [smartpqi updates PATCH 2/9] smartpqi: rm unsupported 
> controller features msgs

> Am 06.07.21 um 20:16 schrieb Don Brace:
>> From: Kevin Barnett <kevin.barnett@microchip.com>
>>
>> Remove "Feature XYZ not supported by controller" messages.
>>
>> During driver initialization, the driver examines the PQI Table Feature bits.
>> These bits are used by the controller to advertise features supported 
>> by the controller. For any features not supported by the controller, 
>> the driver would display a message in the form:
>>           "Feature XYZ not supported by controller"
>> Some of these "negative" messages were causing customer confusion.
>
> As it’s info log level and not warning or notice, these message are 
> useful in my opinion. You could downgrade them to debug, but I do not 
> see why. If customers do not want to see these info messages, they 
> should filter them out.
>
> For completeness, is there an alternative to list the unsupported 
> features from the firmware for example from sysfs?

> Don> Thanks for your Review. At this time we would prefer to not
> provide messages about unsupported features.

Only because a customer complained? That is not a good enough reason in my opinion. Log messages, often grepped for, are an interface which should only be changed with caution.

Don: It was many customers. Enough to have our customer support ask for the messages to be redacted. Also, some of the messages were erroneous causing yet more confusion. I'm sorry, but they have to be removed.


If these absent feature message were present for a long time, and you suddenly remove them, people looking a newer Linux kernel messages, users conclude the feature is supported now. That is quite a downside in my opinion.

> We may add them back at some point but we have taken them out of our 
> out-of-box driver also so we hope to keep the driver code in sync.
That’s why you should develop for Linux master branch and upstream
*first* to get external reviews. That argument should not count for Linux upstream reviews in my opinion.

Don: Thanks for your suggestion. Our model has a lot of internal reviews, then several weeks or more of testing before we add patches to the kernel. More automated tests are added daily. Any changes from the kernel community are included in our model.


Kind regards,

Paul


>> Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
>> Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
>> Reviewed-by: Scott Teel <scott.teel@microchip.com>
>> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
>> Signed-off-by: Don Brace <don.brace@microchip.com>
>> ---
>>    drivers/scsi/smartpqi/smartpqi_init.c | 5 +----
>>    1 file changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/drivers/scsi/smartpqi/smartpqi_init.c
>> b/drivers/scsi/smartpqi/smartpqi_init.c
>> index d977c7b30d5c..7958316841a4 100644
>> --- a/drivers/scsi/smartpqi/smartpqi_init.c
>> +++ b/drivers/scsi/smartpqi/smartpqi_init.c
>> @@ -7255,11 +7255,8 @@ struct pqi_firmware_feature {
>>    static void pqi_firmware_feature_status(struct pqi_ctrl_info *ctrl_info,
>>        struct pqi_firmware_feature *firmware_feature)
>>    {
>> -     if (!firmware_feature->supported) {
>> -             dev_info(&ctrl_info->pci_dev->dev, "%s not supported by controller\n",
>> -                     firmware_feature->feature_name);
>> +     if (!firmware_feature->supported)
>>                return;
>> -     }
>>
>>        if (firmware_feature->enabled) {
>>                dev_info(&ctrl_info->pci_dev->dev,
>>

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2021-07-09 15:06 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-06 18:16 [smartpqi updates PATCH 0/9] smartpqi updates Don Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 1/9] smartpqi: add pci id for H3C controller Don Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 2/9] smartpqi: rm unsupported controller features msgs Don Brace
2021-07-07  7:28   ` Paul Menzel
2021-07-08 19:04     ` Don.Brace
2021-07-09  7:24       ` Paul Menzel
2021-07-09 15:06         ` Don.Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 3/9] smartpqi: update copyright notices Don Brace
2021-07-07  7:35   ` Paul Menzel
2021-07-08 19:10     ` Don.Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 4/9] smartpqi: add SCSI cmd info for resets Don Brace
2021-07-07  7:37   ` Paul Menzel
2021-07-08 20:20     ` Don.Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 5/9] smartpqi: add PCI id for H3C P4408 controller Don Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 6/9] smartpqi: add PCI-ID for new Norsi controller Don Brace
2021-07-07  7:38   ` Paul Menzel
2021-07-08 21:35     ` Don.Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 7/9] smartpqi: add PCI IDs for new ZTE controllers Don Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 8/9] smartpqi: fix isr accessing null structure member Don Brace
2021-07-07  7:48   ` Paul Menzel
2021-07-08 21:17     ` Don.Brace
2021-07-06 18:16 ` [smartpqi updates PATCH 9/9] smartpqi: update version to 2.1.10-020 Don Brace

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.