On Fri, Feb 26, 2021 at 06:18:25PM +1100, Alistair Popple wrote:
Remove the migration and device private entry_to_page() and
entry_to_pfn() inline functions and instead open code them directly.
This results in shorter code which is easier to understand.
Signed-off-by: Alistair Popple <apopple@nvidia.com>
---
arch/s390/mm/pgtable.c | 2 +-
fs/proc/task_mmu.c | 23 +++++++------------
include/linux/swap.h | 4 ++--
include/linux/swapops.h | 51 ++++-------------------------------------
mm/hmm.c | 5 ++--
mm/memcontrol.c | 2 +-
mm/memory.c | 10 ++++----
mm/migrate.c | 6 ++---
mm/page_vma_mapped.c | 6 ++---
9 files changed, 30 insertions(+), 79 deletions(-)
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?
-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?
A comment in front of the is_special_entry explaining all the rule
would help alot
Transformation looks fine otherwise
Jason