Date: Wed, 29 Jan 1997 00:50:20 +0100 From: j@uriah.heep.sax.de (J Wunsch) To: freebsd-scsi@FreeBSD.org (FreeBSD SCSI list) Cc: pechter@shell.monmouth.com (Bill/Carolyn Pechter) Subject: Re: CD Rom and LUNs Message-ID: <Mutt.19970129005020.j@uriah.heep.sax.de> In-Reply-To: <Mutt.19970128105824.obrien@dragon.cs.ucdavis.edu>; from David O'Brien on Jan 28, 1997 10:58:24 -0800 References: <199701281508.KAA29318@shell.monmouth.com> <Mutt.19970128105824.obrien@dragon.cs.ucdavis.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
As David O'Brien wrote:
> > one drive for each FreeBSD revision) has the problem of being recognized
> > on all LUNs. It's a Chinon "CDS- 435 M62" single speed SCSI cdrom.
>
> What version of FBSD are you running? My Teac did the same thing. The
> kernel was changed from 2.2-961014-SNAP to 2.2-ALPHA so that it won't
> look for multiple LUNs on CDROMs unless it is told to. Too many cheap
> scsi CDROMs answered to all LUNs.
Here's the change. Alas, it's a little more complex than i wish, so
chances are good that patching will fail.
Index: /sys/scsi/scsiconf.c
===================================================================
RCS file: /home/cvs/src/sys/scsi/scsiconf.c,v
retrieving revision 1.69
retrieving revision 1.74
diff -u -u -r1.69 -r1.74
--- scsiconf.c 1996/11/30 07:39:37 1.69
+++ scsiconf.c 1997/01/14 06:54:16 1.74
@@ -248,10 +248,9 @@
static struct scsidevs knowndevs[] =
{
-/* od's must be probed before sd's since some of them identify as T_DIRECT */
#if NOD > 0
{
- T_OPTICAL, T_OPTICAL, T_REMOV, "MATSHITA", "PD-1 LF-1000", "*",
+ T_OPTICAL, T_OPTICAL, T_REMOV, "MATSHITA", "PD-1 LF-100*", "*",
"od", SC_MORE_LUS
},
{
@@ -259,7 +258,11 @@
"od", SC_MORE_LUS
},
{
- T_OPTICAL, T_OPTICAL, T_REMOV, "*", "*", "*",
+ T_DIRECT, T_OPTICAL, T_REMOV, "MOST", "RMD-5200-S", "*",
+ "od", SC_ONE_LU
+ },
+ {
+ T_DIRECT, T_OPTICAL, T_REMOV, "RICOH", "RO-*", "*",
"od", SC_ONE_LU
},
#endif /* NOD */
@@ -268,10 +271,6 @@
T_DIRECT, T_DIRECT, T_FIXED, "EMULEX", "MD21*" , "*",
"sd", SC_MORE_LUS
},
- {
- T_DIRECT, T_DIRECT, T_FIXED, "*", "*", "*",
- "sd", SC_ONE_LU
- },
#endif /* NSD */
#if NST > 0
{
@@ -306,17 +305,7 @@
T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "Quantum", "DLT*", "*",
"st", SC_MORE_LUS, 0
},
- {
- T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "*", "*", "*",
- "st", SC_ONE_LU, 0, mode_unktape
- },
#endif /* NST */
-#if NCH > 0
- {
- T_CHANGER, T_CHANGER, T_REMOV, "*", "*", "*",
- "ch", SC_ONE_LU
- },
-#endif /* NCH */
#if NCD > 0
#ifndef UKTEST /* make cdroms unrecognised to test the uk driver */
/*
@@ -388,6 +377,44 @@
T_READONLY, T_WORM, T_REMOV, "PLASMON", "RF41*", "*",
"worm", SC_ONE_LU
},
+#endif /* NWORM */
+
+ /*
+ * Wildcard entries. Keep them down here below all device
+ * specific entries, so the above ones can override the type
+ * driver if necessary.
+ */
+#if NOD > 0
+ {
+ T_OPTICAL, T_OPTICAL, T_REMOV, "*", "*", "*",
+ "od", SC_ONE_LU
+ },
+#endif /* NOD */
+#if NSD > 0
+ {
+ T_DIRECT, T_DIRECT, T_FIXED, "*", "*", "*",
+ "sd", SC_ONE_LU
+ },
+#endif /* NSD */
+#if NST > 0
+ {
+ T_SEQUENTIAL, T_SEQUENTIAL, T_REMOV, "*", "*", "*",
+ "st", SC_ONE_LU, 0, mode_unktape
+ },
+#endif /* NST */
+#if NCH > 0
+ {
+ T_CHANGER, T_CHANGER, T_REMOV, "*", "*", "*",
+ "ch", SC_ONE_LU
+ },
+#endif /* NCH */
+#if NCD > 0 && !defined(UKTEST)
+ {
+ T_READONLY, T_READONLY, T_REMOV, "*", "*", "*",
+ "cd", SC_ONE_LU
+ },
+#endif /* NCD */
+#if NWORM > 0
{
T_WORM, T_WORM, T_REMOV, "*", "*", "*",
"worm", SC_ONE_LU
--
cheers, J"org
joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Mutt.19970129005020.j>
