summaryrefslogtreecommitdiffstats
path: root/fs/ext3
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-10-04 18:14:01 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2012-10-04 18:14:01 +0200
commite1cc485262846dcad931bf85ee655cbbb815bfe6 (patch)
tree5b3ae42ce41f9fe0149ad49e9811ac8f8e8b2016 /fs/ext3
parentMerge tag 'remoteproc-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/g... (diff)
parentjbd: Fix assertion failure in commit code due to lacking transaction credits (diff)
downloadlinux-e1cc485262846dcad931bf85ee655cbbb815bfe6.tar.xz
linux-e1cc485262846dcad931bf85ee655cbbb815bfe6.zip
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
Pull ext3 & udf fixes from Jan Kara: "Shortlog pretty much says it all. The interesting bits are UDF support for direct IO and ext3 fix for a long standing oops in data=journal mode." * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs: jbd: Fix assertion failure in commit code due to lacking transaction credits UDF: Add support for O_DIRECT ext3: Replace 0 with NULL for pointer in super.c file udf: add writepages support for udf ext3: don't clear orphan list on ro mount with errors reiserfs: Make reiserfs_xattr_handlers static
Diffstat (limited to 'fs/ext3')
-rw-r--r--fs/ext3/super.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/ext3/super.c b/fs/ext3/super.c
index bd29894c8fbc..17ae5c83d234 100644
--- a/fs/ext3/super.c
+++ b/fs/ext3/super.c
@@ -980,7 +980,7 @@ static int parse_options (char *options, struct super_block *sb,
* Initialize args struct so we know whether arg was
* found; some options take optional arguments.
*/
- args[0].to = args[0].from = 0;
+ args[0].to = args[0].from = NULL;
token = match_token(p, tokens, args);
switch (token) {
case Opt_bsd_df:
@@ -1484,10 +1484,12 @@ static void ext3_orphan_cleanup (struct super_block * sb,
}
if (EXT3_SB(sb)->s_mount_state & EXT3_ERROR_FS) {
- if (es->s_last_orphan)
+ /* don't clear list on RO mount w/ errors */
+ if (es->s_last_orphan && !(s_flags & MS_RDONLY)) {
jbd_debug(1, "Errors on filesystem, "
"clearing orphan list.\n");
- es->s_last_orphan = 0;
+ es->s_last_orphan = 0;
+ }
jbd_debug(1, "Skipping orphan recovery on fs with errors.\n");
return;
}