From c7c59e69ec0f83a9ea6a0b7d4b06375c550a369d Mon Sep 17 00:00:00 2001 From: Sebastian Andrzej Siewior Date: Thu, 4 Feb 2016 14:08:06 +0100 Subject: [PATCH 067/332] latencyhist: disable jump-labels Atleast on X86 we die a recursive death |CPU: 3 PID: 585 Comm: bash Not tainted 4.4.1-rt4+ #198 |Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS Debian-1.8.2-1 04/01/2014 |task: ffff88007ab4cd00 ti: ffff88007ab94000 task.ti: ffff88007ab94000 |RIP: 0010:[] [] int3+0x0/0x10 |RSP: 0018:ffff88013c107fd8 EFLAGS: 00010082 |RAX: ffff88007ab4cd00 RBX: ffffffff8100ceab RCX: 0000000080202001 |RDX: 0000000000000000 RSI: ffffffff8100ceab RDI: ffffffff810c78b2 |RBP: ffff88007ab97c10 R08: ffffffffff57b000 R09: 0000000000000000 |R10: ffff88013bb64790 R11: ffff88007ab4cd68 R12: ffffffff8100ceab |R13: ffffffff810c78b2 R14: ffffffff810f8158 R15: ffffffff810f9120 |FS: 0000000000000000(0000) GS:ffff88013c100000(0063) knlGS:00000000f74e3940 |CS: 0010 DS: 002b ES: 002b CR0: 000000008005003b |CR2: 0000000008cf6008 CR3: 000000013b169000 CR4: 00000000000006e0 |Call Trace: | <#DB> | [] ? trace_preempt_off+0x18/0x170 | <> | [] preempt_count_add+0xa5/0xc0 | [] on_each_cpu+0x22/0x90 | [] text_poke_bp+0x5b/0xc0 | [] arch_jump_label_transform+0x8c/0xf0 | [] __jump_label_update+0x6c/0x80 | [] jump_label_update+0xaa/0xc0 | [] static_key_slow_inc+0x94/0xa0 | [] tracepoint_probe_register_prio+0x26d/0x2c0 | [] tracepoint_probe_register+0x13/0x20 | [] trace_event_reg+0x98/0xd0 | [] __ftrace_event_enable_disable+0x6b/0x180 | [] event_enable_write+0x78/0xc0 | [] __vfs_write+0x28/0xe0 | [] vfs_write+0xa5/0x180 | [] SyS_write+0x46/0xa0 | [] do_fast_syscall_32+0xa1/0x1d0 | [] sysenter_flags_fixed+0xd/0x17 during echo 1 > /sys/kernel/debug/tracing/events/hist/preemptirqsoff_hist/enable Reported-By: Christoph Mathys Cc: stable-rt@vger.kernel.org Signed-off-by: Sebastian Andrzej Siewior --- arch/Kconfig | 1 + 1 file changed, 1 insertion(+) Index: linux-4.14.15-rt12/arch/Kconfig =================================================================== --- linux-4.14.15-rt12.orig/arch/Kconfig +++ linux-4.14.15-rt12/arch/Kconfig @@ -61,6 +61,7 @@ config KPROBES config JUMP_LABEL bool "Optimize very unlikely/likely branches" depends on HAVE_ARCH_JUMP_LABEL + depends on (!INTERRUPT_OFF_HIST && !PREEMPT_OFF_HIST && !WAKEUP_LATENCY_HIST && !MISSED_TIMER_OFFSETS_HIST) help This option enables a transparent branch optimization that makes certain almost-always-true or almost-always-false branch