Re: events: possible deadlock in __perf_event_task_sched_out

From: Peter Zijlstra
Date: Mon Aug 21 2017 - 03:32:54 EST


On Mon, Aug 21, 2017 at 01:56:27AM +0530, Shubham Bansal wrote:
> -> #1 ((console_sem).lock){......}:
> lock_acquire+0x173/0x470
> _raw_spin_lock_irqsave+0x42/0x60
> down_trylock+0x13/0x70
> __down_trylock_console_sem+0x38/0xc0
> console_trylock+0x17/0xb0
> vprintk_emit+0x410/0x480
> vprintk_default+0x28/0x30
> vprintk_func+0x57/0xbe
> printk+0x9f/0xbb
> ex_handler_wrmsr_unsafe.cold.1+0xca/0xe2
> fixup_exception+0x8b/0xb3
> do_general_protection+0x18f/0x2b0
> general_protection+0x28/0x30
> native_write_msr+0x4/0x30
> x86_pmu_enable+0x347/0xab0
> ctx_resched+0x1e6/0x2b0
> __perf_install_in_context+0x244/0x2c0
> remote_function+0x8e/0x190
> generic_exec_single+0x292/0x410
> smp_call_function_single+0x339/0x510
> task_function_call+0x162/0x220
> perf_install_in_context+0x247/0x460
> SYSC_perf_event_open+0x207c/0x2ea0
> SyS_perf_event_open+0x39/0x50
> entry_SYSCALL_64_fastpath+0x1f/0xbe

This is a WARN, printk is a pig.