]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ext4: fix overflow when updating superblock backups after resize
authorJan Kara <jack@suse.cz>
Thu, 30 Oct 2014 14:52:57 +0000 (10:52 -0400)
committerJiri Slaby <jslaby@suse.cz>
Thu, 13 Nov 2014 18:02:36 +0000 (19:02 +0100)
commit6eac6ac49db2487a748258be990a34cff73dc792
tree8c375c45319640a7f88c7a432c4f68dc929360fa
parent9154dd792c9820b25d51e67e6e8e7ae277b64250
ext4: fix overflow when updating superblock backups after resize

commit 9378c6768e4fca48971e7b6a9075bc006eda981d upstream.

When there are no meta block groups update_backups() will compute the
backup block in 32-bit arithmetics thus possibly overflowing the block
number and corrupting the filesystem. OTOH filesystems without meta
block groups larger than 16 TB should be rare. Fix the problem by doing
the counting in 64-bit arithmetics.

Coverity-id: 741252
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
fs/ext4/resize.c