From owner-freebsd-scsi Sun Oct 25 15:51:08 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id PAA29727 for freebsd-scsi-outgoing; Sun, 25 Oct 1998 15:51:08 -0800 (PST) (envelope-from owner-freebsd-scsi@FreeBSD.ORG) Received: from panzer.plutotech.com (panzer.plutotech.com [206.168.67.125]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA29720 for ; Sun, 25 Oct 1998 15:51:06 -0800 (PST) (envelope-from ken@panzer.plutotech.com) Received: (from ken@localhost) by panzer.plutotech.com (8.9.1/8.8.5) id QAA08774; Sun, 25 Oct 1998 16:49:09 -0700 (MST) From: "Kenneth D. Merry" Message-Id: <199810252349.QAA08774@panzer.plutotech.com> Subject: Re: Do we support > 32 drives yet? In-Reply-To: <199810251825.MAA04658@aurora.sol.net> from Joe Greco at "Oct 25, 98 12:25:10 pm" To: jgreco@solaria.sol.net (Joe Greco) Date: Sun, 25 Oct 1998 16:49:09 -0700 (MST) Cc: scsi@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL28s (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-scsi@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Joe Greco wrote... > Installed a 3.0-BETA shortly before -RELEASE. > > This machine has a lot of disks :-) > > % camcontrol devlist -v > scbus-1 on xpt0 bus 0: <= Huh? What's this? That's the transport layer "bus". Don't worry about it. :) > scbus0 on ahc0 bus 0: > scbus1 on ncr0 bus 0: > at scbus1 target 0 lun 0 (da0) > at scbus1 target 1 lun 0 (da1) > at scbus1 target 2 lun 0 (da2) > at scbus1 target 3 lun 0 (da3) > at scbus1 target 4 lun 0 (da4) > at scbus1 target 5 lun 0 (da5) > at scbus1 target 6 lun 0 (da6) [ ...bunch more disks.. ] > ahc0 is the built-in 7890 on the motherboard; I purchased an ASUS > P2B-DS on the theory that I didn't want to place any artificial future > limits on what I did, since I knew CAM would support it. It's a good board. I see you don't have the passthrough driver configured. You may want to do that, since you can't use camcontrol (or any other SCSI passthrough utilities) without it. > I'm seriously looking at adding some nice (newer) Seagate Cheetah W > drives to this machine, but the question is, how many can I actually > do? > > We used to have a limit of 32 drives, and as you can see, I'm pushing > to near that limit with 28. The code in MAKEDEV looks to me like we > might still have that limit. I'd like to know for sure before I > commit to a pointless expense. >From looking at src/sys/sys/disklabel.h, it looks like we support 2^9 disks. (512): ======================================================================== /* 3 2 1 0 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 _________________________________________________________________ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------- | TYPE |UNIT_2 | SLICE | MAJOR? | UNIT |PART | ----------------------------------------------------------------- */ #define dkmakeminor(unit, slice, part) \ (((slice) << 16) | (((unit) & 0x1e0) << 16) | \ (((unit) & 0x1f) << 3) | (part)) #define dkmodpart(dev, part) (((dev) & ~(dev_t)7) | (part)) #define dkmodslice(dev, slice) (((dev) & ~(dev_t)0x1f0000) | ((slice) << 16)) #define dkpart(dev) (minor(dev) & 7) #define dkslice(dev) ((minor(dev) >> 16) & 0x1f) #define dktype(dev) ((minor(dev) >> 25) & 0x7f) #define dkunit(dev) ((((dev) >> 16) & 0x1e0) | (((dev) >> 3) & 0x1f)) ======================================================================== The da driver uses dkunit() to figure out the unit number. It looks like that means it supports 2^9 disk devices. Ken -- Kenneth Merry ken@plutotech.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message