Re: [PATCH v14 062/138] mm/migrate: Add folio_migrate_copy()

From: Matthew Wilcox
Date: Thu Jul 22 2021 - 10:34:33 EST


On Thu, Jul 22, 2021 at 04:45:59PM +0300, Dmitry Osipenko wrote:
> 22.07.2021 15:29, Matthew Wilcox пишет:
> > On Thu, Jul 22, 2021 at 02:52:28PM +0300, Dmitry Osipenko wrote:
> ...
> > The obvious solution is just to change folio_copy():
> >
> > {
> > - unsigned i, nr = folio_nr_pages(src);
> > + unsigned i = 0;
> > + unsigned nr = folio_nr_pages(src);
> >
> > - for (i = 0; i < nr; i++) {
> > - cond_resched();
> > + for (;;) {
> > copy_highpage(folio_page(dst, i), folio_page(src, i));
> > + if (i++ == nr)
>
> This works with the ++i precedence change. Thanks!

Thanks for testing! (and fixing my bug)
I just pushed out an update to for-next with this fix.

> The fs/ and mm/ are mostly outside of my scope, hope you'll figure out
> the buffer-head case soon.

Thanks. We don't need it fixed yet, but probably in the next six months.