Re: [PATCH 1/4] rmap: introduce rmap_walk_locked()

From: Kirill A. Shutemov
Date: Wed Feb 03 2016 - 17:45:25 EST


On Wed, Feb 03, 2016 at 02:40:19PM -0800, Andrew Morton wrote:
> On Wed, 3 Feb 2016 18:14:16 +0300 "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx> wrote:
>
> > rmap_walk_locked() is the same as rmap_walk(), but caller takes care
> > about relevant rmap lock. It only supports anonymous pages for now.
> >
> > It's preparation to switch THP splitting from custom rmap walk in
> > freeze_page()/unfreeze_page() to generic one.
> >
> > ...
> >
> > +/* Like rmap_walk, but caller holds relevant rmap lock */
> > +int rmap_walk_locked(struct page *page, struct rmap_walk_control *rwc)
> > +{
> > + /* only for anon pages for now */
> > + VM_BUG_ON_PAGE(!PageAnon(page) || PageKsm(page), page);
> > + return rmap_walk_anon(page, rwc, true);
> > +}
>
> Should be rmap_walk_anon_locked()?

I leave interface open for further extension for file mappings, once it
will be needed. Interface is mirroring plain rmap_walk()

If you prefer to rename the function, I can do it too.

--
Kirill A. Shutemov