[stgt] tgtadm delete without lld specified?

FUJITA Tomonori fujita.tomonori at lab.ntt.co.jp
Sun Apr 20 14:20:00 CEST 2014

On Wed, 16 Apr 2014 16:40:09 -0700
Lee Duncan <lduncan at suse.com> wrote:

> I am debugging a problem on SUSE 11 SP3, with tgt 0.9.10.
> I am creating two iSCSI targets using targets.conf. Neither target
> specifies a low-level driver, and there is no default-driver specified
> either.
> The targets looks something like this:
> <target iqn....t1>
>     backing-store /dev/some-device
>     vendor_id someid
>     product_id volume-num1
> </target>
> I create two of these targets, t1, and t2, then I using open-iscsi to
> login to the first target, t1, then logout.
> Then I run "tgt-admin --delete "iqn...t1". As you know, this just runs
> "tgtadm --op delete --mode target --tid=<tid-of-t1>". No low-level
> driver is specified.
> Then I try to login to the second target, t2, using open-iscsi, and
> the login hangs. This is because tgtd has died.
> Further analysis shows that tgtd dies because when it tries to look up
> the iscsi target structure for t2, the t1 entry is still around. And
> when the code tries to get the name of this no-longer-existing target,
> it gets NULL and tries to compare that with the iqn name being
> added. This makes strcmp() very unhappy.

Surely, sounds a bug. The latest code still has this bug?

> I find that if I manually specify the lld either on the command line
> of "tgtadm", or in one of the config files, then this problem goes
> away.
> It looks like when I don't specify any LLD the upper-level code
> defaults to low-lever-driver zero! This seems like a bug to me.
> Shouldn't the "tgtadm" command enforce specifying the low-level
> driver?

I guess that tgtadm command should use 'iscsi' by default if the
low-level driver is not specified.
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

More information about the stgt mailing list