aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/lightnvm/pblk-init.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/lightnvm/pblk-init.c')
-rw-r--r--drivers/lightnvm/pblk-init.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/drivers/lightnvm/pblk-init.c b/drivers/lightnvm/pblk-init.c
index 533f6908e238..7e11926830db 100644
--- a/drivers/lightnvm/pblk-init.c
+++ b/drivers/lightnvm/pblk-init.c
@@ -883,15 +883,19 @@ fail:
883 883
884static int pblk_writer_init(struct pblk *pblk) 884static int pblk_writer_init(struct pblk *pblk)
885{ 885{
886 timer_setup(&pblk->wtimer, pblk_write_timer_fn, 0);
887 mod_timer(&pblk->wtimer, jiffies + msecs_to_jiffies(100));
888
889 pblk->writer_ts = kthread_create(pblk_write_ts, pblk, "pblk-writer-t"); 886 pblk->writer_ts = kthread_create(pblk_write_ts, pblk, "pblk-writer-t");
890 if (IS_ERR(pblk->writer_ts)) { 887 if (IS_ERR(pblk->writer_ts)) {
891 pr_err("pblk: could not allocate writer kthread\n"); 888 int err = PTR_ERR(pblk->writer_ts);
892 return PTR_ERR(pblk->writer_ts); 889
890 if (err != -EINTR)
891 pr_err("pblk: could not allocate writer kthread (%d)\n",
892 err);
893 return err;
893 } 894 }
894 895
896 timer_setup(&pblk->wtimer, pblk_write_timer_fn, 0);
897 mod_timer(&pblk->wtimer, jiffies + msecs_to_jiffies(100));
898
895 return 0; 899 return 0;
896} 900}
897 901
@@ -1042,7 +1046,8 @@ static void *pblk_init(struct nvm_tgt_dev *dev, struct gendisk *tdisk,
1042 1046
1043 ret = pblk_writer_init(pblk); 1047 ret = pblk_writer_init(pblk);
1044 if (ret) { 1048 if (ret) {
1045 pr_err("pblk: could not initialize write thread\n"); 1049 if (ret != -EINTR)
1050 pr_err("pblk: could not initialize write thread\n");
1046 goto fail_free_lines; 1051 goto fail_free_lines;
1047 } 1052 }
1048 1053