lkml.org 
[lkml]   [2012]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[ 14/62] iscsi-target: Add explicit set of cache_dynamic_acls=1 for TPG demo-mode
    Date
    3.4-stable review patch.  If anyone has any objections, please let me know.

    ------------------

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

    commit 38b11bae6ba02da352340aff12ee25755977b222 upstream.

    We've had reports in the past about this specific case, so it's time to
    go ahead and explicitly set cache_dynamic_acls=1 for generate_node_acls=1
    (TPG demo-mode) operation.

    During normal generate_node_acls=0 operation with explicit NodeACLs ->
    se_node_acl memory is persistent to the configfs group located at
    /sys/kernel/config/target/$TARGETNAME/$TPGT/acls/$INITIATORNAME, so in
    the generate_node_acls=1 case we want the reservation logic to reference
    existing per initiator IQN se_node_acl memory (not to generate a new
    se_node_acl), so go ahead and always set cache_dynamic_acls=1 when
    TPG demo-mode is enabled.

    Reported-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
    Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/target/iscsi/iscsi_target_tpg.c | 12 ++++++++++++
    1 file changed, 12 insertions(+)

    --- a/drivers/target/iscsi/iscsi_target_tpg.c
    +++ b/drivers/target/iscsi/iscsi_target_tpg.c
    @@ -672,6 +672,12 @@ int iscsit_ta_generate_node_acls(
    pr_debug("iSCSI_TPG[%hu] - Generate Initiator Portal Group ACLs: %s\n",
    tpg->tpgt, (a->generate_node_acls) ? "Enabled" : "Disabled");

    + if (flag == 1 && a->cache_dynamic_acls == 0) {
    + pr_debug("Explicitly setting cache_dynamic_acls=1 when "
    + "generate_node_acls=1\n");
    + a->cache_dynamic_acls = 1;
    + }
    +
    return 0;
    }

    @@ -711,6 +717,12 @@ int iscsit_ta_cache_dynamic_acls(
    return -EINVAL;
    }

    + if (a->generate_node_acls == 1 && flag == 0) {
    + pr_debug("Skipping cache_dynamic_acls=0 when"
    + " generate_node_acls=1\n");
    + return 0;
    + }
    +
    a->cache_dynamic_acls = flag;
    pr_debug("iSCSI_TPG[%hu] - Cache Dynamic Initiator Portal Group"
    " ACLs %s\n", tpg->tpgt, (a->cache_dynamic_acls) ?



    \
     
     \ /
      Last update: 2012-10-19 07:21    [W:3.705 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site