mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: rmoser <mlmoser@comcast.net>
To: John Bradford <john@grabjohn.com>, linux-kernel@vger.kernel.org
Subject: Re: File System conversion -- ideas
Date: Sun, 29 Jun 2003 16:44:09 -0400	[thread overview]
Message-ID: <200306291644090200.0248EFC0@smtp.comcast.net> (raw)
In-Reply-To: <200306292020.h5TKKxJ2000188@81-2-122-30.bradfords.org.uk>



*********** REPLY SEPARATOR  ***********

On 6/29/2003 at 9:20 PM John Bradford wrote:

>> If you think about it, you have this:
>>
>> [PARTITION 1]
>>     |
>>    V
>> [PARTITION 2]
>>
>> I have this (the == is an equivalence signm i.e. this is what's inside):
>>
>> [PARTITION]
>>     ==
>> [DATASYSTEM]
>>     ==
>> [FILESYSTEM 1]
>>     |
>>     V
>> [DATASYSTEM ATOMS]
>>     |
>>     V
>> [FILESYSTEM 2]
>>
>> Both filesystems are the full size of the partition, and so is the
>> datasystem.  The only difference is that before you start you have
>> to make sure that the datasystem's gonna fit in with the free space
>> on the first filesystem, and still have space to start the second
>> filesystem, and then have space for its atoms.
>
>Just thought - that's going to be a problem in read-write mode :-/.
>
>If the disk fills up, we'd need to be able to maintain a consistant
>filesystem structure, (at least good enough so that a separate
>fsck-like utility could repair it - if the disk filled up, then the
>conversion couldn't be done on-the-fly).
>


mmm.. hadn't thought of that.

1 second answer:  Lock down some of the freespace.  Do NOT let it
get full.  You know how ext2 reserves 5% for the superuser?  Do that.
Reserve enough freespace to keep working and finish the conversion.
Predict from the beginning how much free space is going to be needed,
and how much is going to be left over at the very final stages of the
conversion.

>> These atoms will
>> slowly be destroyed as they go into the second filesystem.  You
>> have to also make sure that the second FS won't be bigger than the
>> first, and will at the end have enough to hold at least the empty
>> datasystem and one atom.
>>
>> I feel I should note, since I forgot before, that an atom can contain
>part
>> of the data for an inode, as long as you know this and can write the atom
>> out to the new filesystem and get more of the old.
>
>Seems like a solid idea, though.  As long as it worked on at least
>read-only mounted filesystems, I'd be quite interested in seeing it in
>the mainline kernel.
>

On a side note, the bitch is gonna be trying to swap the superblock back
in over the datasystem's superblock.  Maybe we should set it up so that
the datasystem has the journal in a fixed place, or tell the user where it
is, so that if we do crash at that absolute final stage, we can finish it out
:/

Sorry, just spouting extra things.  To me, it's no good unless we've prepared
for 100% of the problems we will encounter, excluding bugs in the code.

>John.
>-
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at  http://www.tux.org/lkml/


--Bluefox Icy


  reply	other threads:[~2003-06-29 20:36 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-29 20:20 John Bradford
2003-06-29 20:44 ` rmoser [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-07-07  8:43 John Bradford
2003-07-01 16:04 Matt Reuther
2003-07-01 16:13 ` Frank Gevaerts
2003-06-30 14:11 John Bradford
2003-06-30 15:45 ` Leonard Milcin Jr.
2003-06-30  8:55 John Bradford
2003-06-30  9:36 ` Hans Reiser
2003-06-30 16:29   ` viro
2003-06-29 21:59 John Bradford
2003-06-29 20:06 John Bradford
2003-06-29 18:58 John Bradford
2003-06-29 19:12 ` rmoser
2003-06-29 18:37 John Bradford
2003-06-29 18:48 ` rmoser
2003-06-29 19:42 ` Jamie Lokier
2003-06-29 16:24 John Bradford
2003-06-29 16:13 John Bradford
2003-06-29 19:16 ` Jamie Lokier
2003-06-29 10:11 John Bradford
2003-06-29 13:28 ` Jamie Lokier
2003-06-29 13:50   ` David D. Hagood
2003-06-29 18:31     ` rmoser
2003-06-29 19:55       ` David D. Hagood
2003-06-29 20:05         ` rmoser
2003-06-29 20:41           ` David D. Hagood
2003-06-29 20:53             ` rmoser
2003-06-29 20:22         ` Leonard Milcin Jr.
2003-06-30 16:05     ` Henning P. Schmiedehausen
2003-06-30 16:59       ` Leonard Milcin Jr.
2003-06-30 17:04         ` Kevin Corry
2003-06-30 17:37         ` Valdis.Kletnieks
2003-07-01  9:56       ` Stewart Smith
2003-06-29 13:54   ` Leonard Milcin Jr.
2003-06-29 18:45     ` rmoser
2003-06-29 19:37       ` Leonard Milcin Jr.
2003-06-29 19:43         ` Leonard Milcin Jr.
2003-06-29 19:48           ` rmoser
2003-06-30  3:52             ` Horst von Brand
2003-07-01 10:15             ` Stewart Smith
2003-07-01 14:55               ` Leonard Milcin Jr.
2003-07-01 15:41                 ` Stewart Smith
2003-07-01 16:19                   ` Leonard Milcin Jr.
2003-06-29 19:44         ` rmoser
2003-06-29 19:44         ` Jamie Lokier
2003-06-29 19:46           ` rmoser
2003-06-29 20:02           ` viro
2003-06-29 20:26             ` Leonard Milcin Jr.
2003-06-29 20:31             ` rmoser
2003-07-01 10:01         ` Stewart Smith
2003-06-29 19:28     ` Jamie Lokier
2003-06-29 19:35       ` rmoser
2003-06-29 19:42       ` viro
2003-06-29 19:45         ` rmoser
2003-06-29 20:00           ` viro
2003-06-29 20:19             ` Davide Libenzi
2003-06-29 20:25               ` viro
2003-06-29 20:45                 ` rmoser
2003-06-29 20:46                 ` Davide Libenzi
2003-06-30  9:13                 ` Nikita Danilov
2003-06-29 20:38               ` rmoser
2003-06-29 20:29             ` rmoser
2003-06-29 20:50               ` Hugo Mills
2003-06-29 21:00                 ` rmoser
2003-06-29 21:10                   ` Davide Libenzi
2003-06-29 21:37                   ` Hugo Mills
2003-06-29 21:54                     ` rmoser
2003-06-29 22:25                       ` Hugo Mills
2003-06-29 20:51               ` viro
2003-06-29 21:07                 ` rmoser
2003-06-29 21:08                 ` Chris Friesen
2003-06-30  0:25               ` Jan Harkes
2003-06-30  0:59                 ` rmoser
2003-07-01 20:03             ` Pavel Machek
2003-07-02 14:49               ` Jan Kara
2003-06-29 20:05           ` David D. Hagood
2003-06-29 20:36             ` rmoser
2003-06-30  0:05               ` Richard Braakman
2003-06-30  0:58                 ` rmoser
2003-06-29 21:32           ` Diego Calleja García
2003-06-30 13:26           ` Jesse Pollard
2003-06-30 13:42             ` Hans Reiser
2003-06-30 13:56               ` Jesse Pollard
2003-07-06 19:30             ` Svein Ove Aas
2003-06-29 18:26 ` rmoser
2003-06-29  6:57 rmoser
2003-06-30 13:05 ` Jesse Pollard

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=200306291644090200.0248EFC0@smtp.comcast.net \
    --to=mlmoser@comcast.net \
    --cc=john@grabjohn.com \
    --cc=linux-kernel@vger.kernel.org \
    /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

all inboxes | Powered by JetHome®