[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Removing softdep
On Sat, Jun 07, 2008 at 01:55:10AM +0200, Martin Husemann wrote:
> On Sat, Jun 07, 2008 at 12:11:57AM +0100, Andrew Doran wrote:
> > So, I propose to remove softdep when we import the journalling code, and to
> > go forward with the focus on improving journalling.
> I agree with this in principle, but as an admin running file systems with
> softdeps now (netbsd-4 mostly, and never experienced any problems with
> softdeps) this migration would force me to dump, newfs and restore serious
> amounts of data, so would be a huge pain.
That would be unacceptable. The file system format won't change at all. I
don't know what Simon has planned for the journal but I like how Solaris
handles the journal. My limited understanding of it is:
- allocate unlinked blocks (no inode/directory) for journal
- allocate block to denote which blocks the journal uses, maybe a btree
- write decriptor block to disk
- write back superblock with pointer to descriptor block
- clear superblock pointer
- free all blocks allocated to describe journal, it's gone
- old, journal unaware fsck: don't recognise the blocks, throw them away.
check file system as usual. maybe lose data.
- new and journal aware: replay the journal, or let kernel mount it and
do the same.
Given that all you'd need to do is replace '-o softdep' with '-o whatever'.
If we reuse the flag bit you wouldn't need to do anything.
Main Index |
Thread Index |