]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ext4: fix mballoc breakage with 64k block size
authorChandan Rajendra <chandan@linux.vnet.ibm.com>
Tue, 15 Nov 2016 02:04:37 +0000 (21:04 -0500)
committerJiri Slaby <jslaby@suse.cz>
Thu, 26 Jan 2017 16:22:31 +0000 (17:22 +0100)
commit 69e43e8cc971a79dd1ee5d4343d8e63f82725123 upstream.

'border' variable is set to a value of 2 times the block size of the
underlying filesystem. With 64k block size, the resulting value won't
fit into a 16-bit variable. Hence this commit changes the data type of
'border' to 'unsigned int'.

Fixes: c9de560ded61f
Signed-off-by: Chandan Rajendra <chandan@linux.vnet.ibm.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Andreas Dilger <adilger@dilger.ca>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
fs/ext4/mballoc.c

index 96f4c72fbbd236a8b3747fdb979865fa092f2d1d..d775b7b02dd0a9d714a109c5a588e2dfb52a4c5c 100644 (file)
@@ -668,7 +668,7 @@ static void ext4_mb_mark_free_simple(struct super_block *sb,
        ext4_grpblk_t min;
        ext4_grpblk_t max;
        ext4_grpblk_t chunk;
-       unsigned short border;
+       unsigned int border;
 
        BUG_ON(len > EXT4_CLUSTERS_PER_GROUP(sb));