From: Li Nan Date: Mon, 22 May 2023 07:25:34 +0000 (+0800) Subject: md/raid10: fix wrong setting of max_corr_read_errors X-Git-Tag: v5.4.251~297 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=31c805a44b7569ca1017a4714385182d98bba212;p=thirdparty%2Fkernel%2Fstable.git md/raid10: fix wrong setting of max_corr_read_errors [ Upstream commit f8b20a405428803bd9881881d8242c9d72c6b2b2 ] There is no input check when echo md/max_read_errors and overflow might occur. Add check of input number. Fixes: 1e50915fe0bb ("raid: improve MD/raid10 handling of correctable read errors.") Signed-off-by: Li Nan Reviewed-by: Yu Kuai Signed-off-by: Song Liu Link: https://lore.kernel.org/r/20230522072535.1523740-3-linan666@huaweicloud.com Signed-off-by: Sasha Levin --- diff --git a/drivers/md/md.c b/drivers/md/md.c index bae264aae3cd0..0765712513e7d 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -4441,6 +4441,8 @@ max_corrected_read_errors_store(struct mddev *mddev, const char *buf, size_t len rv = kstrtouint(buf, 10, &n); if (rv < 0) return rv; + if (n > INT_MAX) + return -EINVAL; atomic_set(&mddev->max_corr_read_errors, n); return len; }