From owner-freebsd-stable@FreeBSD.ORG Fri Mar 2 00:12:43 2012 Return-Path: Delivered-To: stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id E8F441065672; Fri, 2 Mar 2012 00:12:43 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-wi0-f182.google.com (mail-wi0-f182.google.com [209.85.212.182]) by mx1.freebsd.org (Postfix) with ESMTP id 508C18FC16; Fri, 2 Mar 2012 00:12:42 +0000 (UTC) Received: by wibhn6 with SMTP id hn6so367609wib.13 for ; Thu, 01 Mar 2012 16:12:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=O2wMNq81BkXpFRG0pCcmTDHAhwYcroxZMisQ3GFZ7cU=; b=uIMr6sWexbCE4M4jHBiRjCnvAYB4OhxBvHGT2q+PDGhr2+lMrXdXE16BTKksVrvDL2 E4/2y4j5X/1yg0cV5FDFODcFKFnU41yoQVcLw1+/Qs8BqacU2/4LiUkBX2Re9L2zJzjn 32WTHEFb67UJBftastHl9dqO0YBrfweG3sXm2CXQvwPz07rSyzIu/yo9tV/JVTaioO/J tc0xj4poNBjDK0LbTpUY/8QWnFEMQXIxJ5ggiUqPH0k2CEcI66GWDHnte2rF99OvHYW7 w2I2OrE3ykcjHH+JQo1H6nwDkR5mS9whla6bUSF73BPhpYJqXXpVPWr1q00RjqR7IVBD a6oQ== MIME-Version: 1.0 Received: by 10.180.96.8 with SMTP id do8mr31950wib.21.1330647162270; Thu, 01 Mar 2012 16:12:42 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.216.198.81 with HTTP; Thu, 1 Mar 2012 16:12:42 -0800 (PST) In-Reply-To: <2F3C6FA2-4045-4022-A317-42CF616A84A8@gmail.com> References: <20120221143537.Horde.deyFDZjmRSRPQ52pxBIpnLA@webmail.leidinger.net> <2F3C6FA2-4045-4022-A317-42CF616A84A8@gmail.com> Date: Thu, 1 Mar 2012 16:12:42 -0800 X-Google-Sender-Auth: 0u3V_zw9pidgyjjxL09VlI8H1ZE Message-ID: From: Adrian Chadd To: Nikolay Denev Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: Alexander Leidinger , stable@freebsd.org, current@freebsd.org Subject: Re: [CFT] modular kernel config X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Mar 2012 00:12:44 -0000 SunOS 4.x users will love you. :-) Adrian On 1 March 2012 02:27, Nikolay Denev wrote: > On Feb 21, 2012, at 3:35 PM, Alexander Leidinger wrote: > >> Hi, >> >> I created a kernel config for i386/amd64 (should work on -current and 9.= x) and a suitable loader.conf which: >> - tries to provide as much features as GENERIC (I lost one or two disk >> =A0 controllers, they are not available as a module... or I didn't find >> =A0 them) >> - incorporates some more features based upon a poll on stable@ >> =A0 (see below) >> - loads as much as possible as a module >> >> I've compile-tested them on i386 and amd64, but I didn't had time yet to= give it a try on a spare machine. I may get some time next week to test (i= 386 only). It would be nice if someone could help testing: >> - compile the kernel >> - make _sure_ you have a way to recover the system in case >> =A0 the new kernel+loader.conf fails >> - verify that the example loader.conf contains all devices >> =A0 which are important for you >> - copy the example loader.conf to /boot/loader.conf >> - give it a try >> >> You can download from >> =A0http://www.Leidinger.net/FreeBSD/current-patches/ >> The files are >> =A0- i386_SMALL >> =A0- i386_SMALL_loader.conf >> =A0- amd64_SMALL >> =A0- amd64_SMALL_loader.conf >> I didn't provide direct links for eqch one on purpose. If you do not kno= w how to recover a system with an unsuitable loader.conf, don't give this a= try (you could check a diff between GENERIC and SMALL, and make sure all r= emoved devices which are imporant for you are in the loader.conf). They sho= uld work on -current and on 9.x, for 8.x I'm not sure if it woll work witho= ut removing some stuff (GENERIC on 8.x comes without some more debugging op= tions, make sure you don't get surprised by them, but those may not be the = only differences). >> >> I didn't use the name MODULAR on purpose, I've chosen a name where the f= irst letter does not yet exist in the kernel config directory, to make tab-= completion more easy. If you are not happy with the name, keep your opinion= for yourself please, until after you tested this on a (maybe virtual) syst= em. >> >> The loader.conf was generated with a script from a diff between GENERIC = and SMALL, if there's a name mismatch between the config-name and the modul= e-name, the script may have missed the module (I added some missing sound m= odules, but I may have overlooked something). You better double-check befor= e giving it a try. The loader.conf is also supposed to disable some feature= s (at the end of the file) which are new compared to what is in GENERIC, if= the particular feature could cause a change in behavior. >> >> The new stuff in the kernel config compared to GENERIC is (in order of n= umber of requests from users): >> - IPSEC (+ device enc + IPSEC_NAT_T) >> - ALTQ >> - SW_WATCHDOG >> - QUOTA >> - IPSTEALTH (disabled in loader.conf) >> - IPFIREWALL_FORWARD (touches every packet, power users which need >> =A0 a bigger PPS but not this feature can recompile the kernel, >> =A0 discussed with julian@) >> - FLOWTABLE (disabled in loader.conf) >> - BPF_JITTER >> >> In the poll there where some more options requested, but most of them ca= n be handled via the loader or sysctl (e.g. the firewalls can be loaded as = modules). For some of them I added some comments at the end of the SMALL co= nfig to make it more easy to find the correct way of configuring them. Doc-= committers may want to have a look, maybe there's an opportunity to improve= existing documentation. >> >> I'm interested in success reports, failure reports, and reports about mi= ssing stuff in loader.conf (mainly compared to the devices available in GEN= ERIC, but missing stuff which could help getting a system installed and boo= ted is welcome even if what you propose is not in GENERIC). >> >> Bye, >> Alexander. >> >> -- >> >> http://www.Leidinger.net =A0 =A0Alexander @ Leidinger.net: PGP ID =3D B0= 063FE7 >> http://www.FreeBSD.org =A0 =A0 =A0 netchild @ FreeBSD.org =A0: PGP ID = =3D 72077137 >> > > > Just an idea : Ship FreeBSD with all the kernel object files > (even compile different versions of them, let's say networking with IPFOR= WARD and networking without), > and then let the user relink the kernel with some shell script. > This way freebsd-update can binary update the object files, > and then relink the users's kernel. > This of course will probably need some infrastructure work to make it pos= sible. > > P.S.: As I said, just an idea off the top of my head :) > > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org= "