From: Nicholas Bellinger <n...@linux-iscsi.org>

Keeping in the idempotent nature of target_core_fabric_configfs.c,
if a queue_depth value is set and it's the same as the existing
value, don't attempt to force session reinstatement.

Reported-by: Raghu Krishnamurthy <r...@datera.io>
Cc: Raghu Krishnamurthy <r...@datera.io>
Tested-by: Gary Guo <g...@datera.io>
Cc: Gary Guo <g...@datera.io>
Signed-off-by: Nicholas Bellinger <n...@linux-iscsi.org>
---
 drivers/target/target_core_tpg.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/target/target_core_tpg.c b/drivers/target/target_core_tpg.c
index dfaef4d..310d9e5 100644
--- a/drivers/target/target_core_tpg.c
+++ b/drivers/target/target_core_tpg.c
@@ -398,6 +398,13 @@ int core_tpg_set_initiator_node_queue_depth(
        struct se_portal_group *tpg = acl->se_tpg;
 
        /*
+        * Allow the setting of se_node_acl queue_depth to be idempotent,
+        * and not force a session shutdown event if the value is not
+        * changing.
+        */
+       if (acl->queue_depth == queue_depth)
+               return 0;
+       /*
         * User has requested to change the queue depth for a Initiator Node.
         * Change the value in the Node's struct se_node_acl, and call
         * target_set_nacl_queue_depth() to set the new queue depth.
-- 
1.9.1

Reply via email to