Re: [PATCH 1/2] virtio-scsi: fix parsing of hotplug/hot-unplug LUNnumber

From: Paolo Bonzini
Date: Thu Jul 26 2012 - 05:27:40 EST


Il 26/07/2012 11:21, James Bottomley ha scritto:
>> > Because scsilun_to_int does not do the AND, so it would have exactly the
>> > same bug I'm fixing.
> It's not a bug ... it's the encoding. All the other devices use this
> too. Ideally we should have switched to 64 bit lun numbers for the
> encoding to be exact, but nothing so far has gone over 32 bits. If we
> don't encode the Address method as part of the lun number, we don't get
> the reverse transform right and the addressing often fails.

But virtio-scsi gets it right even if you use method=0 and method=1
interchangeably.

ibmvscsi (see function lun_from_dev) does something similar to
virtio-scsi, except here I need both directions.

> That does mean that arrays that use address method=1 in REPORT LUNS have
> their lun numbers start at 16384.

That is ugly. I can see how it may be needed on buggy hardware, but
here we know it's not.

Paolo

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/