Alexei Naberezhnov
483cbbeddd
md/raid5: fix 'out of memory' during raid cache recovery
...
This fixes the case when md array assembly fails because of raid cache recovery
unable to allocate a stripe, despite attempts to replay stripes and increase
cache size. This happens because stripes released by r5c_recovery_replay_stripes
and raid5_set_cache_size don't become available for allocation immediately.
Released stripes first are placed on conf->released_stripes list and require
md thread to merge them on conf->inactive_list before they can be allocated.
Patch allows final allocation attempt during cache recovery to wait for
new stripes to become availabe for allocation.
Cc: linux-raid@vger.kernel.org
Cc: Shaohua Li <shli@kernel.org >
Cc: linux-stable <stable@vger.kernel.org > # 4.10+
Fixes: b4c625c673
("md/r5cache: r5cache recovery: part 1")
Signed-off-by: Alexei Naberezhnov <anaberezhnov@fb.com >
Signed-off-by: Song Liu <songliubraving@fb.com >
2019-01-28 11:44:40 -08:00
..
2018-12-13 08:15:54 -07:00
2018-08-01 15:49:38 -07:00
2018-06-08 11:53:14 -04:00
2017-06-09 09:27:32 -06:00
2018-06-08 11:53:14 -04:00
2017-03-07 11:30:16 -05:00
2017-08-23 12:49:55 -06:00
2018-12-28 16:55:46 -08: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
2018-12-07 16:04:09 -05: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
2017-03-07 13:28:31 -05:00
2018-10-09 13:53:03 -04:00
2018-12-19 09:13:34 -07:00
2019-01-10 15:17:33 -05:00
2018-12-18 09:02:26 -05:00
2018-04-03 15:04:10 -04:00
2015-11-04 21:19:53 -08:00
2016-01-08 20:03:05 -05:00
2018-12-18 09:02:27 -05:00
2018-12-28 16:55:46 -08:00
2018-06-05 08:47:43 -06:00
2018-10-18 11:54:07 -04:00
2018-12-18 09:02:26 -05:00
2018-12-18 09:02:26 -05:00
2018-05-30 15:33:32 -06:00
2015-04-15 12:10:20 -04:00
2018-05-22 23:18:31 -07:00
2016-11-01 09:43:26 -06:00
2018-12-18 09:02:25 -05:00
2016-02-22 22:34:42 -05:00
2018-01-29 13:44:58 -05:00
2018-12-18 09:02:26 -05:00
2018-12-18 13:48:35 -05:00
2018-06-12 18:28:00 -07:00
2017-02-17 00:54:09 -05:00
2018-12-18 09:02:27 -05:00
2018-10-11 11:36:09 -04:00
2018-01-29 13:44:58 -05:00
2018-04-03 15:04:23 -04:00
2016-01-08 20:03:05 -05:00
2018-12-18 09:02:26 -05:00
2018-12-28 12:11:47 -08:00
2017-11-02 11:10:55 +01:00
2018-05-22 23:18:31 -07:00
2018-06-12 16:19:22 -07:00
2018-10-11 11:36:09 -04:00
2018-12-18 14:23:41 -05:00
2018-04-03 15:04:15 -04:00
2019-01-15 16:10:41 -05:00
2019-01-15 16:10:41 -05:00
2019-01-15 16:10:41 -05:00
2018-12-18 09:02:26 -05:00
2018-09-14 14:08:52 +08:00
2018-05-30 15:33:32 -06:00
2018-12-18 09:02:27 -05:00
2018-04-03 15:04:29 -04:00
2018-12-18 09:02:26 -05:00
2017-06-09 09:27:32 -06:00
2018-10-18 15:17:03 -04:00
2018-07-31 17:33:21 -04:00
2018-12-07 16:04:31 -05:00
2017-06-19 11:05:20 -04:00
2019-01-22 13:41:48 -05:00
2018-10-11 11:36:09 -04:00
2018-10-11 11:36:09 -04:00
2018-06-08 11:59:51 -04:00
2018-10-10 11:03:34 -07:00
2018-08-01 15:49:39 -07:00
2018-10-18 09:41:25 -07:00
2018-10-18 09:36:35 -07:00
2018-05-30 15:33:32 -06:00
2018-05-30 15:33:32 -06:00
2017-11-14 16:07:26 -08:00
2018-06-12 16:19:22 -07:00
2018-05-30 15:33:32 -06:00
2019-01-14 06:31:56 -07:00
2018-10-18 09:34:56 -07:00
2018-12-07 22:26:37 -07:00
2017-11-02 11:10:55 +01:00
2017-11-02 11:10:55 +01:00
2018-10-14 17:05:07 -07:00
2018-05-30 15:33:32 -06:00
2019-01-28 11:44:40 -08:00
2018-08-31 17:38:09 -07:00
2018-05-30 15:33:32 -06:00
2019-01-28 11:44:40 -08:00
2018-06-09 12:01:36 -07:00
2018-12-20 08:53:24 -08:00
2018-05-30 15:33:32 -06:00