]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
md/raid5: don't record new size if resize_stripes fails.
authorNeilBrown <neilb@suse.de>
Fri, 8 May 2015 08:19:34 +0000 (18:19 +1000)
committerJiri Slaby <jslaby@suse.cz>
Wed, 3 Jun 2015 09:33:13 +0000 (11:33 +0200)
commit9ad2da11417ffe92aa2daba75c5d13b2481aa6c8
tree386294ed8b213aac35098754570039efb6eeec16
parentbca746037a308e2fbe742248d34635f07be2bfd9
md/raid5: don't record new size if resize_stripes fails.

commit 6e9eac2dcee5e19f125967dd2be3e36558c42fff upstream.

If any memory allocation in resize_stripes fails we will return
-ENOMEM, but in some cases we update conf->pool_size anyway.

This means that if we try again, the allocations will be assumed
to be larger than they are, and badness results.

So only update pool_size if there is no error.

This bug was introduced in 2.6.17 and the patch is suitable for
-stable.

Fixes: ad01c9e3752f ("[PATCH] md: Allow stripes to be expanded in preparation for expanding an array")
Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
drivers/md/raid5.c