> This way, the device at LUN 0 is found to start the scan, and 
> then later 

        On a more general question - in order to work around the
Zzyzx problem, I have moved the call to get_device_flags
as before and added (I also removed all traces of BLIST_FORCESCAN)

          bflags = get_device_flags (scsi_result);
 
        if (bflags & BLIST_SPARSELUN) {*sparse_lun = 1;}
 
        if (SRpnt->sr_result) {
                scsi_release_request(SRpnt);
                return 0;       /* assume no peripheral if any sort of error
*/
        }

          ...

        This way, even though the peripheral qualifier check exits, the
sparse_lun parameter gets set first so scanning can continue on the
Zzyzx device. 

        BTW, what should the peripheral qualifier be returned as
when scanning LUN 0 of a multiple LUN capable device which has no devices;
for example if the RocketStor had no LUN mappings? If it should return
011b in this case, then the above modification would scan all the LUNs,
while the original code would not. If it still returns 001b, then there
won't be any difference...


Thanks again, your help is very much appreciated.


-poul

Poul E.J. Petersen
Rogue Wave Software 
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]

Reply via email to