Commit f635237a authored by Cai Huoqing's avatar Cai Huoqing Committed by Mike Snitzer

dm writecache: Make use of the helper macro kthread_run()

Replace kthread_create/wake_up_process() with kthread_run()
to simplify the code.
Signed-off-by: default avatarCai Huoqing <caihuoqing@baidu.com>
Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
parent a5217c11
...@@ -2264,14 +2264,13 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv) ...@@ -2264,14 +2264,13 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv)
raw_spin_lock_init(&wc->endio_list_lock); raw_spin_lock_init(&wc->endio_list_lock);
INIT_LIST_HEAD(&wc->endio_list); INIT_LIST_HEAD(&wc->endio_list);
wc->endio_thread = kthread_create(writecache_endio_thread, wc, "writecache_endio"); wc->endio_thread = kthread_run(writecache_endio_thread, wc, "writecache_endio");
if (IS_ERR(wc->endio_thread)) { if (IS_ERR(wc->endio_thread)) {
r = PTR_ERR(wc->endio_thread); r = PTR_ERR(wc->endio_thread);
wc->endio_thread = NULL; wc->endio_thread = NULL;
ti->error = "Couldn't spawn endio thread"; ti->error = "Couldn't spawn endio thread";
goto bad; goto bad;
} }
wake_up_process(wc->endio_thread);
/* /*
* Parse the mode (pmem or ssd) * Parse the mode (pmem or ssd)
...@@ -2493,14 +2492,13 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv) ...@@ -2493,14 +2492,13 @@ static int writecache_ctr(struct dm_target *ti, unsigned argc, char **argv)
wc->memory_map_size -= (uint64_t)wc->start_sector << SECTOR_SHIFT; wc->memory_map_size -= (uint64_t)wc->start_sector << SECTOR_SHIFT;
bio_list_init(&wc->flush_list); bio_list_init(&wc->flush_list);
wc->flush_thread = kthread_create(writecache_flush_thread, wc, "dm_writecache_flush"); wc->flush_thread = kthread_run(writecache_flush_thread, wc, "dm_writecache_flush");
if (IS_ERR(wc->flush_thread)) { if (IS_ERR(wc->flush_thread)) {
r = PTR_ERR(wc->flush_thread); r = PTR_ERR(wc->flush_thread);
wc->flush_thread = NULL; wc->flush_thread = NULL;
ti->error = "Couldn't spawn flush thread"; ti->error = "Couldn't spawn flush thread";
goto bad; goto bad;
} }
wake_up_process(wc->flush_thread);
r = calculate_memory_size(wc->memory_map_size, wc->block_size, r = calculate_memory_size(wc->memory_map_size, wc->block_size,
&n_blocks, &n_metadata_blocks); &n_blocks, &n_metadata_blocks);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment