perf/x86: Push the duration-logging printk() to IRQ context
authorPeter Zijlstra <peterz@infradead.org>
Mon, 3 Feb 2014 17:11:08 +0000 (18:11 +0100)
committerIngo Molnar <mingo@kernel.org>
Sun, 9 Feb 2014 12:17:21 +0000 (13:17 +0100)
commit6a02ad66b2c44155d529f430d4fa5c6c66321077
treef6a4d0ac8618aab3ea0154429c2ffc569474aa4a
parent3c3d7cb1db4af176dab843f22ea092a4ef1eb989
perf/x86: Push the duration-logging printk() to IRQ context

Calling printk() from NMI context is bad (TM), so move it to IRQ
context.

This also avoids the problem where the printk() time is measured by
the generic NMI duration goo and triggers a second warning.

Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Link: http://lkml.kernel.org/n/tip-75dv35xf6dhhmeb7nq6fua31@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
include/linux/irq_work.h
kernel/events/core.c