On Tue, 2017-11-07 at 10:01 -0800, Chris Leech wrote: > Hello, > > I have this set of changes to the iSCSI control interfaces pending > review, but seeing as it's sysfs and netlink changes there's not a > lot of feedback from linux-scsi. Well, it's a bit unlikely that they understand network namespaces. > I was hoping I could get a brief review on the adding of network > namespace support here. Most network namespace work is done on netdev@xxxxxxxxxxxxxxx, but they probably won't understand all the SCSI bits, but perhaps they don't need to; it's basically the netlink and the filters, right? The other list that would take a more generic view is the containers one containers@xxxxxxxxxxxxxxxxxxxxxxxxxx because that's where most namespace stuff ends up. James > Thank you, > Chris > > On Tue, Oct 31, 2017 at 03:40:55PM -0700, Chris Leech wrote: > > > > This series of changes makes the iSCSI netlink and sysfs control > > interfaces filtered by network namespace. This is required to run > > iscsid in any network namespace other than the initial default one. > > > > Currently the netlink communication will fail if iscsid is started > > in a non-default network namespace, as there is no kernel side > > socket. After fixing that, the rest of these changes are to filter > > visibility of the iSCSI transport objects by netns. This allows > > for multiple iscsid instances to be run, one per netns, each > > controlling it's own set of iSCSI sessions. > > > > The iSCSI transport objects are filtered, but not the SCSI or block > > layer devices. So while iSCSI hosts and sessions become limited to > > a network namespace, any attached devices remain visible system > > wide. > > > > This currently only supports iscsi_tcp running in a new namespace, > > as it creates a virtual host per session. Support could be added > > later to allow assignment of iSCSI HBAs to network namespace, much > > as is done for network interfaces. > > > > Chris Leech (9): > > iscsi: create per-net iscsi netlink kernel sockets > > iscsi: associate endpoints with a host > > iscsi: sysfs filtering by network namespace > > iscsi: make all iSCSI netlink multicast namespace aware > > iscsi: set netns for iscsi_tcp hosts > > iscsi: check net namespace for all iscsi lookups > > iscsi: convert flashnode devices from bus to class > > iscsi: rename iscsi_bus_flash_* to iscsi_flash_* > > iscsi: filter flashnode sysfs by net namespace > > > > drivers/infiniband/ulp/iser/iscsi_iser.c | 7 +- > > drivers/scsi/be2iscsi/be_iscsi.c | 6 +- > > drivers/scsi/bnx2i/bnx2i_iscsi.c | 6 +- > > drivers/scsi/cxgbi/libcxgbi.c | 6 +- > > drivers/scsi/iscsi_tcp.c | 7 + > > drivers/scsi/qedi/qedi_iscsi.c | 6 +- > > drivers/scsi/qla4xxx/ql4_os.c | 62 +-- > > drivers/scsi/scsi_transport_iscsi.c | 625 > > ++++++++++++++++++++++--------- > > include/scsi/scsi_transport_iscsi.h | 63 ++-- > > 9 files changed, 538 insertions(+), 250 deletions(-) > > > > -- > > 2.9.5 > > >