Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Dec 2001 15:00:53 -0800
From:      Jordan Hubbard <jkh@winston.freebsd.org>
To:        Robert Watson <rwatson@FreeBSD.ORG>
Cc:        Peter Wemm <peter@wemm.org>, Matthew Dillon <dillon@apollo.backplane.com>, Terry Lambert <tlambert2@mindspring.com>, freebsd-arch@FreeBSD.ORG
Subject:   Re: Proposed auto-sizing patch to sysinstall (was Re: Using a larger block size on large filesystems) 
Message-ID:  <44305.1008025253@winston.freebsd.org>
In-Reply-To: Message from Robert Watson <rwatson@FreeBSD.ORG>  of "Mon, 10 Dec 2001 14:07:12 EST." <Pine.NEB.3.96L.1011210140216.4035N-100000@fledge.watson.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
> I have to admit I prefer this behavior: on the initial read through of
> Matt's description, I said to myself "But what if I just wanted to delete
> the partition, not merge it into another?"  With the D key defined as
> proposed, it would be a lot harder to do this.

I've come up with a way of dealing with this that, I think, will work
out nicely - I'm about 3/4 done with all the code and am working on
some of the issues around making auto-layout a mode now vs a command.
label.c also got a complete rewrite at the same time, so maybe this
has all been for the good.  Anyway, the way things now work is thusly:

Upon entering the label editor, you see the current "traditional" view
with the slices available for partitioning at the top and any partitions
at the bottom.  If you use the (C)reate option to create a partition, it's
created in the usual way and a libdisk "chunk" is assigned to it.  If you
hit (A)uto, the label editor goes into "Auto layout mode" and that has
the following effects:

    1. The current profile is scanned (the default profile being fairly
       close to what we have today) and any filesystems on its 'wish list'
       are put into the to-be-created state with an auto-generated size.

    2. Any filesystems in the to-be-created state have their disk device
       displayed as "<auto>" and have a lower precedence than any manually
       created partition.  If you (c)reate a filesystem that already has
       an auto-placeholder, it replaces the placeholder and is assigned
       a libdisk chunk.  If you (d)elete a manually created chunk, it
       simply goes away again.  If you delete an automatically created
       filesystem, it goes away and the space it "occupied" is assigned
       to its "buddy".

    3. If you switch (P)rofiles, all the auto-generated filesystems
       are recreated to match the new profile, e.g. if /usr was
       auto-generated and currently sized at 400MB from the current
       profile and it's 800MB in the new profile, /usr will change
       size along with any other auto-generated filesystems which
       need to.  If the user has (c)reated a filesystem manually,
       its size is unchanged and all the other auto filesystems just
       sort of flow around it.

    4. Upon (Q)uiting or (W)riting at the label editor, all auto-created
       filesystems have their corresponding libdisk chunks actually
       allocated and the device names are now printed, (Q)uit also
       now invoking a new "Does everything look correct (Y/N)?"
       if auto-layout was used (if you only manually create stuff, it
       won't bother asking).

I realize that this is something of a shift from the previous paradigm
and am interested in knowing if anyone other than Matt hates it. :)
Personally, I think it's a really cool way of cycling through
different canned system profiles and seeing what other people
recommended as defaults for that type of configuration.  It also deals
nicely with the issue of having multiple slices - you no longer have
to go to a specific slice and "lay it out", the auto-layout feature
taking advantage of all available (FreeBSD) slices without any special
user intervention.

- Jordan

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44305.1008025253>