]> www.infradead.org Git - users/jedix/linux-maple.git/commit
ext4: only look at the bg_flags field if it is valid
authorTheodore Ts'o <tytso@mit.edu>
Thu, 14 Jun 2018 04:58:00 +0000 (00:58 -0400)
committerBrian Maly <brian.maly@oracle.com>
Tue, 5 Mar 2019 20:58:35 +0000 (15:58 -0500)
commitca706e54e1a2c884716d2954ce17ffa438a45af7
tree4c402d12a16abdfc08327e601423725f5effa251
parentf303df82ca9e32b198f76be2d98a2c6132fd3c6e
ext4: only look at the bg_flags field if it is valid

The bg_flags field in the block group descripts is only valid if the
uninit_bg or metadata_csum feature is enabled.  We were not
consistently looking at this field; fix this.

Also block group #0 must never have uninitialized allocation bitmaps,
or need to be zeroed, since that's where the root inode, and other
special inodes are set up.  Check for these conditions and mark the
file system as corrupted if they are detected.

This addresses CVE-2018-10876.

https://bugzilla.kernel.org/show_bug.cgi?id=199403

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@kernel.org
(cherry picked from commit 8844618d8aa7a9973e7b527d038a2a589665002c)

Orabug: 29316684
CVE: CVE-2018-10876.

Signed-off-by: John Donnelly <John.P.Donnelly@oracle.com>
Reviewed-by: Allen Pais <allen.pais@oracle.com>
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Conflicts:
fs/ext4/balloc.c
fs/ext4/ialloc.c

Signed-off-by: Brian Maly <brian.maly@oracle.com>
fs/ext4/balloc.c
fs/ext4/ialloc.c
fs/ext4/mballoc.c
fs/ext4/super.c