Re: [PATCH-for-4.6 1/6] target: Add target_alloc_session() helper function

From: Nicholas A. Bellinger
Date: Wed Jan 13 2016 - 05:14:33 EST


On Wed, 2016-01-13 at 10:33 +0100, Christoph Hellwig wrote:
> On Wed, Jan 13, 2016 at 01:22:49AM -0800, Nicholas A. Bellinger wrote:
> > Huh..? It's used by iscsi-target, ib_isert, tcm_qla2xxx, vhost-scsi and
> > tcm_fc.
> >
> > That's the majority of the drivers people care about.
>
> ib_isert never calls transport_init_session / transport_init_session_tags
> directly.
>

Yes.

Not to mention, there is a new struct iscsit_transport based driver on
the way that assumes percpu-ida tag preallocation using this same
method.

> We've got 3 callers to transport_init_session_tags vs 6 to
> transport_init_session.
>

In that case, I'll look into converting sbp-target, usb-gadget and
xen-scsiback to use percpu-ida like the other consumers here for v4.6
code.

> iSCSI already works roughly the way I suggest everything should
> work in the future - it uses transport_init_session but manually
> allocates the tags.

iscsi-target needs it open-coded for discovery purposes, because
se_node_acl lookup does not occur.

However for the normal session login se_node_acl lookup back, I don't
see a reason why iscsi-target can't use target_alloc_session() here too.