* + fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch added to -mm tree
@ 2022-04-04 19:06 Andrew Morton
0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2022-04-04 19:06 UTC (permalink / raw)
To: mm-commits, hch, liushixin2, akpm
The patch titled
Subject: fs: sysv: check sbi->s_firstdatazone in complete_read_super
has been added to the -mm tree. Its filename is
fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch
This patch should soon appear at
https://ozlabs.org/~akpm/mmots/broken-out/fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch
and later at
https://ozlabs.org/~akpm/mmotm/broken-out/fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Liu Shixin <liushixin2@huawei.com>
Subject: fs: sysv: check sbi->s_firstdatazone in complete_read_super
sbi->s_firstinodezone is initialized to 2 and sbi->s_firstdatazone is read
from sbd. There's no guarantee that sbi->s_firstdatazone must bigger than
sbi->s_firstinodezone. If sbi->s_firstdatazone less than 2, the
filesystem can still be mounted unexpetly. At this point, sbi->s_ninodes
flip to very large value and this filesystem is broken. We can observe
this by executing 'df' command. When we execute, we will get an error
message:
"sysv_count_free_inodes: unable to read inode table"
Link: https://lkml.kernel.org/r/20220330104215.530223-1-liushixin2@huawei.com
Signed-off-by: Liu Shixin <liushixin2@huawei.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
fs/sysv/super.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/fs/sysv/super.c~fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super
+++ a/fs/sysv/super.c
@@ -312,7 +312,9 @@ static int complete_read_super(struct su
sbi->s_firstinodezone = 2;
flavour_setup[sbi->s_type](sbi, &sb->s_max_links);
-
+ if (sbi->s_firstdatazone < sbi->s_firstinodezone)
+ return 0;
+
sbi->s_ndatazones = sbi->s_nzones - sbi->s_firstdatazone;
sbi->s_inodes_per_block = bsize >> 6;
sbi->s_inodes_per_block_1 = (bsize >> 6)-1;
_
Patches currently in -mm which might be from liushixin2@huawei.com are
fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-04-04 21:41 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-04 19:06 + fs-sysv-check-sbi-s_firstdatazone-in-complete_read_super.patch added to -mm tree Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).