From owner-cvs-all@FreeBSD.ORG Sat Nov 15 21:03:46 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from green.bikeshed.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 856C016A4CE; Sat, 15 Nov 2003 21:03:46 -0800 (PST) Received: from green.bikeshed.org (localhost [127.0.0.1]) by green.bikeshed.org (8.12.10/8.12.9) with ESMTP id hAG53jcR058861; Sun, 16 Nov 2003 00:03:45 -0500 (EST) (envelope-from green@green.bikeshed.org) Received: from localhost (green@localhost)hAG53j2t058858; Sun, 16 Nov 2003 00:03:45 -0500 (EST) Message-Id: <200311160503.hAG53j2t058858@green.bikeshed.org> X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: Bruce Evans In-Reply-To: Message from Bruce Evans <20031115094529.H10567@gamplex.bde.org> From: "Brian F. Feldman" Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 16 Nov 2003 00:03:45 -0500 Sender: green@green.bikeshed.org cc: Brian Feldman cc: src-committers@FreeBSD.org cc: Robert Watson cc: John Baldwin cc: cvs-src@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/conf kern.post.mk kmod.mk X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Nov 2003 05:03:46 -0000 Bruce Evans wrote: > On Fri, 14 Nov 2003, Robert Watson wrote: > > > On Fri, 14 Nov 2003, John Baldwin wrote: > > > > > On 14-Nov-2003 Brian Feldman wrote: > > > > green 2003/11/14 08:04:11 PST > > > > > > > > FreeBSD src repository > > > > > > > > Modified files: > > > > sys/conf kern.post.mk kmod.mk > > > > Log: > > > > Include opt_global.h in the modules build, when building from a normal > > > > kernel build. This makes it possible for me not to get pissed off that > > > > random.ko crashes the system trying to rdtsc() when the i386/cpu.h > > > > support code decides it's okay to call that op when neither I386_CPU or > > > > I486_CPU is defined. I guess it also makes WITNESS/INVARIANTS defines > > > > get picked up by the modules. > > Ugh. > > > > WITNESS doesn't matter as all calls to it are done in the actual locking > > > code itself which does not lives in modules. Modules always call the > > > locking functions and don't inline locking operations. > > WITNESS actually has non-broken support for modules. Modules cannot depend > on options, since they must work for all kernels. > > Here is a fix to unbreak the rdtsc() call similarly. I dunno, Bruce; I don't really agree with you there. Modules are installed, as they are built in the src/sys/arch/compile/KERNEL directories, into the same directories as the kernel. This implies they're matched with the kernel. I think depending on options in those modules is totally, perfectly fine. I think it's also fine for modules built outside of a kernel build to make sure to work with kernels compiled with any options whatsoever. The modules built by ports should be the same way. There shouldn't be any options in the kernel build that can break "generic" modules, but the modules built along side the kernel you're building aren't "generic" modules. -- Brian Fundakowski Feldman \'[ FreeBSD ]''''''''''\ <> green@FreeBSD.org \ The Power to Serve! \ Opinions expressed are my own. \,,,,,,,,,,,,,,,,,,,,,,\