On Mon, Nov 02, 2020 at 01:21:39PM +0800, Rong Chen wrote: > we compared the tmpfs.ops_per_sec: (363 / 103.02) between this commit and > parent commit.
Thanks! I see about a 50% hit on my system, and this patch restores the performance. Can you verify this works for you? diff --git a/mm/madvise.c b/mm/madvise.c index 9b065d412e5f..e602333f8c0d 100644 --- a/mm/madvise.c +++ b/mm/madvise.c @@ -225,7 +225,7 @@ static void force_shm_swapin_readahead(struct vm_area_struct *vma, struct address_space *mapping) { XA_STATE(xas, &mapping->i_pages, linear_page_index(vma, start)); - pgoff_t end_index = end / PAGE_SIZE; + pgoff_t end_index = linear_page_index(vma, end + PAGE_SIZE - 1); struct page *page; rcu_read_lock();