summaryrefslogtreecommitdiff
path: root/drivers/md/md.c
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2017-03-09 10:03:22 -0800
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2017-03-09 10:03:22 -0800
commit7b179e251ba089898b4e8e6d065be8ae2c0a4a3e (patch)
treed8c5fe6a2d5330da4d7e53e8b85c1540e1fa404a /drivers/md/md.c
parenta01cd17000a4eb35060666f181f1d46832b59030 (diff)
parentfabeb165afd52a3fb05b9b68e5a3550609b8e157 (diff)
Merge branch 'ib/4.10-sparse-keymap-managed' into next
This brings in version of sparse keymap code that uses managed memory.
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r--drivers/md/md.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 82821ee0d57f..01175dac0db6 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -5291,6 +5291,11 @@ int md_run(struct mddev *mddev)
if (start_readonly && mddev->ro == 0)
mddev->ro = 2; /* read-only, but switch on first write */
+ /*
+ * NOTE: some pers->run(), for example r5l_recovery_log(), wakes
+ * up mddev->thread. It is important to initialize critical
+ * resources for mddev->thread BEFORE calling pers->run().
+ */
err = pers->run(mddev);
if (err)
pr_warn("md: pers->run() failed ...\n");