All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] smartpqi updates
@ 2020-11-11 20:24 Don Brace
  2020-11-11 20:24 ` [PATCH 1/3] smartpqi: correct driver removal with HBA disks Don Brace
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Don Brace @ 2020-11-11 20:24 UTC (permalink / raw)
  To: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, hch, jejb, joseph.szczypek,
	POSWALD
  Cc: linux-scsi

These patches are based on Linus's tree

This small set of changes consist of two minor bug fixes:
  * Remove an unbalanced call to pqi_ctrl_unbusy in the smp
    handler. There is not a call to pqi_ctrl_busy.
  * Correct driver rmmod hang when using HBA disks with
    write cache enabled. During removal, SCSI SYNCHRONIZE CACHE
    requests are blocked with SCSI_MLQUEUE_HOST_BUSY which cause
    the hang.
Also included is a version change.

---

Don Brace (3):
      smartpqi: correct driver removal with HBA disks
      smartpqi: correct pqi_sas_smp_handler busy condition
      smartpqi: update version to 1.2.16-012


 drivers/scsi/smartpqi/smartpqi_init.c          | 4 ++--
 drivers/scsi/smartpqi/smartpqi_sas_transport.c | 1 -
 2 files changed, 2 insertions(+), 3 deletions(-)

--
Signature

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

* [PATCH 1/3] smartpqi: correct driver removal with HBA disks
  2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
@ 2020-11-11 20:24 ` Don Brace
  2020-11-11 20:24 ` [PATCH 2/3] smartpqi: correct pqi_sas_smp_handler busy condition Don Brace
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: Don Brace @ 2020-11-11 20:24 UTC (permalink / raw)
  To: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, hch, jejb, joseph.szczypek,
	POSWALD
  Cc: linux-scsi

From: Don Brace <dbrace@redhat.com>

* Correct rmmod hangs when using HBA disks with
  write cache enabled.
  Do not set controller flag "in_shutdown" during rmmod.
    * SCSI SYNCHRONIZE CACHE(10) and SCSI SYNCHRONIZE CACHE(16)
      requests were blocked with SCSI_MLQUEUE_HOST_BUSY.

Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_init.c |   10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 9d0229656681..531f10853f03 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -345,10 +345,9 @@ static inline void pqi_device_remove_start(struct pqi_scsi_dev *device)
 	device->in_remove = true;
 }
 
-static inline bool pqi_device_in_remove(struct pqi_ctrl_info *ctrl_info,
-					struct pqi_scsi_dev *device)
+static inline bool pqi_device_in_remove(struct pqi_scsi_dev *device)
 {
-	return device->in_remove && !ctrl_info->in_shutdown;
+	return device->in_remove;
 }
 
 static inline void pqi_ctrl_shutdown_start(struct pqi_ctrl_info *ctrl_info)
@@ -5347,8 +5346,7 @@ static int pqi_scsi_queue_command(struct Scsi_Host *shost,
 
 	atomic_inc(&device->scsi_cmds_outstanding);
 
-	if (pqi_ctrl_offline(ctrl_info) || pqi_device_in_remove(ctrl_info,
-								device)) {
+	if (pqi_ctrl_offline(ctrl_info) || pqi_device_in_remove(device)) {
 		set_host_byte(scmd, DID_NO_CONNECT);
 		pqi_scsi_done(scmd);
 		return 0;
@@ -8031,8 +8029,6 @@ static void pqi_pci_remove(struct pci_dev *pci_dev)
 	if (!ctrl_info)
 		return;
 
-	ctrl_info->in_shutdown = true;
-
 	pqi_remove_ctrl(ctrl_info);
 }
 


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

* [PATCH 2/3] smartpqi: correct pqi_sas_smp_handler busy condition
  2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
  2020-11-11 20:24 ` [PATCH 1/3] smartpqi: correct driver removal with HBA disks Don Brace
@ 2020-11-11 20:24 ` Don Brace
  2020-11-11 20:24 ` [PATCH 3/3] smartpqi: update version to 1.2.16-012 Don Brace
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 10+ messages in thread
From: Don Brace @ 2020-11-11 20:24 UTC (permalink / raw)
  To: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, hch, jejb, joseph.szczypek,
	POSWALD
  Cc: linux-scsi

* Remove unbalanced call to pqi_ctrl_unbusy.

Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Reviewed-by: Kevin Barnett <kevin.barnett@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
 drivers/scsi/smartpqi/smartpqi_sas_transport.c |    1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/scsi/smartpqi/smartpqi_sas_transport.c b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
