diff options
author | Kenneth R Westerback <krw@cvs.openbsd.org> | 2005-04-27 23:54:45 +0000 |
---|---|---|
committer | Kenneth R Westerback <krw@cvs.openbsd.org> | 2005-04-27 23:54:45 +0000 |
commit | 03832ae83bfefc3dd374b7f4dfccea32b5c66746 (patch) | |
tree | 6a73d854878d29a02d7e47ff0d31d443ff8919c9 /sys/scsi/scsiconf.c | |
parent | 3fce0ae35555ddc188283602b48c73d16160cb65 (diff) |
Add SDEV_UMASS flag, analogous to SDEV_ATAPI, and use it to force a
full LUN scan on UMASS SCSI targets. UMASS provides reliable max lun
information so we shouldn't waste time. Fixes many x-in-1 card
reader/writers that report identical INQUIRY information for every
slot they provide.
Lots of diagnosis and testing by dlg@, ok dlg@, 'I can live with this'
marco@.
Diffstat (limited to 'sys/scsi/scsiconf.c')
-rw-r--r-- | sys/scsi/scsiconf.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/scsi/scsiconf.c b/sys/scsi/scsiconf.c index 3d39c8b7455..e205e35d619 100644 --- a/sys/scsi/scsiconf.c +++ b/sys/scsi/scsiconf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: scsiconf.c,v 1.92 2004/07/31 11:31:30 krw Exp $ */ +/* $OpenBSD: scsiconf.c,v 1.93 2005/04/27 23:54:44 krw Exp $ */ /* $NetBSD: scsiconf.c,v 1.57 1996/05/02 01:09:01 neil Exp $ */ /* @@ -688,7 +688,9 @@ scsi_probedev(scsi, inqbuflun0, target, lun) bcopy(&inqbuf, inqbuflun0, sizeof *inqbuflun0); else if (((1 << sc_link->scsibus) & scsiforcelun_buses) && ((1 << target) & scsiforcelun_targets)) - ; + ; + else if (sc_link->flags & SDEV_UMASS) + ; else if (memcmp(&inqbuf, inqbuflun0, sizeof inqbuf) == 0) { /* The device doesn't distinguish between LUNs. */ SC_DEBUG(sc_link, SDEV_DB1, ("IDENTIFY not supported.\n")); |