Commit f9b7cba1 authored by Evgeniy Dushistov's avatar Evgeniy Dushistov Committed by Linus Torvalds

ufs: fix sun state

Different types of ufs hold state in different places, to hide complexity
of this, there is ufs_get_fs_state, it returns state according to
"UFS_SB(sb)->s_flags", but during mount ufs_get_fs_state is called, before
setting s_flags, this cause message for ufs types like sun ufs: "fs need
fsck", and remount in readonly state.
Signed-off-by: default avatarEvgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 4942de4a
...@@ -894,7 +894,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent) ...@@ -894,7 +894,7 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
goto again; goto again;
} }
sbi->s_flags = flags;/*after that line some functions use s_flags*/
ufs_print_super_stuff(sb, usb1, usb2, usb3); ufs_print_super_stuff(sb, usb1, usb2, usb3);
/* /*
...@@ -1025,8 +1025,6 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent) ...@@ -1025,8 +1025,6 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
UFS_MOUNT_UFSTYPE_44BSD) UFS_MOUNT_UFSTYPE_44BSD)
uspi->s_maxsymlinklen = uspi->s_maxsymlinklen =
fs32_to_cpu(sb, usb3->fs_un2.fs_44.fs_maxsymlinklen); fs32_to_cpu(sb, usb3->fs_un2.fs_44.fs_maxsymlinklen);
sbi->s_flags = flags;
inode = iget(sb, UFS_ROOTINO); inode = iget(sb, UFS_ROOTINO);
if (!inode || is_bad_inode(inode)) if (!inode || is_bad_inode(inode))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment