Messages in this thread | | | Date | Tue, 10 Jan 2012 13:55:17 -0800 | Subject | Re: [PATCH v2 1/7] Adding support to freeze and unfreeze a journal | From | Surbhi Palande <> |
| |
> > 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?
Regards, Surbhi. -- 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/
| |