On 02/14/2013 07:02 PM, Jeremy Linton wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 2/13/2013 9:38 PM, James Bottomley wrote:
Yes. The two functions are simple transforms ensuring that we can pack up
to two levels of luns into a u32 whatever address method is used. At the
time it was done, no array or other extant system went beyond this.
At the end of the day, a LUN is just a handle, so even if we go to 64 bits
we're still going to be packing the address method into the logical unit
"number".
Ok, I will buy that (probably violates SAM5, 4.7.1, but no big deal), two
points.
First this requires basically every adapter capable of recieving address
method!=0 LUNs to set the 64-bit capable flag that is included in this patch.
Otherwise the "scsi: %s lun%d has a LUN larger than allowed by the host
adapter\n" path fires even for a small number of luns because the address
method bit creates a "lun" > max_luns in all cases.
Hehe. As we're down to nitpicking:
The 'support_64bit_luns' is a _hardware_ flag.
Some HBA hardware (SPI, and most RAID HBAs) simply do not have the
facilities to _send_ 64bit LUNs; SPI HBAs in most cases simply
reserve a byte for the LUN.
So irrespective of what response they'll be getting via REPORT_LUNS
they lack the possibility of addressing all of them.
And for those we need the 'max_luns' setting.
Second, its possible with address method 11b, that none of the devices are
actually visible even with this patch, as a device that chooses to use address
method=11b and one of the >16 bit addressing methods gets its LSB truncated by
the 32-bit return from scsilun_to_int(). Not that I have see one of those, no
one needs that many LUNs <chuckle>. So, the flag in this patch is somewhat
misnamed as it doesn't really support 64-bit luns. To stick to the existing
method scsilun_to_int needs to be u64.
Correct. This I'll be addressing with a later patch, moving 'lun' to
full 64bit.
BTW: Tiny syntax cleanup, scsilun_to_int() should have a return type of
unsigned.
Will be cleaned up with the next round of patches.
Cheers,
Hannes
--
Dr. Hannes Reinecke zSeries & Storage
hare@xxxxxxx +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html