From: Michael Evans <mjevans1983@gmail.com>
To: Neil Brown <neilb@suse.de>
Cc: Doug Ledford <dledford@redhat.com>,
Dan Williams <dan.j.williams@intel.com>,
linux-raid@vger.kernel.org, initramfs@vger.kernel.org,
martin f krafft <madduck@debian.org>,
Michal Marek <mmarek@suse.de>,
Hans de Goede <hdegoede@redhat.com>,
Bill Nottingham <notting@redhat.com>
Subject: Re: [[Patch mdadm] 2/5] Move the files mdmon opens into /dev/ to support handoff after pivotroot
Date: Mon, 8 Feb 2010 16:20:37 -0800 [thread overview]
Message-ID: <4877c76c1002081620r77a39bes1ab139ad587f1f9b@mail.gmail.com> (raw)
In-Reply-To: <20100209083838.6568cac0@notabene.brown>
On Mon, Feb 8, 2010 at 1:38 PM, Neil Brown <neilb@suse.de> wrote:
> On Mon, 08 Feb 2010 10:32:53 -0500
> Doug Ledford <dledford@redhat.com> wrote:
>
>> On 02/06/2010 04:07 PM, Dan Williams wrote:
>>
>> > This comment makes me see Neil's argument in a different light,
>> > (hopefully I am not mischaracterizing it), but essentially we are
>> > waiting for the standards to catch up with this new class of program.
>> > FUSE, CUSE, and mdmon belong to a class of programs that move
>> > traditionally exclusive kernel space functionality to userspace.
>> > Debian's /lib/init/rw looks to be a response to this grey area of the
>> > standards (not that I have any familiarity with the LSB).
>>
>> So if we want to argue that the standards are simply behind the times,
>> and we need to do something that makes sense regardless of the
>> standards, then I don't think anything in /dev or /lib makes sense. The
>> files that need to be created pre-rw-root are varied in their type and
>> purpose between different things. What we really need is simply an
>> early boot /tmp area. So, why not make a top level directory that
>> clearly delineates this nature? Something like /pre-init or /early-tmp
>> or whatever? Or possibly /tmp/pre-boot or /tmp/pre-init or
>> /tmp/pre-pivot-root (the pre-pivot-root naming is awfully linux
>> specific, so maybe /tmp/pre-init or /tmp/pre-boot would be better for
>> possible standards acceptance later)? I was thinking that mdmon's files
>> would be stuck there, but then I remembered that we are doing option #3
>> for mdmon, restarting after the system is up and running, so only the
>> mdmon instances from the initramfs would put their files there, the
>> final ones would be on the real /var/run area. So, since as far as I
>> know the mdmon .sock files were the only pre-boot files that couldn't be
>> moved later (but effectively get moved by restarting mdmon after r/w
>> /var/run), any and all files in /tmp/pre-pivot-root should be removed
>> once the system is up and running, and quite possibly the filesystem
>> could be entirely done away with. At least then the naming would be to
>> Neil's satisfaction I think, and mine. And personally, when the
>> standards are simply behind the times, I have no problem blazing ahead
>> and letting them catch up when they get off their asses.
>>
>>
>
> That's the spirit!!!
> Let's figure out what we really want/need, and just do it.
>
> Following my recent discovery that mdmon prevents /var from being unmounted
> at shutdown, I wonder if we really want something generic that persists from
> very early boot to very late shutdown, rather than just the early-boot part.
> So something like /var/run, but not dependent on /var and guaranteed to be
> in-memory (or swap) and created very early by initramfs.
>
> /run
> ???
> Trivial implementation for most distros would be to make it a symlink
> to /dev/run.
>
> I would prefer a name a little more descriptive than "/run" - something that
> reflects the idea that it is particularly for early-boot or late-shutdown -
> but nothing comes to mind.
>
> I could probably actually live with "/dev/run" as the permanent home for the
> mdmon files: /dev/run/mdmon/*.{sock,pid}
> It addresses most of the issues I had with the original suggestion (hidden
> files, non-generic approach) so the "cons" are weaker. And I now understand
> the "pros" better (races with cleaning /var/run, issues with unmounting /var
> etc).
>
> Anyone second the motion?
>
> NeilBrown
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
What about systems that have only devices known at compile/create time
and thus might be created with a fully static /dev for extra
simplicity. We should not simply expect that /dev is read-write as a
system requirement. This is one reason why my previous solutions
suggested using a known area and symlinking in an implementation
defined way that mdadm/mdmon didn't need to know about.
Maybe a good name for it is '/state' as in system state information.
It would be reasonable to expect it to be a ram/swap backed filesystem
for SMALL files to exist as a user-space state area for various
daemons and such.
However any information in there which is also potentially useful to
in-kernel code should probably be re-located to an entry exposed via
sysfs.
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2010-02-09 0:20 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-11 20:38 Minor mdadm fixes Doug Ledford
2010-01-11 20:38 ` [[Patch mdadm] 1/5] Make the IMSM_DEVNAME_AS_SERIAL option work when creating containers. This allows a person to testing using loopback devices that don't support serial number queries Doug Ledford
2010-01-18 22:01 ` Neil Brown
2010-01-18 22:13 ` Dan Williams
2010-01-19 1:55 ` Doug Ledford
2010-01-19 4:42 ` Dan Williams
2010-01-19 5:31 ` Doug Ledford
2010-01-19 5:47 ` Dan Williams
2010-01-11 20:38 ` [[Patch mdadm] 2/5] Move the files mdmon opens into /dev/ to support handoff after pivotroot Doug Ledford
2010-01-18 22:09 ` Neil Brown
2010-01-19 7:21 ` Luca Berra
2010-01-19 17:51 ` Doug Ledford
2010-02-01 20:32 ` Bill Davidsen
2010-02-01 21:32 ` Doug Ledford
2010-02-01 22:42 ` Bill Davidsen
2010-02-02 4:08 ` Michael Evans
2010-02-02 7:17 ` Luca Berra
2010-02-02 15:42 ` Bill Davidsen
2010-02-02 18:19 ` Doug Ledford
2010-02-04 13:50 ` Bernd Schubert
2010-02-04 15:03 ` Bernd Schubert
2010-02-04 15:48 ` Doug Ledford
2010-02-04 16:40 ` Bernd Schubert
2010-02-04 17:35 ` Doug Ledford
2010-02-02 18:11 ` Doug Ledford
2010-02-02 18:07 ` Doug Ledford
2010-02-02 18:18 ` Bill Davidsen
2010-02-04 6:40 ` Neil Brown
2010-02-04 18:45 ` Doug Ledford
[not found] ` <4B6B15B3.8030205-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-02-04 23:04 ` Dan Williams
[not found] ` <e9c3a7c21002041504w17565653m5a8b8cd90543cf1e-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-05 0:21 ` Bill Davidsen
2010-02-05 12:14 ` Luca Berra
2010-02-06 17:51 ` Doug Ledford
[not found] ` <4B6DAC06.6060909-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-02-06 21:07 ` Dan Williams
[not found] ` <e9c3a7c21002061307le6f5d56ked4fa3711bdd2367-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-06 21:46 ` martin f krafft
2010-02-06 22:06 ` Michael Evans
2010-02-08 15:32 ` Doug Ledford
2010-02-08 21:38 ` Neil Brown
2010-02-09 0:20 ` Michael Evans [this message]
[not found] ` <20100209083838.6568cac0-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2010-02-09 2:19 ` martin f krafft
[not found] ` <20100209021949.GB11780-0owbi4v4jRjYceiJAzDLgeTW4wlIGRCZ@public.gmane.org>
2010-02-09 20:34 ` Doug Ledford
[not found] ` <4B71C6CA.3010407-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2010-02-10 0:58 ` Mr. James W. Laferriere
[not found] ` <alpine.LNX.2.01.1002091553580.10004-pIN9qAC4yfKseEBmXaVrNB5FPEiCeG3sAL8bYrjMMd8@public.gmane.org>
2010-02-10 1:33 ` Neil Brown
2010-02-10 9:46 ` Harald Hoyer
[not found] ` <20100210123321.324e5de6-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2010-02-10 15:49 ` Dan Williams
2010-02-10 16:06 ` Michael Evans
[not found] ` <4877c76c1002100806w66e504deg767f6ecc8cc7fa8a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2010-02-11 2:30 ` Doug Ledford
2010-02-09 20:30 ` Doug Ledford
2010-02-08 4:23 ` Neil Brown
2010-02-07 22:13 ` Hans de Goede
2010-02-07 23:06 ` Neil Brown
2010-02-08 3:45 ` Neil Brown
2010-02-08 16:56 ` Bill Nottingham
2010-01-11 20:38 ` [[Patch mdadm] 3/5] We don't like %02d as a metadata format specifier, it confuses us when we read the output back later Doug Ledford
2010-01-18 22:02 ` Neil Brown
2010-01-11 20:38 ` [[Patch mdadm] 4/5] When using -D --export the UUID is helpful, so print it out Doug Ledford
2010-01-18 22:03 ` Neil Brown
2010-01-11 20:38 ` [[Patch mdadm] 5/5] Fix segfault when the AUTO keyword is used in the config file Doug Ledford
2010-01-18 22:03 ` Neil Brown
2010-01-12 0:49 ` Minor mdadm fixes Mr. James W. Laferriere
2010-01-12 3:10 ` Andre Noll
2010-01-12 3:36 ` Doug Ledford
2010-01-12 4:39 ` Andre Noll
2010-01-12 4:46 ` Doug Ledford
2010-01-12 5:21 ` Andre Noll
2010-01-18 22:05 ` Neil Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4877c76c1002081620r77a39bes1ab139ad587f1f9b@mail.gmail.com \
--to=mjevans1983@gmail.com \
--cc=dan.j.williams@intel.com \
--cc=dledford@redhat.com \
--cc=hdegoede@redhat.com \
--cc=initramfs@vger.kernel.org \
--cc=linux-raid@vger.kernel.org \
--cc=madduck@debian.org \
--cc=mmarek@suse.de \
--cc=neilb@suse.de \
--cc=notting@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).