From owner-cvs-src@FreeBSD.ORG Tue Jul 13 22:38:54 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 23D9916A4CE; Tue, 13 Jul 2004 22:38:54 +0000 (GMT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id C410843D41; Tue, 13 Jul 2004 22:38:53 +0000 (GMT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.11/8.12.11) with ESMTP id i6DMcdMj051145; Tue, 13 Jul 2004 18:38:39 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)i6DMccCO051142; Tue, 13 Jul 2004 18:38:38 -0400 (EDT) (envelope-from robert@fledge.watson.org) Date: Tue, 13 Jul 2004 18:38:38 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: "M. Warner Losh" In-Reply-To: <20040713.153657.36025694.imp@bsdimp.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: src-committers@freebsd.org cc: cvs-src@freebsd.org cc: scottl@freebsd.org cc: cvs-all@freebsd.org cc: phk@phk.freebsd.dk cc: nate@root.org Subject: Re: cvs commit: src/sbin/kldunload kldunload.8 kldunload.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Jul 2004 22:38:54 -0000 On Tue, 13 Jul 2004, M. Warner Losh wrote: > : >newbus definitely supports multiple inheritance like you describe. > : >Just use DEFINE_CLASS_2 for objects A and B and list X and Y for the > : >first one and Y and Z for the second. > : > : That was another thing I ran into with newbus: I had to define > : things at compile time which I only knew at (auto-)configure time. > > Which things? If I might suggest -- this is not the right mailing list for a discussion of how to make most of FreeBSD's kernel features fit the Newbus architecture. Probably the arch@ mailing list is the place to do that. That said, I'm not sure I see the kldunload state changes as incompatible with the notion of having most kernel modules become newbussified, especially given that there are a lot of kernel extension interfaces (many of which were named by Poul-Henning), and many of which would benefit from a safe unloading mechanism without having to substantially modify them in the mean time. The primary goal, presumably, would therefore be to make sure that the KLD interface was semantically compatible with the Newbus model, and not that it not exist. I suggest creating a thread named "Newbus the world" on arch@, in which the major classes of kernel modules and extension interfaces are documented, along with ideas about how they could usefully turn into Newbus-enabled pieces. Poul-Henning's list is a decent starting point, but probably not a complete list. Remember to tell people why switching to Newbus would be an improvement, especially for modules and module systems that don't clearly map onto synthetic or real devices, such as Netgraph nodes, MAC policy modules, schedulers, network protocols, file systems, etc. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Principal Research Scientist, McAfee Research