On Fri, 3 Mar 2023 16:43:43 +0800 Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote: > Omit one line by unified folio_put(), and make code more clear. > > Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > --- > mm/damon/paddr.c | 9 ++++----- > 1 file changed, 4 insertions(+), 5 deletions(-) > > diff --git a/mm/damon/paddr.c b/mm/damon/paddr.c > index 2ef9db0189ca..6930ebf3667c 100644 > --- a/mm/damon/paddr.c > +++ b/mm/damon/paddr.c > @@ -266,17 +266,16 @@ static inline unsigned long damon_pa_mark_accessed_or_deactivate( > if (!folio) > continue; > > - if (damos_pa_filter_out(s, folio)) { > - folio_put(folio); > - continue; > - } > + if (damos_pa_filter_out(s, folio)) > + goto put_folio; > > if (mark_accessed) > folio_mark_accessed(folio); > else > folio_deactivate(folio); > - folio_put(folio); > applied += folio_nr_pages(folio); > +put_folio: > + folio_put(folio); I think this change is ok, but shouldn't the 'folio_put()' have called before 'folio_nr_pages()' anyway? If so, could we make the change as a separate fix first, and then make this change, so that it can be easily applied to relevant stable kernels? Thanks, SJ > } > return applied * PAGE_SIZE; > } > -- > 2.35.3 > >