lkml.org 
[lkml]   [2008]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 5/5] ext3: abort ext3 if the journal has aborted
    On Mon 02-06-08 19:48:41, Hidehiro Kawai wrote:
    > Subject: [PATCH 5/5] ext3: abort ext3 if the journal has aborted
    >
    > If the journal has aborted due to a checkpointing failure, we
    > have to keep the contents of the journal space. ext3_put_super()
    > detects the journal abort, then it invokes ext3_abort() to make
    > the filesystem read only and keep needs_recovery flag.
    >
    > Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
    ...
    > @@ -2373,7 +2374,13 @@ static void ext3_write_super_lockfs(stru
    >
    > /* Now we set up the journal barrier. */
    > journal_lock_updates(journal);
    > - journal_flush(journal);
    > +
    > + /*
    > + * We don't want to clear needs_recovery flag when we failed
    > + * to flush the journal.
    > + */
    > + if (journal_flush(journal) < 0)
    > + return;
    >
    > /* Journal blocked and flushed, clear needs_recovery flag. */
    > EXT3_CLEAR_INCOMPAT_FEATURE(sb, EXT3_FEATURE_INCOMPAT_RECOVER);
    It's a bit scary that LVM will start creating filesystem snapshot when
    journal_flush() failed but since there's no way to propagate error further
    up, I guess we cannot do anything better.
    You can add:
    Acked-by: Jan Kara <jack@suse.cz>

    Honza
    --
    Jan Kara <jack@suse.cz>
    SUSE Labs, CR


    \
     
     \ /
      Last update: 2008-06-02 14:53    [W:0.025 / U:1.164 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site