diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-10-06 08:30:03 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-10-06 08:30:03 -0700 |
commit | a7c56ebac1bce799b583230595b4de9ccb8162d0 (patch) | |
tree | 000aa9f3f7aef65ecd918c012c1f9b86445cb135 /drivers/md/raid10.c | |
parent | 538d2882213ef4f076108f3edda2c39a584c4c2b (diff) | |
parent | 01f96c0a9922cd9919baf9d16febdf7016177a12 (diff) | |
download | kernel_replicant_linux-a7c56ebac1bce799b583230595b4de9ccb8162d0.tar.gz kernel_replicant_linux-a7c56ebac1bce799b583230595b4de9ccb8162d0.tar.bz2 kernel_replicant_linux-a7c56ebac1bce799b583230595b4de9ccb8162d0.zip |
Merge branch 'for-linus' of git://neil.brown.name/md
* 'for-linus' of git://neil.brown.name/md:
md: Avoid waking up a thread after it has been freed.
Diffstat (limited to 'drivers/md/raid10.c')
-rw-r--r-- | drivers/md/raid10.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index d7a8468ddeab..0cd9672cf9cb 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c @@ -2955,7 +2955,7 @@ static int run(mddev_t *mddev) return 0; out_free_conf: - md_unregister_thread(mddev->thread); + md_unregister_thread(&mddev->thread); if (conf->r10bio_pool) mempool_destroy(conf->r10bio_pool); safe_put_page(conf->tmppage); @@ -2973,8 +2973,7 @@ static int stop(mddev_t *mddev) raise_barrier(conf, 0); lower_barrier(conf); - md_unregister_thread(mddev->thread); - mddev->thread = NULL; + md_unregister_thread(&mddev->thread); blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/ if (conf->r10bio_pool) mempool_destroy(conf->r10bio_pool); |