On 07/25/2012 05:48 PM, Rob Evers wrote: > On 07/24/2012 11:44 PM, ronnie sahlberg wrote: >> Rob, >> >> This sounds like a bug in linux kernel/initiator. >> >> scsi: host 14 channel 0 id 0 lun16640 has a LUN larger than allowed by >> the host adapter >> >> >> LUN 16640 is in hex 0x4100 or split into addressing mode and lun >> Addressing mode is 01b and the lun is 100h >> >> >> LUNs are specified as two bytes that is split into two parts. >> The two most significant bits is the addressing mode, and the lower >> 14 bits have a different meaning depending on the mode. >> See SAM for more details. >> >> There are three different ways that luns> 256 can be represented : >> 00b : single lun level structure where the next 6 bits would be >> the bus number, and the lowest 8 bits would be the lun 0-255 on that >> bus. >> >> 11b : extended logical unit addressing, which is very complex and >> really weird. >> >> Or the one that TGTD uses : >> >> 01b : flat space addressing mode where the low 14 bits are the lun >> number 0-8191 One last note on this is that TGTD changes from single lun level structure, addressing mode 00b, to flat addressing mode 01b, when the lun number goes above 255. This explains why the linux initiator code worked for the lower lun numbers. Rob -- 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 |