mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
lightnvm: pblk: remove pblk_gc_stop
pblk_gc_stop just sets pblk->gc->gc_active to zero, ignoring the flush parameter. This is plain confusing, so remove the function and set the gc active flag at the call points instead. Signed-off-by: Hans Holmberg <hans.holmberg@cnexlabs.com> Signed-off-by: Javier González <javier@cnexlabs.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
b36bbf9d4f
commit
aed49e195a
@ -526,22 +526,12 @@ void pblk_gc_should_start(struct pblk *pblk)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* If flush_wq == 1 then no lock should be held by the caller since
|
||||
* flush_workqueue can sleep
|
||||
*/
|
||||
static void pblk_gc_stop(struct pblk *pblk, int flush_wq)
|
||||
{
|
||||
pblk->gc.gc_active = 0;
|
||||
pr_debug("pblk: gc stop\n");
|
||||
}
|
||||
|
||||
void pblk_gc_should_stop(struct pblk *pblk)
|
||||
{
|
||||
struct pblk_gc *gc = &pblk->gc;
|
||||
|
||||
if (gc->gc_active && !gc->gc_forced)
|
||||
pblk_gc_stop(pblk, 0);
|
||||
gc->gc_active = 0;
|
||||
}
|
||||
|
||||
void pblk_gc_should_kick(struct pblk *pblk)
|
||||
@ -667,7 +657,7 @@ void pblk_gc_exit(struct pblk *pblk)
|
||||
|
||||
gc->gc_enabled = 0;
|
||||
del_timer_sync(&gc->gc_timer);
|
||||
pblk_gc_stop(pblk, 1);
|
||||
gc->gc_active = 0;
|
||||
|
||||
if (gc->gc_ts)
|
||||
kthread_stop(gc->gc_ts);
|
||||
|
Loading…
Reference in New Issue
Block a user