Re: [PATCH v3 1/8] mm: Remove special swap entry functions
From: Jason Gunthorpe <jgg@nvidia.com>
Date: 2021-03-01 23:05:02
Also in:
dri-devel, linux-mm, lkml, nouveau
From: Jason Gunthorpe <jgg@nvidia.com>
Date: 2021-03-01 23:05:02
Also in:
dri-devel, linux-mm, lkml, nouveau
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