index 999870eb9ed8..c9b00b3368d7 100644
--- a/drivers/scsi/smartpqi/smartpqi_sas_transport.c
+++ b/drivers/scsi/smartpqi/smartpqi_sas_transport.c
@@ -549,7 +549,6 @@ void pqi_sas_smp_handler(struct bsg_job *job, struct Scsi_Host *shost,
 	reslen = pqi_build_sas_smp_handler_reply(smp_buf, job, &error_info);
 out:
 	bsg_job_done(job, rc, reslen);
-	pqi_ctrl_unbusy(ctrl_info);
 }
 struct sas_function_template pqi_sas_transport_functions = {
 	.get_linkerrors = pqi_sas_get_linkerrors,


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

* [PATCH 3/3] smartpqi: update version to 1.2.16-012
  2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
  2020-11-11 20:24 ` [PATCH 1/3] smartpqi: correct driver removal with HBA disks Don Brace
  2020-11-11 20:24 ` [PATCH 2/3] smartpqi: correct pqi_sas_smp_handler busy condition Don Brace
@ 2020-11-11 20:24 ` Don Brace
  2020-11-17  4:03 ` [PATCH 0/3] smartpqi updates Martin K. Petersen
  2020-11-20  3:29 ` Martin K. Petersen
  4 siblings, 0 replies; 10+ messages in thread
From: Don Brace @ 2020-11-11 20:24 UTC (permalink / raw)
  To: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, hch, jejb, joseph.szczypek,
	POSWALD
  Cc: linux-scsi

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 |    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 531f10853f03..c53f456fbd09 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		"1.2.16-010"
+#define DRIVER_VERSION		"1.2.16-012"
 #define DRIVER_MAJOR		1
 #define DRIVER_MINOR		2
 #define DRIVER_RELEASE		16
-#define DRIVER_REVISION		10
+#define DRIVER_REVISION		12
 
 #define DRIVER_NAME		"Microsemi PQI Driver (v" \
 				DRIVER_VERSION BUILD_TIMESTAMP ")"


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

* Re: [PATCH 0/3] smartpqi updates
  2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
                   ` (2 preceding siblings ...)
  2020-11-11 20:24 ` [PATCH 3/3] smartpqi: update version to 1.2.16-012 Don Brace
@ 2020-11-17  4:03 ` Martin K. Petersen
  2020-11-20  3:29 ` Martin K. Petersen
  4 siblings, 0 replies; 10+ messages in thread
From: Martin K. Petersen @ 2020-11-17  4:03 UTC (permalink / raw)
  To: Don Brace
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, hch, jejb, joseph.szczypek,
	POSWALD, linux-scsi


Don,

> This small set of changes consist of two minor bug fixes:
>   * Remove an unbalanced call to pqi_ctrl_unbusy in the smp
>     handler. There is not a call to pqi_ctrl_busy.
>   * Correct driver rmmod hang when using HBA disks with
>     write cache enabled. During removal, SCSI SYNCHRONIZE CACHE
>     requests are blocked with SCSI_MLQUEUE_HOST_BUSY which cause
>     the hang.

Applied to 5.11/scsi-staging, thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering

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

* Re: [PATCH 0/3] smartpqi updates
  2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
                   ` (3 preceding siblings ...)
  2020-11-17  4:03 ` [PATCH 0/3] smartpqi updates Martin K. Petersen
@ 2020-11-20  3:29 ` Martin K. Petersen
  4 siblings, 0 replies; 10+ messages in thread
From: Martin K. Petersen @ 2020-11-20  3:29 UTC (permalink / raw)
  To: Justin.Lindley, Kevin.Barnett, joseph.szczypek, gerry.morong,
	hch, POSWALD, Don Brace, mahesh.rajashekhara, scott.teel,
	scott.benesh, jejb
  Cc: Martin K . Petersen, linux-scsi

On Wed, 11 Nov 2020 14:24:33 -0600, Don Brace wrote:

> These patches are based on Linus's tree
> 
> This small set of changes consist of two minor bug fixes:
>   * Remove an unbalanced call to pqi_ctrl_unbusy in the smp
>     handler. There is not a call to pqi_ctrl_busy.
>   * Correct driver rmmod hang when using HBA disks with
>     write cache enabled. During removal, SCSI SYNCHRONIZE CACHE
>     requests are blocked with SCSI_MLQUEUE_HOST_BUSY which cause
>     the hang.
> Also included is a version change.

Applied to 5.11/scsi-queue, thanks!

[1/3] scsi: smartpqi: Correct driver removal with HBA disks
      https://git.kernel.org/mkp/scsi/c/1bdf6e934387
[2/3] scsi: smartpqi: Correct pqi_sas_smp_handler busy condition
      https://git.kernel.org/mkp/scsi/c/408bdd7e5845
[3/3] scsi: smartpqi: Update version to 1.2.16-012
      https://git.kernel.org/mkp/scsi/c/5443bdc4cc77

-- 
Martin K. Petersen	Oracle Linux Engineering

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

* Re: [PATCH 0/3] smartpqi updates
  2023-12-19 19:36 Don Brace
@ 2024-01-04  4:11 ` Martin K. Petersen
  0 siblings, 0 replies; 10+ messages in thread
From: Martin K. Petersen @ 2024-01-04  4:11 UTC (permalink / raw)
  To: Don Brace
  Cc: Kevin.Barnett, scott.teel, Justin.Lindley, scott.benesh,
	gerry.morong, mahesh.rajashekhara, mike.mcgowen, murthy.bhat,
	kumar.meiyappan, jeremy.reeves, david.strahan, hch, jejb,
	joseph.szczypek, POSWALD, linux-scsi


Don,

> The only functional change to smartpqi is correction of a race
> condition during a scan/rescan operation. The device->rescan flag can
> be updated by multiple threads causing issues.

Applied to 6.8/scsi-staging, thanks!

-- 
Martin K. Petersen	Oracle Linux Engineering

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

* [PATCH 0/3] smartpqi updates
@ 2023-12-19 19:36 Don Brace
  2024-01-04  4:11 ` Martin K. Petersen
  0 siblings, 1 reply; 10+ messages in thread
From: Don Brace @ 2023-12-19 19:36 UTC (permalink / raw)
  To: don.brace, Kevin.Barnett, scott.teel, Justin.Lindley,
	scott.benesh, gerry.morong, mahesh.rajashekhara, mike.mcgowen,
	murthy.bhat, kumar.meiyappan, jeremy.reeves, david.strahan, hch,
	jejb, joseph.szczypek, POSWALD
  Cc: linux-scsi

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

The only functional change to smartpqi is correction of a race condition
during a scan/rescan operation. The device->rescan flag can be updated
by multiple threads causing issues.

The other two patches add PCI-IDs for new controllers and change the
driver version.

This set of changes consists of:
* smartpqi-Add-new-controller-PCI-IDs
  No functional changes. Just adding in more device support.
* smartpqi: fix logical volume rescan race condition
  The driver has several threads that can contend for accessing
  a controller instance wide 'rescan' flag. In some rare cases
  a race condition can occur that bypasses a call to rescan for
  device changes. Some of these changes are; device removal, logical
  volume changes, and device adds. We basically added a spin-lock
  to protect the 'rescan' flag.
* smartpqi-change-driver-version-to-2.1.26-030
  No functional changes.

---

David Strahan (1):
  smartpqi: Add new controller PCI IDs

Don Brace (1):
  smartpqi: bump driver version to 2.1.26-030

Mahesh Rajashekhara (1):
  smartpqi: fix logical volume rescan race condition

 drivers/scsi/smartpqi/smartpqi.h      |  1 -
 drivers/scsi/smartpqi/smartpqi_init.c | 89 ++++++++++++++++++++++++---
 2 files changed, 79 insertions(+), 11 deletions(-)

-- 
2.43.0.76.g1a87c842ec


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

* Re: [PATCH 0/3] smartpqi updates
  2017-09-27 21:29 Don Brace
@ 2017-10-03  2:26 ` Martin K. Petersen
  0 siblings, 0 replies; 10+ messages in thread
From: Martin K. Petersen @ 2017-10-03  2:26 UTC (permalink / raw)
  To: Don Brace
  Cc: joseph.szczypek, gerry.morong, john.hall, jejb, Kevin.Barnett,
	Mahesh.Rajashekhara, bader.alisaleh, hch, scott.teel, Viswas.G,
	Justin.Lindley, scott.benesh, POSWALD, linux-scsi


Don,

> These patches are based on Linus's tree
>
> The changes are:
>  - update list of controllers
>  - cleanup warning message
>  - change driver version to 1.1.2-126

Applied to 4.15/scsi-queue.

-- 
Martin K. Petersen	Oracle Linux Engineering

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

* [PATCH 0/3] smartpqi updates
@ 2017-09-27 21:29 Don Brace
  2017-10-03  2:26 ` Martin K. Petersen
  0 siblings, 1 reply; 10+ messages in thread
From: Don Brace @ 2017-09-27 21:29 UTC (permalink / raw)
  To: joseph.szczypek, gerry.morong, john.hall, jejb, Kevin.Barnett,
	Mahesh.Rajashekhara, bader.alisaleh, hch, scott.teel, Viswas.G,
	Justin.Lindley, scott.benesh, POSWALD
  Cc: linux-scsi

These patches are based on Linus's tree

The changes are:
 - update list of controllers
 - cleanup warning message
 - change driver version to 1.1.2-126
---

Don Brace (1):
      smartpqi: update driver version to 1.1.2-126

Kevin Barnett (2):
      smartpqi: update controller ids
      smartpqi: cleanup raid map warning message


 drivers/scsi/smartpqi/smartpqi_init.c |   18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

--
Signature

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

end of thread, other threads:[~2024-01-04  4:11 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-11 20:24 [PATCH 0/3] smartpqi updates Don Brace
2020-11-11 20:24 ` [PATCH 1/3] smartpqi: correct driver removal with HBA disks Don Brace
2020-11-11 20:24 ` [PATCH 2/3] smartpqi: correct pqi_sas_smp_handler busy condition Don Brace
2020-11-11 20:24 ` [PATCH 3/3] smartpqi: update version to 1.2.16-012 Don Brace
2020-11-17  4:03 ` [PATCH 0/3] smartpqi updates Martin K. Petersen
2020-11-20  3:29 ` Martin K. Petersen
  -- strict thread matches above, loose matches on Subject: below --
2023-12-19 19:36 Don Brace
2024-01-04  4:11 ` Martin K. Petersen
2017-09-27 21:29 Don Brace
2017-10-03  2:26 ` Martin K. Petersen

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.