Re: [PATCH v3 0/8] perf: Support multiple system call tables in the build

2025-02-24 Thread Namhyung Kim
On Mon, Feb 24, 2025 at 08:37:01PM -0800, Ian Rogers wrote: > On Mon, Feb 24, 2025 at 7:05 PM Namhyung Kim wrote: > > > > On Wed, Feb 19, 2025 at 10:56:49AM -0800, Ian Rogers wrote: > > > This work builds on the clean up of system call tables and removal of > > > libaudit by Charlie Jenkins . > >

Re: [PATCH v3 0/8] perf: Support multiple system call tables in the build

2025-02-24 Thread Ian Rogers
On Mon, Feb 24, 2025 at 7:05 PM Namhyung Kim wrote: > > On Wed, Feb 19, 2025 at 10:56:49AM -0800, Ian Rogers wrote: > > This work builds on the clean up of system call tables and removal of > > libaudit by Charlie Jenkins . > > > > The system call table in perf trace is used to map system call num

Re: [PATCH v3 0/8] perf: Support multiple system call tables in the build

2025-02-24 Thread Ian Rogers
On Mon, Feb 24, 2025 at 7:20 PM Namhyung Kim wrote: > > On Wed, Feb 19, 2025 at 10:56:49AM -0800, Ian Rogers wrote: > > This work builds on the clean up of system call tables and removal of > > libaudit by Charlie Jenkins . > > > > The system call table in perf trace is used to map system call num

[PATCH v2 6/6] mm: pgtable: remove tlb_remove_page_ptdesc()

2025-02-24 Thread Qi Zheng
The tlb_remove_ptdesc()/tlb_remove_table() is specially designed for page table pages, and now all architectures have been converted to use it to remove page table pages. So let's remove tlb_remove_page_ptdesc(), it currently has no users and should not be used for page table pages. Signed-off-by:

[PATCH v2 5/6] x86: pgtable: convert to use tlb_remove_ptdesc()

2025-02-24 Thread Qi Zheng
The x86 has already been converted to use struct ptdesc, so convert it to use tlb_remove_ptdesc() instead of tlb_remove_table(). Signed-off-by: Qi Zheng --- arch/x86/mm/pgtable.c | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/x86/mm/pgtable.c b/arch/x86/mm/pgtab

[PATCH v2 4/6] riscv: pgtable: unconditionally use tlb_remove_ptdesc()

2025-02-24 Thread Qi Zheng
To support fast gup, the commit 69be3fb111e7 ("riscv: enable MMU_GATHER_RCU_TABLE_FREE for SMP && MMU") did the following: 1) use tlb_remove_page_ptdesc() for those platforms which use IPI to perform TLB shootdown 2) use tlb_remove_ptdesc() for those platforms which use SBI to perform TLB s

[PATCH v2 3/6] mm: pgtable: convert some architectures to use tlb_remove_ptdesc()

2025-02-24 Thread Qi Zheng
Now, the nine architectures of csky, hexagon, loongarch, m68k, mips, nios2, openrisc, sh and um do not select CONFIG_MMU_GATHER_RCU_TABLE_FREE, and just call pagetable_dtor() + tlb_remove_page_ptdesc() (the wrapper of tlb_remove_page()). This is the same as the implementation of tlb_remove_{ptdesc|

[PATCH v2 1/6] mm: pgtable: make generic tlb_remove_table() use struct ptdesc

2025-02-24 Thread Qi Zheng
Now only arm will call tlb_remove_ptdesc()/tlb_remove_table() when CONFIG_MMU_GATHER_TABLE_FREE is disabled. In this case, the type of the table parameter is actually struct ptdesc * instead of struct page *. Since struct ptdesc still overlaps with struct page and has not been separated from it, f

[PATCH v2 2/6] mm: pgtable: change pt parameter of tlb_remove_ptdesc() to struct ptdesc *

2025-02-24 Thread Qi Zheng
All callers of tlb_remove_ptdesc() pass it a pointer of struct ptdesc, so let's change the pt parameter from void * to struct ptdesc * to perform a type safety check. Signed-off-by: Qi Zheng Originally-by: Peter Zijlstra (Intel) --- include/asm-generic/tlb.h | 2 +- 1 file changed, 1 insertion(

[PATCH v2 0/6] remove tlb_remove_page_ptdesc()

2025-02-24 Thread Qi Zheng
Changes in v2: - add [PATCH v2 2/6] (Peter Zijlstra) - remove [PATCH 4/5] and add [PATCH v2 5/6] - rebase onto the next-20250224 Hi all, As suggested by Peter Zijlstra below [1], this series aims to remove tlb_remove_page_ptdesc(). : Fundamentally tlb_remove_page() is about removing *pages

Re: [PATCH v3 0/8] perf: Support multiple system call tables in the build

2025-02-24 Thread Namhyung Kim
On Wed, Feb 19, 2025 at 10:56:49AM -0800, Ian Rogers wrote: > This work builds on the clean up of system call tables and removal of > libaudit by Charlie Jenkins . > > The system call table in perf trace is used to map system call numbers > to names and vice versa. Prior to these changes, a single

Re: [PATCH v3 0/8] perf: Support multiple system call tables in the build

2025-02-24 Thread Namhyung Kim
On Wed, Feb 19, 2025 at 10:56:49AM -0800, Ian Rogers wrote: > This work builds on the clean up of system call tables and removal of > libaudit by Charlie Jenkins . > > The system call table in perf trace is used to map system call numbers > to names and vice versa. Prior to these changes, a single

[PATCH 3/3] LoongArch: vDSO: Remove --hash-style=sysv

2025-02-24 Thread Xi Ruoyao
glibc added support for .gnu.hash in 2006 and .hash has been obsoleted far before the first LoongArch CPU was taped. Using --hash-style=sysv might imply unaddressed issues and confuse readers. Some architectures use an explicit --hash-style=both here, but DT_GNU_HASH has already been supported by

[PATCH 1/3] riscv: vDSO: Remove --hash-style=both

2025-02-24 Thread Xi Ruoyao
When RISC-V borned, DT_GNU_HASH had already became the de-facto standard so DT_HASH is just wasting storage space. Remove the explicit --hash-style=both setting and rely on the distro toolchain default, which is most likely "gnu" (i.e. generating only DT_GNU_HASH, no DT_HASH). Following the logic

[PATCH 2/3] csky: vDSO: Remove --hash-style=both

2025-02-24 Thread Xi Ruoyao
When CSKY borned, DT_GNU_HASH had already became the de-facto standard so DT_HASH is just wasting storage space. Remove the explicit --hash-style=both setting and rely on the distro toolchain default, which is most likely "gnu" (i.e. generating only DT_GNU_HASH, no DT_HASH). Following the logic o

[PATCH 0/3] Drop explicit --hash-style= setting for new

2025-02-24 Thread Xi Ruoyao
For riscv, csky, and LoongArch, GNU hash had already become the de-facto standard when they borned, so there's no Glibc/Musl releases for them without GNU hash support, and the traditional SysV hash is just wasting space for them. Remove those settings and follow the distro toolchain default, whic