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 patch set implements saving and restore the user defined PPR value for all tasks. Haren Myneni (6): powerpc: Move branch instruction from ACCOUNT_CPU_USER_ENTRY to caller powerpc: Add enable_ppr kernel parameter to enable PPR save/restore powerpc: Add ppr in thread_info struct powerpc: Increase exceptions arrays in paca struct to save PPR powerpc: Macros for saving/restore PPR powerpc: Implement PPR save/restore Documentation/kernel-parameters.txt | 4 +++ arch/powerpc/include/asm/cputable.h | 6 ++-- arch/powerpc/include/asm/exception-64s.h | 51 ++++++++++++++++++++++++++---- arch/powerpc/include/asm/paca.h | 6 ++-- arch/powerpc/include/asm/ppc_asm.h | 2 -- arch/powerpc/include/asm/reg.h | 1 + arch/powerpc/include/asm/thread_info.h | 11 +++++++ arch/powerpc/kernel/asm-offsets.c | 1 + arch/powerpc/kernel/entry_64.S | 7 +++- arch/powerpc/kernel/exceptions-64s.S | 18 ++++++----- arch/powerpc/kernel/setup_64.c | 14 ++++++++ 11 files changed, 99 insertions(+), 22 deletions(-) -- 1.7.10.4 _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev