Re: [PATCH, RFC] target: move node ACL allocation into the core

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2015-04-09 at 13:36 +0200, Bart Van Assche wrote:
> On 04/08/15 18:20, Christoph Hellwig wrote:
> > On Wed, Apr 08, 2015 at 09:58:09AM +0200, Bart Van Assche wrote:
> >> - Modify the second argument of the get_pr_transport_id() callback from
> >> struct se_node_acl * into the initiator port name. That port name is namely
> >> the only information used by the get_pr_transport_id() callback functions.
> >
> > This sounds like a good start, but I'd actually prefer to go one step
> > further:
> >
> >   - add a protocol identifier field to the target template instead of
> >     the .get_fabric_proto_ident method.
> >   - provide a default implementation of .tpg_get_pr_transport_id,
> >     .tpg_get_pr_transport_id_len and .tpg_parse_pr_out_transport_id in
> >     the core instead of all the duplicate switch tables.
> >   - have default implementations in the core of ->get_pr_transport_id,
> 
> Hello Christoph,
> 
> This makes sense to me. The only reason why the target core needs the 
> help of a target driver for processing PR commands is to build the 
> TransportID for initiator ports (section 7.6.4 in SPC-5). While configfs 
> uses an ASCII representation for the initiator port identifier, that 
> identifier is stored in binary form in the TransportID. So a choice will 
> have to be made when the conversion of initiator port ID should happen. 
> Should this happen when an ACL is created in configfs which means that 
> the binary initiator port ID has to be stored in the ACL data structure 
> or should only the ASCII initiator port ID be stored in the ACL data 
> structure ? With the latter approach the conversion from ASCII to binary 
> will have to be performed every time a TransportID is built.

Neither.  The creation of the TransportID needs to be done while PR is
happening, and not at explicit configfs or dynamic se_node_acl creation
time.

The ISCSI Transport ID depends upon the ISID of the current session, and
not just what's in se_node_acl->initiatorname[].

--nab



--
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




[Index of Archives]     [Linux SCSI]     [Kernel Newbies]     [Linux SCSI Target Infrastructure]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Device Mapper]

  Powered by Linux