Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'powerpc-4.11-8' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

Pull powerpc fixes from Michael Ellerman:
"Just two fixes.

The first fixes kprobing a stdu, and is marked for stable as it's been
broken for ~ever. In hindsight this could have gone in next.

The other is a fix for a change we merged this cycle, where if we take
a certain exception when the kernel is running relocated (currently
only used for kdump), we checkstop the box.

Thanks to Ravi Bangoria"

* tag 'powerpc-4.11-8' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
powerpc/64: Fix HMI exception on LE with CONFIG_RELOCATABLE=y
powerpc/kprobe: Fix oops when kprobed on 'stdu' instruction

+8 -8
+4 -4
arch/powerpc/include/asm/exception-64s.h
··· 236 236 mtctr reg; \ 237 237 bctr 238 238 239 - #define BRANCH_LINK_TO_FAR(reg, label) \ 240 - __LOAD_FAR_HANDLER(reg, label); \ 241 - mtctr reg; \ 239 + #define BRANCH_LINK_TO_FAR(label) \ 240 + __LOAD_FAR_HANDLER(r12, label); \ 241 + mtctr r12; \ 242 242 bctrl 243 243 244 244 /* ··· 265 265 #define BRANCH_TO_COMMON(reg, label) \ 266 266 b label 267 267 268 - #define BRANCH_LINK_TO_FAR(reg, label) \ 268 + #define BRANCH_LINK_TO_FAR(label) \ 269 269 bl label 270 270 271 271 #define BRANCH_TO_KVM(reg, label) \
+3 -3
arch/powerpc/kernel/entry_64.S
··· 689 689 690 690 addi r8,r1,INT_FRAME_SIZE /* Get the kprobed function entry */ 691 691 692 - lwz r3,GPR1(r1) 692 + ld r3,GPR1(r1) 693 693 subi r3,r3,INT_FRAME_SIZE /* dst: Allocate a trampoline exception frame */ 694 694 mr r4,r1 /* src: current exception frame */ 695 695 mr r1,r3 /* Reroute the trampoline frame to r1 */ ··· 703 703 addi r6,r6,8 704 704 bdnz 2b 705 705 706 - /* Do real store operation to complete stwu */ 707 - lwz r5,GPR1(r1) 706 + /* Do real store operation to complete stdu */ 707 + ld r5,GPR1(r1) 708 708 std r8,0(r5) 709 709 710 710 /* Clear _TIF_EMULATE_STACK_STORE flag */
+1 -1
arch/powerpc/kernel/exceptions-64s.S
··· 982 982 EXCEPTION_PROLOG_COMMON_2(PACA_EXGEN) 983 983 EXCEPTION_PROLOG_COMMON_3(0xe60) 984 984 addi r3,r1,STACK_FRAME_OVERHEAD 985 - BRANCH_LINK_TO_FAR(r4, hmi_exception_realmode) 985 + BRANCH_LINK_TO_FAR(hmi_exception_realmode) /* Function call ABI */ 986 986 /* Windup the stack. */ 987 987 /* Move original HSRR0 and HSRR1 into the respective regs */ 988 988 ld r9,_MSR(r1)