[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ldrbnfx1.fsf@oracle.com>
Date: Mon, 05 May 2025 10:08:58 -0700
From: Ankur Arora <ankur.a.arora@...cle.com>
To: Mukesh Kumar Chaurasiya <mchauras@...ux.ibm.com>
Cc: linux-kernel@...r.kernel.org, maddy@...ux.ibm.com, mpe@...erman.id.au,
npiggin@...il.com, christophe.leroy@...roup.eu, naveen@...nel.org,
neeraj.upadhyay@...nel.org, vschneid@...hat.com, tglx@...utronix.de,
frederic@...nel.org, ankur.a.arora@...cle.com, sshegde@...ux.ibm.com,
bigeasy@...utronix.de, kees@...nel.org, oleg@...hat.com,
peterz@...radead.org, tzimmermann@...e.de, namcao@...utronix.de,
kan.liang@...ux.intel.com, mcgrof@...nel.org, rppt@...nel.org,
atrajeev@...ux.vnet.ibm.com, anjalik@...ux.ibm.com,
coltonlewis@...gle.com, linuxppc-dev@...ts.ozlabs.org
Subject: Re: [RFC V1 0/6] Generic Entry/Exit support for ppc64
Mukesh Kumar Chaurasiya <mchauras@...ux.ibm.com> writes:
> This is a syscall only implementation of generic entry/exit framework
> for framework for ppc. IRQ handling is not done in this RFC.
>
> This will break the ppc32 build as of now which will be fixed along with
> IRQ handling.
>
> Below are the performance benchmarks from perf bench basic syscall.
> This is for 1,00,00,000 getppid() calls
>
> | Metric | Without Generic Framework | With Generic Framework |
> | ---------- | ------------------------- | ---------------------- |
> | Total time | 0.904 [sec] | 0.856 [sec] |
> | usecs/op | 0.090403 | 0.085638 |
> | ops/sec | 1,10,61,579 | 1,16,77,086 |
>
> That's ~5% degradation as of now.
Is the table header inverted? That reads like a ~5% improvement with the
generic version.
Ankur
> Mukesh Kumar Chaurasiya (6):
> powerpc: rename arch_irq_disabled_regs
> powerpc: Prepare to build with genreic entry/exit framework
> powerpc: introduce arch_enter_from_user_mode
> powerpc: Add flag in paca for register restore state
> powerpc: Introduce syscall exit arch functions
> powerpc: Enable Generic Entry/Exit for syscalls.
>
> arch/powerpc/Kconfig | 1 +
> arch/powerpc/include/asm/entry-common.h | 158 ++++++++++++++++++++++++
> arch/powerpc/include/asm/hw_irq.h | 4 +-
> arch/powerpc/include/asm/interrupt.h | 117 +++++++++++++++++-
> arch/powerpc/include/asm/paca.h | 1 +
> arch/powerpc/include/asm/stacktrace.h | 8 ++
> arch/powerpc/include/asm/syscall.h | 5 +
> arch/powerpc/include/asm/thread_info.h | 1 +
> arch/powerpc/kernel/interrupt.c | 153 ++++++-----------------
> arch/powerpc/kernel/ptrace/ptrace.c | 103 ---------------
> arch/powerpc/kernel/signal.c | 8 ++
> arch/powerpc/kernel/syscall.c | 117 +-----------------
> arch/powerpc/kernel/traps.c | 2 +-
> arch/powerpc/kernel/watchdog.c | 2 +-
> arch/powerpc/perf/core-book3s.c | 2 +-
> 15 files changed, 336 insertions(+), 346 deletions(-)
> create mode 100644 arch/powerpc/include/asm/entry-common.h
--
ankur
Powered by blists - more mailing lists