Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f664f1f9 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds
Browse files

revert "ufs: Fix mount check in ufs_fill_super()"



Evgeniy said:

  I wonder on what type of UFS do you test this patch?  NetBSD and FreeBSD
  do not use "fs_state", they use "fs_clean" flag, only Solaris does check
  like this: fs_state + fs_time == FSOK.

  That's why parentheses was like that.

  At now with linux-2.6.24-rc1-git1, I get: fs need fsck, but NetBSD's fsck
  says that's all ok.

  I suggest revert this patch.

Cc: Evgeniy Dushistov <dushistov@mail.ru>
Cc: Satyam Sharma <satyam.sharma@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 487e9bf2
Loading
Loading
Loading
Loading
+7 −8
Original line number Diff line number Diff line
@@ -933,20 +933,19 @@ static int ufs_fill_super(struct super_block *sb, void *data, int silent)
		goto again;
	}

	/* Set sbi->s_flags here, used by ufs_get_fs_state() below */
	sbi->s_flags = flags;
	sbi->s_flags = flags;/*after that line some functions use s_flags*/
	ufs_print_super_stuff(sb, usb1, usb2, usb3);

	/*
	 * Check, if file system was correctly unmounted.
	 * If not, make it read only.
	 */
	if ((((flags & UFS_ST_MASK) == UFS_ST_44BSD)	||
	if (((flags & UFS_ST_MASK) == UFS_ST_44BSD) ||
	  ((flags & UFS_ST_MASK) == UFS_ST_OLD) ||
	     ((flags & UFS_ST_MASK) == UFS_ST_SUN)	||
	     ((flags & UFS_ST_MASK) == UFS_ST_SUNOS)	||
	     ((flags & UFS_ST_MASK) == UFS_ST_SUNx86))	&&
	    (ufs_get_fs_state(sb, usb1, usb3) == (UFS_FSOK - fs32_to_cpu(sb, usb1->fs_time)))) {
	  (((flags & UFS_ST_MASK) == UFS_ST_SUN ||
	    (flags & UFS_ST_MASK) == UFS_ST_SUNOS ||
	  (flags & UFS_ST_MASK) == UFS_ST_SUNx86) &&
	  (ufs_get_fs_state(sb, usb1, usb3) == (UFS_FSOK - fs32_to_cpu(sb, usb1->fs_time))))) {
		switch(usb1->fs_clean) {
		case UFS_FSCLEAN:
			UFSD("fs is clean\n");