From owner-cvs-all Sun Jan 9 6:44:15 2000 Delivered-To: cvs-all@freebsd.org Received: from overcee.netplex.com.au (overcee.netplex.com.au [202.12.86.7]) by hub.freebsd.org (Postfix) with ESMTP id 72F0215A60; Sun, 9 Jan 2000 06:44:07 -0800 (PST) (envelope-from peter@netplex.com.au) Received: from netplex.com.au (localhost [127.0.0.1]) by overcee.netplex.com.au (Postfix) with ESMTP id E6D8E1CCE; Sun, 9 Jan 2000 22:44:03 +0800 (WST) (envelope-from peter@netplex.com.au) X-Mailer: exmh version 2.1.1 10/15/1999 To: Gerard Roudier Cc: "Rodney W. Grimes" , obrien@NUXI.com, "Chris D. Faulhaber" , cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/i386/conf GENERIC LINT In-Reply-To: Message from Gerard Roudier of "Sun, 09 Jan 2000 16:00:35 +0100." Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Date: Sun, 09 Jan 2000 22:44:03 +0800 From: Peter Wemm Message-Id: <20000109144403.E6D8E1CCE@overcee.netplex.com.au> Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk Gerard Roudier wrote: > > > On Sun, 9 Jan 2000, Rodney W. Grimes wrote: > > > > On Sat, Jan 08, 2000 at 08:14:55PM -0500, Chris D. Faulhaber wrote: > > > > > Add the `sym' SCSI driver. Commented out in GENERIC as I have no w ay of > > > > > testing if `ncr' and `sym' can co-exist in a 3.x machine. Uncommen ted of > > > > > course in LINT. > > > > > > > > FWIW, with both > > > > controller ncr0 > > > > controller sym0 > > > > in the kernel config, the machine boots successfully, attaching: > > > > > > Are you able to test this kernel in a machine with a SCSI card that only > > > `ncr' supports? > > > > I just built a -stable kernel with both ncr0 and sym0 in it (the comment > > is wrong, they do not conflict with each other) and booted the > > same kernel twice , once with a 53C825 and once with a 53C875, everything > > worked just fine. > > > > Please uncomment the sym0 driver in GENERIC and remove the bogus > > coment about it conflicting with ncr0 > > Depends on what 'conflict' means in that context. On 3.X system, the PCI > device drivers are seen from the `pcidevice_set' kernel data section and > the code that attaches PCI device drivers is (seems?) careful about not > allowing the same PCI device to be attached by 2 different drivers. [..] > Under 3.X, the PCI driver probe routines donnot return a priority but just > a pointer to some name of the device when they accept this device (NULL > otherwise). So, the trick above cannot be back-ported. Actually, it works because of the conf/files file order. sym gets probed first, then ncr.. always. I likes the hack where ncr was modified with: #if NSYM > 0 if (chip_has_scripts) fail_probe; #endif This means that if sym and ncr go in the other order for some reason so that ncr comes first, it will see chips with scripts and if sym is compiled in then it will refuse the probe. This was a perfectly adequate hack and should be in 3.x if it is not already. [..] > We probably want to have something better for 3.5, but thanks to David, > 4.0 is clean about the issue. Solutions for 4.0 release could be the > following: Yep, I made the old-style pci device wrapper use a low priority so that both got a chance to probe and sym could take it if it was supported and leave it for ncr if not. > A) Let the 'sym' take precedence over 'ncr' (default) Yes! Anyway, lets get the hack for allowing sym to be the default regardless of the probe order into 3.x. (ie: the ncr.c modification). Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message