> On 27 Feb 2019, at 18.14, Igor Konopko <igor.j.konopko@xxxxxxxxx> wrote: > > In case when there is no enough sector available in rwb > and there is flush request send we should kick write thread > which is not a case in current implementation. This patch > fixes that issue. > > Signed-off-by: Igor Konopko <igor.j.konopko@xxxxxxxxx> > --- > drivers/lightnvm/pblk-core.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/lightnvm/pblk-core.c b/drivers/lightnvm/pblk-core.c > index 78b1eea4ab67..f48f2e77f770 100644 > --- a/drivers/lightnvm/pblk-core.c > +++ b/drivers/lightnvm/pblk-core.c > @@ -375,8 +375,9 @@ void pblk_write_timer_fn(struct timer_list *t) > void pblk_write_should_kick(struct pblk *pblk) > { > unsigned int secs_avail = pblk_rb_read_count(&pblk->rwb); > + unsigned int secs_to_flush = pblk_rb_flush_point_count(&pblk->rwb); > > - if (secs_avail >= pblk->min_write_pgs_data) > + if (secs_avail >= pblk->min_write_pgs_data || secs_to_flush) > pblk_write_kick(pblk); > } > > -- > 2.17.1 We already kick the write thread in case of REQ_PREFLUSH in pblk_write_cache(), so no need to kick again. Javier
Attachment:
signature.asc
Description: Message signed with OpenPGP