Florian-Ewald Mueller
ffcf71676d
md/bitmap: Fix bitmap chunk size overflow issues
...
commit 4555211190798b6b6fa2c37667d175bf67945c78 upstream.
- limit bitmap chunk size internal u64 variable to values not overflowing
the u32 bitmap superblock structure variable stored on persistent media
- assign bitmap chunk size internal u64 variable from unsigned values to
avoid possible sign extension artifacts when assigning from a s32 value
The bug has been there since at least kernel 4.0.
Steps to reproduce it:
1: mdadm -C /dev/mdx -l 1 --bitmap=internal --bitmap-chunk=256M -e 1.2
-n2 /dev/rnbd1 /dev/rnbd2
2 resize member device rnbd1 and rnbd2 to 8 TB
3 mdadm --grow /dev/mdx --size=max
The bitmap_chunksize will overflow without patch.
Cc: stable@vger.kernel.org
Signed-off-by: Florian-Ewald Mueller <florian-ewald.mueller@ionos.com >
Signed-off-by: Jack Wang <jinpu.wang@ionos.com >
Signed-off-by: Song Liu <song@kernel.org >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
2023-01-14 10:16:34 +01:00
..
2022-10-26 13:25:53 +02:00
2022-01-27 10:54:20 +01:00
2019-11-05 14:53:03 -05:00
2017-06-09 09:27:32 -06:00
2020-01-07 12:07:08 -05:00
2017-03-07 11:30:16 -05:00
2020-03-03 10:02:46 -05:00
2021-03-09 11:11:12 +01:00
2017-11-02 11:10:55 +01:00
2018-04-30 15:40:40 -04:00
2017-03-07 13:28:31 -05:00
2016-12-16 00:13:41 +02:00
2023-01-14 10:16:31 +01:00
2017-03-07 13:28:31 -05:00
2017-03-07 13:28:31 -05:00
2018-10-16 14:34:59 -04:00
2014-01-16 13:44:11 -05:00
2017-03-07 13:28:31 -05:00
2023-01-14 10:16:32 +01:00
2020-03-27 14:42:51 -04:00
2020-03-27 14:42:51 -04:00
2023-01-14 10:16:32 +01:00
2021-03-04 11:38:44 +01:00
2022-06-06 08:42:44 +02:00
2020-07-01 07:27:24 -06:00
2020-07-20 11:17:41 -04:00
2020-08-04 16:01:40 -04:00
2022-06-29 08:59:45 +02:00
2015-11-04 21:19:53 -08:00
2019-05-16 15:55:48 -07:00
2019-11-12 19:12:07 -07:00
2022-04-20 09:23:18 +02:00
2020-08-04 15:51:28 -04:00
2023-01-14 10:16:32 +01:00
2020-07-16 12:35:15 -07:00
2022-11-25 17:45:52 +01:00
2019-08-15 15:57:39 -04:00
2020-09-25 08:20:03 -06:00
2018-05-30 15:33:32 -06:00
2015-04-15 12:10:20 -04:00
2009-09-04 20:40:34 +01:00
2020-05-20 17:09:44 -04:00
2022-06-29 08:59:45 +02:00
2020-09-29 16:33:08 -04:00
2008-10-10 13:36:58 +01:00
2011-10-31 19:31:18 -04:00
2020-05-15 10:29:36 -04:00
2020-05-15 10:29:36 -04:00
2020-07-01 07:27:24 -06:00
2022-08-21 15:16:24 +02:00
2018-06-12 18:28:00 -07:00
2017-02-17 00:54:09 -05:00
2022-08-21 15:15:36 +02:00
2019-03-05 14:48:50 -05:00
2020-05-15 10:29:36 -04:00
2020-09-29 16:33:12 -04:00
2016-01-08 20:03:05 -05:00
2021-06-03 09:00:30 +02:00
2022-06-06 08:42:44 +02:00
2017-11-02 11:10:55 +01:00
2020-05-20 17:09:44 -04:00
2020-05-20 17:09:44 -04:00
2018-10-11 11:36:09 -04:00
2021-03-30 14:32:06 +02:00
2019-04-25 15:38:52 -04:00
2023-01-14 10:16:31 +01:00
2019-12-05 17:05:24 -05:00
2023-01-14 10:16:32 +01:00
2019-05-30 11:26:35 -07:00
2019-05-30 11:26:35 -07:00
2018-12-18 09:02:26 -05:00
2021-04-21 13:00:54 +02:00
2021-04-21 13:00:54 +02:00
2022-06-06 08:42:44 +02:00
2021-06-16 12:01:37 +02:00
2020-08-04 15:48:13 -04:00
2020-07-13 11:47:33 -04:00
2022-08-21 15:16:19 +02:00
2017-06-09 09:27:32 -06:00
2021-07-19 09:45:01 +02:00
2020-07-08 12:21:53 -04:00
2021-03-30 14:32:06 +02:00
2020-06-05 14:59:53 -04:00
2022-08-21 15:15:37 +02:00
2021-03-04 11:38:44 +01:00
2021-01-27 11:54:57 +01:00
2020-07-16 15:34:47 +02:00
2020-08-23 17:36:59 -05:00
2023-01-14 10:16:34 +01:00
2018-08-01 15:49:39 -07:00
2020-12-30 11:54:25 +01:00
2018-10-18 09:36:35 -07:00
2020-07-01 07:27:24 -06:00
2020-09-02 08:00:07 -06:00
2020-05-13 12:02:23 -07:00
2020-07-08 17:20:46 -06:00
2018-05-30 15:33:32 -06:00
2023-01-14 10:16:27 +01:00
2022-01-16 09:14:21 +01:00
2022-10-26 13:25:35 +02:00
2019-09-13 13:10:05 -07:00
2019-06-15 01:37:35 -06:00
2023-01-14 10:16:17 +01:00
2020-05-13 12:02:23 -07:00
2020-08-02 23:03:52 -07:00
2019-03-12 10:15:18 -07:00
2020-07-21 17:18:12 -07:00
2022-10-26 13:25:53 +02:00
2020-09-24 16:44:44 -07:00
2022-08-21 15:15:25 +02:00
2020-12-09 20:46:00 -08:00