I see why it is not proceeding with the LUN scan if there is no logical
unit 0. The thing I cannot tell is why someone decided to do this. It
looks like this bit here:
if (SCpnt->result) {
if (((driver_byte(SCpnt->result) & DRIVER_SENSE) ||
(status_byte(SCpnt->result) & CHECK_CONDITION)) &&
((SCpnt->sense_buffer[0] & 0x70) >> 4) == 7) {
if (((SCpnt->sense_buffer[2] & 0xf) != NOT_READY) &&
((SCpnt->sense_buffer[2] & 0xf) != UNIT_ATTENTION) &&
((SCpnt->sense_buffer[2] & 0xf) != ILLEGAL_REQUEST || lun > 0))
return 1;
} else
return 0;
}
SCSI_LOG_SCAN_BUS(3, printk("scsi: performing INQUIRY\n"));
Notice the "|| lun > 0" in there. This is done right after the
TEST_UNIT_READY, and before the INQUIRY command, so peripheral qualifiers
wouldn't enter into the picture yet.
That is pretty old code.
-Eric
----- Original Message -----
From: "casler, heather" <[EMAIL PROTECTED]>
To: "'linux-scsi'" <[EMAIL PROTECTED]>
Sent: Thursday, January 27, 2000 5:23 PM
Subject: Skipping LUN 0?
> Hello,
> I'm still learning and am doing some testing with Linux (v2.2.9 -
v2.2.14),
> a few different HBAs (AHA-2944UW, NCR, QLA2100F, QLA2200F) and an external
> storage device. One of the tests I was attempting to do was to see how
the
> host would react if LUN 0 were skipped. The storage was set up with 0,1
> through 0,3 then 2,0 through 2,3 and 4,0 through 4,3. The device 0,1
> through 0,3 were NOT seen, but all of the following devices were seen by
the
> host.
> Is this reaction appropriate? If the kernel doesn't support skipping LUN
0,
> is that defined in scsi.c by the peripheral qualifier field (around lines
> 760 - 770)? If this is a kernel restriction, is this something that is
> going to be changed in the future?
> Thanks for the help!
> Heather
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to [EMAIL PROTECTED]
>
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]