Help test softupdates journaling (SUJ)
Jeff Roberson
jroberson at jroberson.net
Sat Jan 9 01:39:56 UTC 2010
On Sat, 9 Jan 2010, Ivan Voras wrote:
> Jeff Roberson wrote:
>> Hello,
>>
>> I have been augmenting softupdates with a small journal that will be
>> processed in lieu of fsck in the event of a crash. I have written some
>> about this project here: http://jeffr_tech.livejournal.com/
>
> Good news!
>
>> For now I need volunteers who will attempt to crash the kernel code. It
>> now passes fsx, fsstress, and stress2 on my box for many hours. pho@ has
>> been helping me and may still have a bug or two but I need a wider audience
>> so we can be comfortable with the stability. In a week or so I will also
>> provide the checker. Until then a full fsck is required after a crash.
>
> Hi,
>
> Do you mean that journal replay/recovery is implemented but not 100% working
> yet so a fsck is needed or that it is still missing?
Hi Ivan,
It is implemented. You can search for suj.c in the patch if you would
like to review the source. It is part of fsck_ffs. Currently it does not
have perfect information from the kernel in some cases. I'm working on
fixing those now, and I believe I know what all of them are.
For the next step in testing I will ask volunteers to run the suj recovery
stage followed by a full filesystem check. If the full check turns up any
problems we will know the recovery stage is not yet perfect. The recovery
code produces a text log when the -d flag is supplied which produces about
10MB of text for every 1MB of journal but tells me exactly what happened
as diagnosing these problems can be quite difficult.
I also need to work on performance some although it tends to take only a
couple of seconds for each valid megabyte in the journal. I suspect the
final maximum journal size will be around 32MB which would limit fsck to
around a minute in the worst case of 1 million valid journal records.
Thanks,
Jeff
>
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
More information about the freebsd-current
mailing list