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: Evgeniy Dushistov <dushistov@mail.ru> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
4942de4a0e
commit
f9b7cba1b8
1 changed files with 1 additions and 3 deletions
|
@ -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)
|
||||||
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))
|
||||||
|
|
Loading…
Reference in a new issue