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 branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 PTI fixes from Ingo Molnar:
"Two fixes: a relatively simple objtool fix that makes Clang built
kernels work with ORC debug info, plus an alternatives macro fix"

* 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/alternatives: Fixup alternative_call_2
objtool: Add Clang support

+12 -3
+1 -3
arch/x86/include/asm/alternative.h
··· 218 218 */ 219 219 #define alternative_call_2(oldfunc, newfunc1, feature1, newfunc2, feature2, \ 220 220 output, input...) \ 221 - { \ 222 221 asm volatile (ALTERNATIVE_2("call %P[old]", "call %P[new1]", feature1,\ 223 222 "call %P[new2]", feature2) \ 224 223 : output, ASM_CALL_CONSTRAINT \ 225 224 : [old] "i" (oldfunc), [new1] "i" (newfunc1), \ 226 - [new2] "i" (newfunc2), ## input); \ 227 - } 225 + [new2] "i" (newfunc2), ## input) 228 226 229 227 /* 230 228 * use this macro(s) if you need more than one output parameter
+11
tools/objtool/check.c
··· 1386 1386 state->vals[op->dest.reg].offset = -state->stack_size; 1387 1387 } 1388 1388 1389 + else if (op->src.reg == CFI_BP && op->dest.reg == CFI_SP && 1390 + cfa->base == CFI_BP) { 1391 + 1392 + /* 1393 + * mov %rbp, %rsp 1394 + * 1395 + * Restore the original stack pointer (Clang). 1396 + */ 1397 + state->stack_size = -state->regs[CFI_BP].offset; 1398 + } 1399 + 1389 1400 else if (op->dest.reg == cfa->base) { 1390 1401 1391 1402 /* mov %reg, %rsp */