[PATCH 0/6] powerpc: SMT priority (PPR) save and restore
mikey at neuling.org
Thu Nov 1 11:44:49 EST 2012
Haren Myneni <haren at linux.vnet.ibm.com> wrote:
> [PATCH 0/6] powerpc: SMT priority (PPR) save and restore
> On P7 systems, users can define SMT priority levels 2,3 and 4 for
> processes so that some can run higher priority than the other ones.
> In the current kernel, the default priority is set to 4 which prohibits
> processes for using higher priority. Also the kernel boosts the priority to
> 4 during exceptions without saving the user defined priorities when
> the task enters the kernel. So we will be loosing the process PPR value
> and can not be restored it back when the task exits the kernel.
> This patchset implements saving and restore the user defined PPR value
> for all tasks.
> With null_syscall testcase (http://ozlabs.org/~anton/junkcode/null_syscall.c),
> this feature takes around extra 10 CPU cycles on average for 25 samples.
This version doesn't do PPR save/restore over syscall, so is this above
statement still true? null_syscall shouldn't be effected at all, right?
> Haren Myneni (6):
> powerpc: Move branch instruction from ACCOUNT_CPU_USER_ENTRY to caller
> powerpc: Define CPU_FTR_HAS_PPR
> powerpc: Increase exceptions arrays in paca struct to save PPR
> powerpc: Define ppr in thread_struct
> powerpc: Macros for saving/restore PPR
> powerpc: Implement PPR save/restore
> arch/powerpc/include/asm/cputable.h | 6 ++-
> arch/powerpc/include/asm/exception-64s.h | 45 ++++++++++++++++++++++++++----
> arch/powerpc/include/asm/paca.h | 6 ++--
> arch/powerpc/include/asm/ppc_asm.h | 27 ++++++++++++++++-
> arch/powerpc/include/asm/processor.h | 6 ++++
> arch/powerpc/include/asm/reg.h | 1 +
> arch/powerpc/kernel/asm-offsets.c | 1 +
> arch/powerpc/kernel/entry_64.S | 6 +++-
> arch/powerpc/kernel/exceptions-64e.S | 3 +-
> arch/powerpc/kernel/exceptions-64s.S | 15 +++++----
> arch/powerpc/kernel/process.c | 2 +
> 11 files changed, 96 insertions(+), 22 deletions(-)
More information about the Linuxppc-dev