On Friday 26 October 2007 5:47:57 pm James Bottomley wrote: > > > http://www.t10.org/ftp/t10/drafts/sam3/sam3r14.pdf > > > http://www.t10.org/ftp/t10/drafts/sam4/sam4r13.pdf > > > > Unfortunately those two documents are 127 pages and 148 pages, > > respectively, and I haven't had a chance to make any headway in them yet. > > > > Every device I have that shows up as SCSI has shown up with a LUN of 0, > > which is target-wide unique because none of those targets have > > sub-functions that need to be independently addressed as devices. > > > > Is there an easy way to distinguish between "target-wide unique lun" and > > this Logical Unit Number device attribute that's either 8 bytes or 2 > > bytes wide? (Capitalization?) > > They both have a section called " Definitions, symbols, abbreviations, > and conventions"; you'll find LUN (and LU) defined in there. Page 23 of the PDF: 3.1.64 Logical Unit Number (LUN): A 64-bit or 16-bit identifier for a logical unit. See 4.9 > > > > 2) How do you trigger this? /proc/scsi/scsi is read only even for > > > > root. > > > > > > root can still write to it. > > > > Wow. (Is this an idiosyncrasy of /proc, or a capability of root I've > > been unaware of all this time?) > > > > > > 3) This bit is repeated in both the add and remove logic: > > > > p = buffer + 23; > > > > > > > > host = simple_strtoul(p, &p, 0); > > > > channel = simple_strtoul(p + 1, &p, 0); > > > > id = simple_strtoul(p + 1, &p, 0); > > > > lun = simple_strtoul(p + 1, &p, 0); > > > > > > > > So what happens if you echo "scsi add-single-device 0" > > > > > /proc/scsi/scsi (or wherever file would trigger this function) so the > > > > read for channel skips over the null terminator (I'm assuming there > > > > is one) and reads who knows what? Or what if instead of ending that > > > > with one 0, you end it with enough zeroes to pad right up to > > > > PAGE_SIZE, so it reads the next page? (I don't even know what the > > > > page protections are on that, depends how > > > > __get_free_page(GFP_KERNEL) works...) > > > > > > > > Confused, > > > > > > It's relying on the user buffer being zero padded, but even if it > > > isn't, there's not much that can go wrong. It's also a deprecated > > > interface. > > > > Where do I find out what interfaces are deprecated? (Is this written > > down somewhere? Or do you just mean that the whole of /proc is moving to > > /sys where possible?) > > It's part of the general deprecating proc except for process files > edict. > > James -- "One of my most productive days was throwing away 1000 lines of code." - Ken Thompson. - 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