From owner-freebsd-current@freebsd.org Fri Sep 29 01:10:03 2017 Return-Path: Delivered-To: freebsd-current@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BCD5AE12008 for ; Fri, 29 Sep 2017 01:10:03 +0000 (UTC) (envelope-from freebsd-rwg@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 69952744A9 for ; Fri, 29 Sep 2017 01:10:02 +0000 (UTC) (envelope-from freebsd-rwg@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v8T19pOE028899; Thu, 28 Sep 2017 18:09:52 -0700 (PDT) (envelope-from freebsd-rwg@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd-rwg@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v8T19oMO028898; Thu, 28 Sep 2017 18:09:50 -0700 (PDT) (envelope-from freebsd-rwg) From: "Rodney W. Grimes" Message-Id: <201709290109.v8T19oMO028898@pdx.rh.CN85.dnsmgr.net> Subject: Re: How do GEOM_PART_* options configure geom_part_* modules?? In-Reply-To: To: Warner Losh Date: Thu, 28 Sep 2017 18:09:50 -0700 (PDT) CC: Kevin Oberman , Nick Hibma , FreeBSD Current Mailing List X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Mailman-Approved-At: Fri, 29 Sep 2017 01:36:12 +0000 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Sep 2017 01:10:03 -0000 > On Thu, Sep 28, 2017 at 11:12 AM, Kevin Oberman wrote: > > > On Thu, Sep 28, 2017 at 9:13 AM, Warner Losh wrote: > > > >> On Thu, Sep 28, 2017 at 10:00 AM, Nick Hibma > >> wrote: > >> > >> > I created a new kernel config file from scratch, wondered what the > >> > GEOM_PART_MBR option and friends were doing, search for them, didn't > >> find > >> > them in the tree, and deleted them from my config. But... de resulting > >> disk > >> > image didn't boot, because of the fact that it didn't recognise the MBR > >> > partitions (it only had a single diskid entry on the mount-root prompt). > >> > > >> > Can anyone explain to me how these kernel options work, as in: they are > >> > defined in kernel configs and as a consequence in opt_geom.h, but how > >> are > >> > they actually used to select which geom_part_* modules/kernel parts to > >> > build? I thought these options were translated to stuff that cpp would > >> use, > >> > but there are not uses of for example GEOM_PART_MBR anywhere for > >> example! > >> > > >> > > >> > The module always build them because they are listed in the module's > >> > Makefile. > >> > > >> > The kernel only sometimes does. Here's the key lines from conf/files: > >> > files:geom/geom_bsd_enc.c optional geom_bsd | geom_part_bsd > >> > files:geom/part/g_part_apm.c optional geom_part_apm > >> > files:geom/part/g_part_bsd.c optional geom_part_bsd > >> > files:geom/part/g_part_bsd64.c optional geom_part_bsd64 > >> > files:geom/part/g_part_ebr.c optional geom_part_ebr > >> > files:geom/part/g_part_gpt.c optional geom_part_gpt > >> > files:geom/part/g_part_ldm.c optional geom_part_ldm > >> > files:geom/part/g_part_mbr.c optional geom_part_mbr > >> > files:geom/part/g_part_vtoc8.c optional geom_part_vtoc8 > >> > > >> > which turn on/off which files get included. config "helpfully" converts > >> the > >> > upper case options to lower case for this. > >> > > >> > Warner > >> > > >> > > >> > *slaps forehead* Goose chase! > >> > > >> > I actually knew that... and, at the time, thought it was weird > >> behaviour. > >> > ''grep" would not have failed me if those options would be uppercase > >> there > >> > ... > >> > > >> > >> I've been nibbled to death by these geese often enough to have a PTSD-like > >> reaction when someone mentions it and habitually add -i to my greps... > >> > >> Warner > > > > > > This horrid POLA violation seems to have been in FreeBSD configuration > > since at least 3.0 and probably goes back to the creation of the > > configuration process. > > > > Any idea why such a horrible POLA was ever introduced? Seems like an > > obviously bad idea in an OS that is ALMOST always case sensitive. > > > > It's received code from the old 4.3 BSD config program (or maybe the net-2 > config program). We had best not have any code direct from 4.3 or net-2, it should be from 4.4BSDLite, any code prior to that is subject of the lawsuit. -- Rod Grimes rgrimes@freebsd.org