Hello Ben, > I was wondering if you had made some progress on the target discovery > project? not much. I setup a system, checkout the kernel, compiled it and booted it and began writing on the patch but was interrupted by more pressing work. I hope to finish it up over the weekend. My progress so far is: diff --git a/drivers/target/iscsi/iscsi_target_configfs.c b/drivers/target/iscsi/iscsi_target_configfs.c index bbfd288..79a9de2 100644 --- a/drivers/target/iscsi/iscsi_target_configfs.c +++ b/drivers/target/iscsi/iscsi_target_configfs.c @@ -1043,6 +1043,11 @@ TPG_ATTR(demo_mode_write_protect, S_IRUGO | S_IWUSR); */ DEF_TPG_ATTRIB(prod_mode_write_protect); TPG_ATTR(prod_mode_write_protect, S_IRUGO | S_IWUSR); +/* + * Define iscsi_tpg_attrib_s_hide_from_unauthorized + */ +DEF_TPG_ATTRIB(hide_from_unauthorized); +TPG_ATTR(hide_from_unauthorized, S_IRUGO | S_IWUSR); static struct configfs_attribute *lio_target_tpg_attrib_attrs[] = { &iscsi_tpg_attrib_authentication.attr, @@ -1053,6 +1058,7 @@ static struct configfs_attribute *lio_target_tpg_attrib_attrs[] = { &iscsi_tpg_attrib_cache_dynamic_acls.attr, &iscsi_tpg_attrib_demo_mode_write_protect.attr, &iscsi_tpg_attrib_prod_mode_write_protect.attr, + &iscsi_tpg_attrib_hide_from_unauthorized.attr, NULL, }; @@ -1850,6 +1856,14 @@ static int lio_tpg_check_prod_mode_write_protect( return ISCSI_TPG_ATTRIB(tpg)->prod_mode_write_protect; } +static int lio_tpg_check_hide_from_unauthorized( + struct se_portal_group *se_tpg) +{ + struct iscsi_portal_group *tpg = se_tpg->se_tpg_fabric_ptr; + + return ISCSI_TPG_ATTRIB(tpg)->hide_from_unauthorized; +} + static void lio_tpg_release_fabric_acl( struct se_portal_group *se_tpg, struct se_node_acl *se_acl) diff --git a/drivers/target/iscsi/iscsi_target_core.h b/drivers/target/iscsi/iscsi_target_core.h index 4f77a78..ad0d007e 100644 --- a/drivers/target/iscsi/iscsi_target_core.h +++ b/drivers/target/iscsi/iscsi_target_core.h @@ -754,6 +754,7 @@ struct iscsi_tpg_attrib { u32 default_cmdsn_depth; u32 demo_mode_write_protect; u32 prod_mode_write_protect; + u32 hide_from_unauthorized; struct iscsi_portal_group *tpg; }; > I'm trying to get some time from our kernel developer to look at the > problem here also, so if you have made any progress we could merge our > effort. If your developer starts working on it, please let me know. However I hope that I'll finish it up over the weekend. My roadmap is the following: - Add a per target configfs paramter (started but untested and probably unfinished) - Cleanup iscsit_build_sendtargets_response - Implement hide_from_unauthorized functionality - Test it with 12 ESX servers and Linux initiator - Post the patches to the mailinglist - Work in the suggestions from the feedback of the mailinglist until the patch is accepted upstream. In addition to that I want to do some tests with ESX servers in order to verify that LIO code is stable. Particular I want to test: - Concurrent login from 12 initiators - XCOPY with limited queue depth on 72 concurrent operations After the above is finished I want to use it in production. Cheers, Thomas -- To unsubscribe from this list: send the line "unsubscribe target-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html