From owner-freebsd-arch@FreeBSD.ORG Sat Mar 8 17:43:00 2014 Return-Path: Delivered-To: freebsd-arch@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5BEE9D3B; Sat, 8 Mar 2014 17:43:00 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2B36594A; Sat, 8 Mar 2014 17:42:59 +0000 (UTC) Received: from c-24-8-230-52.hsd1.co.comcast.net ([24.8.230.52] helo=damnhippie.dyndns.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1WMLH0-000KCF-Kq; Sat, 08 Mar 2014 17:42:58 +0000 Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by damnhippie.dyndns.org (8.14.3/8.14.3) with ESMTP id s28Hgu4n053669; Sat, 8 Mar 2014 10:42:56 -0700 (MST) (envelope-from ian@FreeBSD.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 24.8.230.52 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1+jpFxbKLw3qfqfEcPT4hCI Subject: Re: Teach mdmfs about tmpfs and use tmpfs in rc scripts From: Ian Lepore To: Jia-Shiun Li In-Reply-To: References: <1394148413.1149.348.camel@revolution.hippie.lan> <1394199416.1149.367.camel@revolution.hippie.lan> <1394290468.1149.397.camel@revolution.hippie.lan> Content-Type: text/plain; charset="us-ascii" Date: Sat, 08 Mar 2014 10:42:56 -0700 Message-ID: <1394300576.1149.413.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 7bit Cc: freebsd-rc@FreeBSD.org, freebsd-arch X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Mar 2014 17:43:00 -0000 On Sun, 2014-03-09 at 01:11 +0800, Jia-Shiun Li wrote: > On Sat, Mar 8, 2014 at 10:54 PM, Ian Lepore wrote: > > Okay, if people think that all this work should be done in the rc > > scripts rather than in a program, then the rc scripts need to be changed > > to do what I did in the program: honor existing options that make sense > > for tmpfs (any -o options for the mount, translate -s to size=, and > > don't use tmpfs if the config requests multilabel MAC). And the changes > > need to happen in rc.subr and in rc.initdiskless which doesn't use > > rc.subr. Oh, and of course, don't do any of it if tmpfs isn't > > available. > > > > If this isn't done, peoples' existing configurations may break (in the > > case of the MAC option, break in a way with potential security > > implications). > > > > I've gotta say, I don't understand the basic resistance to having a > > single unified tool for configuring a memory filesystem. > > > > Probably because we were focusing on the usual rc case? > For the usual rc case it is easier to change scripts to use > tmpfs altogether. But it will break compatibility of rc.conf > flags too. Upgraded users will need to modify them manually. > And I am not sure if there are more advanced uses, like > setting multilabel for /var & /tmp. In these cases your > patch makes more sense. > > Think that's just us not catching your point yet. ;) > Part of the reason I jumped on this when you brought it up on the arm list is because we're heavy users of the readonly rootfs support rc scripts at $work (and not many people are), so I wanted to make sure the change wasn't done on the assumption that you can just hard-code tmpfs in place of md in the rc scripts "and stuff will just keep working". That's only true for some limited subset of "stuff" and while it's certainly possible to manually change your rc.conf to match when upgrading, that's actually hard to do when you're trying to manage software ranging from freebsd 6 through 11 all with a common config and build and deployment system. -- Ian