lkml.org 
[lkml]   [2012]   [Jan]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 1/7] Adding support to freeze and unfreeze a journal
    On Tue 10-01-12 13:50:22, Surbhi Palande wrote:
    > > > Hrm let me think through this a little more; we actually do:
    > > >
    > > > t16) ext4_journal_start()
    > > > t17) ext4_journal_start_sb()
    > > > t18) handle = ext4_journal_current_handle();
    > > > t19) if (!handle) vfs_check_frozen()
    > > > t20) ... jbd2_journal_start()
    > > Ah, right. I forgot.
    > >
    > > > So actually we *do* block new handles, but let *existing* ones
    > > > continue (see commits 6b0310fbf087ad6e9e3b8392adca97cd77184084
    > > > and be4f27d324e8ddd57cc0d4d604fe85ee0425cba9)
    > > >
    > > > So your assertion that a new handle is started is incorrect
    > > > in general, isn't it? So then does the fix seem necessary?
    > > > Or, at least, in the fashion below - maybe we need to just make
    > > > sure all started handles complete before the unlock_updates?
    > > > Or am I missing something...?
    > > Well, the problem with running operations and freezing is more
    > > fundamental I believe. See my email
    > > http://marc.info/?l=linux-fsdevel&m=132585911925796&w=2
    > >
    > > So I believe we'll need some better exclusion mechanism already in VFS.
    > >
    > > Honza
    > >
    >
    >
    > If all the write operations were journaled, then this patch would not allow
    > ext4 filesystem to have any dirty data after its frozen.
    > (as journal_start() would block).
    >
    > I think the only one candidate that creates dirty data without calling
    > ext4_journal_start() is mmapped?
    No, the problem is in any write path. The problem is with operations
    that happen during the phase when s_frozen == SB_FREEZE_WRITE. These
    operations dirty the filesystem but running sync may easily miss them.
    During this phase journal is not frozen so that does not help you in any
    way.

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


    \
     
     \ /
      Last update: 2012-01-11 01:07    [W:2.362 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site