Revision 2d7c820e56ce83b23daee9eb5343730fb309418e authored by Hidehiro Kawai on 22 October 2008, 21:15:01 UTC, committed by Linus Torvalds on 23 October 2008, 15:55:01 UTC
If the journal has aborted due to a checkpointing failure, we have to
keep the contents of the journal space.  Otherwise, the filesystem will
lose uncheckpointed metadata completely and become inconsistent.  To
avoid this, we need to keep needs_recovery flag if checkpoint has
failed.

With this patch, ext3_put_super() detects a checkpointing failure from
the return value of journal_destroy(), then it invokes ext3_abort() to
make the filesystem read only and keep needs_recovery flag.  Errors
from journal_flush() are also handled by this patch in some places.

Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
Cc: Jan Kara <jack@ucw.cz>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: <linux-ext4@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 4afe978
Raw File
Kconfig
# samples/Kconfig

menuconfig SAMPLES
	bool "Sample kernel code"
	help
	  You can build and test sample kernel code here.

if SAMPLES

config SAMPLE_MARKERS
	tristate "Build markers examples -- loadable modules only"
	depends on MARKERS && m
	help
	  This build markers example modules.

config SAMPLE_TRACEPOINTS
	tristate "Build tracepoints examples -- loadable modules only"
	depends on TRACEPOINTS && m
	help
	  This build tracepoints example modules.

config SAMPLE_KOBJECT
	tristate "Build kobject examples"
	help
	  This config option will allow you to build a number of
	  different kobject sample modules showing how to use kobjects,
	  ksets, and ktypes properly.

	  If in doubt, say "N" here.

config SAMPLE_KPROBES
	tristate "Build kprobes examples -- loadable modules only"
	depends on KPROBES && m
	help
	  This build several kprobes example modules.

config SAMPLE_KRETPROBES
	tristate "Build kretprobes example -- loadable modules only"
	default m
	depends on SAMPLE_KPROBES && KRETPROBES

endif # SAMPLES

back to top