Home Home > GIT Browse > SLE12-SP3-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHannes Reinecke <hare@suse.de>2019-01-14 08:14:43 +0100
committerHannes Reinecke <hare@suse.de>2019-01-14 09:23:08 +0100
commit626b71868b4fe59ce3065b4f039071817d7c6bb8 (patch)
tree07a17add469fc7d575a124de5c19879e6e27f820
parent0e76c49f6b69779910dfd9db230d5e646b356056 (diff)
scsi: Re-export scsi_internal_device_{,un}_block()
(bsc#1119877).
-rw-r--r--patches.kabi/scsi-Re-export-scsi_internal_device_-un-_block.patch68
-rw-r--r--series.conf1
2 files changed, 69 insertions, 0 deletions
diff --git a/patches.kabi/scsi-Re-export-scsi_internal_device_-un-_block.patch b/patches.kabi/scsi-Re-export-scsi_internal_device_-un-_block.patch
new file mode 100644
index 0000000000..3012f78a6e
--- /dev/null
+++ b/patches.kabi/scsi-Re-export-scsi_internal_device_-un-_block.patch
@@ -0,0 +1,68 @@
+From: Hannes Reinecke <hare@suse.de>
+Date: Mon, 14 Jan 2019 08:10:58 +0100
+Subject: [PATCH] scsi: Re-export scsi_internal_device_{,un}_block()
+Patch-Mainline: never, SLE12 SP3 kABI fix
+References: bsc#1119877
+
+Re-export symbols which got dropped to preserve the kABI.
+
+Signed-off-by: Hannes Reinecke <hare@suse.com>
+---
+ drivers/scsi/scsi_lib.c | 12 +++++++++---
+ 1 file changed, 9 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
+index e5e52fbbea9d..99b1a2a0a826 100644
+--- a/drivers/scsi/scsi_lib.c
++++ b/drivers/scsi/scsi_lib.c
+@@ -2996,7 +2996,9 @@ EXPORT_SYMBOL_GPL(scsi_internal_device_block_nowait);
+
+ /**
+ * scsi_internal_device_block - try to transition to the SDEV_BLOCK state
+- * @sdev: device to block
++ * @sdev: device to block
++ * @wait: Whether or not to wait until ongoing .queuecommand() /
++ * .queue_rq() calls have finished.
+ *
+ * Pause SCSI command processing on the specified device and wait until all
+ * ongoing scsi_request_fn() / scsi_queue_rq() calls have finished. May sleep.
+@@ -3013,11 +3015,13 @@ EXPORT_SYMBOL_GPL(scsi_internal_device_block_nowait);
+ * scsi_internal_device_block() has blocked a SCSI device and also
+ * remove the rport mutex lock and unlock calls from srp_queuecommand().
+ */
+-static int scsi_internal_device_block(struct scsi_device *sdev)
++static int scsi_internal_device_block(struct scsi_device *sdev, bool wait)
+ {
+ struct request_queue *q = sdev->request_queue;
+ int err;
+
++ if (!wait)
++ return scsi_internal_device_block_nowait(sdev);
+ mutex_lock(&sdev->inquiry_mutex);
+ err = scsi_internal_device_block_nowait(sdev);
+ if (err == 0) {
+@@ -3030,6 +3034,7 @@ static int scsi_internal_device_block(struct scsi_device *sdev)
+
+ return err;
+ }
++EXPORT_SYMBOL_GPL(scsi_internal_device_block);
+
+ void scsi_start_queue(struct scsi_device *sdev)
+ {
+@@ -3111,11 +3116,12 @@ static int scsi_internal_device_unblock(struct scsi_device *sdev,
+
+ return ret;
+ }
++EXPORT_SYMBOL_GPL(scsi_internal_device_unblock);
+
+ static void
+ device_block(struct scsi_device *sdev, void *data)
+ {
+- scsi_internal_device_block(sdev);
++ scsi_internal_device_block(sdev, true);
+ }
+
+ static int
+--
+2.16.4
+
diff --git a/series.conf b/series.conf
index 6886578173..e61510a528 100644
--- a/series.conf
+++ b/series.conf
@@ -24127,6 +24127,7 @@
patches.drivers/scsi_transport_fc-return-EBUSY-for-deleted-vport.patch
patches.kabi/scsi-kABI-fix-for-new-state-STARGET_CREATED_REMOVE.patch
patches.kabi/scsi-use-inquiry_mutex-instead-of-state_mutex.patch
+ patches.kabi/scsi-Re-export-scsi_internal_device_-un-_block.patch
# qla2xxx backport for SP3 (FATE#321701)
patches.suse/qla2xxx-asynchronous-pci-probing.patch