Re: [PATCH v3 1/8] mm: Remove special swap entry functions
From: Alistair Popple <apopple@nvidia.com>
Date: 2021-03-02 07:44:57
Also in:
dri-devel, linux-mm, lkml, nouveau
From: Alistair Popple <apopple@nvidia.com>
Date: 2021-03-02 07:44:57
Also in:
dri-devel, linux-mm, lkml, nouveau
On Tuesday, 2 March 2021 4:46:42 AM AEDT Jason Gunthorpe wrote:
I wish you could come up with a more descriptive word that special here What I understand is this is true when the swap_offset is a pfn?
Correct, and that points to a better name. Maybe is_pfn_swap_entry()? In which case adding a helper as Christoph suggested makes some more sense. Eg: pfn_swap_entry_to_page()
quoted
-static inline struct page *migration_entry_to_page(swp_entry_t entry) -{ - struct page *p = pfn_to_page(swp_offset(entry)); - /* - * Any use of migration entries may only occur while the - * corresponding page is locked - */ - BUG_ON(!PageLocked(compound_head(p))); - return p;And this constraint has been completely lost?
Yes, sorry I should have called that out. I didn't think loosing the check was a big deal, but I can add some checks to some of the call sites which would catch a page being incorrectly unlocked.
A comment in front of the is_special_entry explaining all the rule would help alot
Will add one.
Transformation looks fine otherwise
Thanks. - Alistair
Jason