[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240522061204.117421-1-libang.li@antgroup.com>
Date: Wed, 22 May 2024 14:12:01 +0800
From: "Bang Li" <libang.li@...group.com>
To: akpm@...ux-foundation.org,
chenhuacai@...nel.org,
tsbogend@...ha.franken.de,
paul.walmsley@...ive.com,
palmer@...belt.com,
chris@...kel.net,
jcmvbkbc@...il.com
Cc: <linux-kernel@...r.kernel.org>,
<linux-mm@...ck.org>,
<loongarch@...ts.linux.dev>,
<linux-riscv@...ts.infradead.org>,
<david@...hat.com>,
<ryan.roberts@....com>,
<ioworker0@...il.com>,
<libang.linux@...il.com>,
"Bang Li" <libang.li@...group.com>
Subject: [PATCH v4 0/3] Add update_mmu_tlb_range() to simplify code
This series of commits mainly adds the update_mmu_tlb_range() to
batch update tlb in an address range and implement update_mmu_tlb()
using update_mmu_tlb_range().
After the commit 19eaf44954df ("mm: thp: support allocation of anonymous
multi-size THP"), We may need to batch update tlb of a certain address
range by calling update_mmu_tlb() in a loop. Using the
update_mmu_tlb_range(), we can simplify the code and possibly reduce the
execution of some unnecessary code in some architectures.
Thanks,
Bang
Changes since v3 [3]:
- Add acked-by from David Hildenbrand (patch #2 and patch #3) - thanks!
- Add reviewed-by from Lance Yang (patch #3) - thanks!
- Move the general architecture update_mmu_tlb_range() from patch #2 to
patch #1 (per David)
- Update patch #2 commit log (per David)
Changes since v2 [2]:
- Use generic architecture to implement update_mmu_tlb() (per Ryan)
Changes since v1 [1]:
- Add __HAVE_ARCH_UPDATE_MMU_TLB_RANGE macro (per Lance Yang)
[1] https://lore.kernel.org/linux-mm/20240429103346.59115-1-libang.li@antgroup.com/
[2] https://lore.kernel.org/linux-mm/20240506155120.83105-1-libang.li@antgroup.com/
[3] https://lore.kernel.org/linux-mm/20240518074914.52170-1-libang.li@antgroup.com/
Bang Li (3):
mm: Add update_mmu_tlb_range()
mm: implement update_mmu_tlb() using update_mmu_tlb_range()
mm: Use update_mmu_tlb_range() to simplify code
arch/loongarch/include/asm/pgtable.h | 4 ++--
arch/mips/include/asm/pgtable.h | 4 ++--
arch/riscv/include/asm/pgtable.h | 4 ++--
arch/xtensa/include/asm/pgtable.h | 6 +++---
arch/xtensa/mm/tlb.c | 6 +++---
include/linux/pgtable.h | 11 ++++++++---
mm/memory.c | 4 +---
7 files changed, 21 insertions(+), 18 deletions(-)
--
2.19.1.6.gb485710b
Powered by blists - more mailing lists