Skip to contentSkip to conversation

core kernel fixes

GIT PULL Ingo Molnar 1 participant 1 message Oct 18, 2016

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Linus,

Please pull the latest core-urgent-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-urgent-for-linus

# HEAD: a705e07b9c80df27b6bb12f7a4cd4cf4ed2f728b cpu/hotplug: Use distinct name for cpu_hotplug.dep_map

A CPU hotplug debuggability fix and three objtool false positive warnings fixes for new GCC6 code generation patterns.

Thanks,

Ingo

------------------>
Joonas Lahtinen (1):
cpu/hotplug: Use distinct name for cpu_hotplug.dep_map

Josh Poimboeuf (3):
objtool: Support '-mtune=atom' stack frame setup instruction
objtool: Improve rare switch jump table pattern detection
objtool: Skip all "unreachable instruction" warnings for gcov kernels

 kernel/cpu.c                    |  2 +-
 tools/objtool/arch/x86/decode.c |  9 ++++++
 tools/objtool/builtin-check.c   | 68 +++++++++++++++++++++--------------------
 3 files changed, 45 insertions(+), 34 deletions(-)
kernel/cpu.c +1 -1
index 5df20d6d1520..29de1a9352c0 100644
@@ -228,7 +228,7 @@ static struct {
 	.wq = __WAIT_QUEUE_HEAD_INITIALIZER(cpu_hotplug.wq),
 	.lock = __MUTEX_INITIALIZER(cpu_hotplug.lock),
 #ifdef CONFIG_DEBUG_LOCK_ALLOC
-	.dep_map = {.name = "cpu_hotplug.lock" },
+	.dep_map = STATIC_LOCKDEP_MAP_INIT("cpu_hotplug.dep_map", &cpu_hotplug.dep_map),
 #endif
 };
 
tools/objtool/arch/x86/decode.c +9 -0
index c0c0b265e88e..b63a31be1218 100644
@@ -98,6 +98,15 @@ int arch_decode_instruction(struct elf *elf, struct section *sec,
 			*type = INSN_FP_SETUP;
 		break;
 
+	case 0x8d:
+		if (insn.rex_prefix.bytes &&
+		    insn.rex_prefix.bytes[0] == 0x48 &&
+		    insn.modrm.nbytes && insn.modrm.bytes[0] == 0x2c &&
+		    insn.sib.nbytes && insn.sib.bytes[0] == 0x24)
+			/* lea %(rsp), %rbp */
+			*type = INSN_FP_SETUP;
+		break;
+
 	case 0x90:
 		*type = INSN_NOP;
 		break;
tools/objtool/builtin-check.c +35 -33

106 lines not on this page · raw message