aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/bin/stackcollapse-report
diff options
context:
space:
mode:
authorAlexey Brodkin <[email protected]>2017-01-10 18:11:29 +0300
committerGreg Kroah-Hartman <[email protected]>2017-01-12 11:51:25 +0100
commit699a11ba7ec869b006623182881f2f1f5b4aea53 (patch)
tree9f9ab08b61c31f9b754321dbfd28762c1ec04e5c /tools/perf/scripts/python/bin/stackcollapse-report
parent1a5c2d1de7d35f5eb9793266237903348989502b (diff)
serial: 8250_port: Remove dangerous pr_debug()
With CONFIG_DYNAMIC_DEBUG if dyndbg enables debug output in 8250_port.c deadlock happens inevitably on UART IRQ handling. That's the problematic execution path: ---------------------------->8------------------------ UART IRQ: serial8250_interrupt() -> serial8250_handle_irq(): lock "port->lock" -> pr_debug() -> serial8250_console_write(): bump in locked "port->lock". OR (if above pr_debug() gets removed): serial8250_tx_chars() -> pr_debug() -> serial8250_console_write(): bump in locked "port->lock". ---------------------------->8------------------------ So let's get rid of those not that much useful debug entries. Discussed problem could be easily reproduced with QEMU for x86_64. As well as this fix could be mimicked with muting of dynamic debug for the problematic lines as simple as: ---------------------------->8------------------------ dyndbg="+p; file 8250_port.c line 1756 -p; file 8250_port.c line 1822 -p" ---------------------------->8------------------------ Signed-off-by: Alexey Brodkin <[email protected]> Cc: Jiri Slaby <[email protected]> Cc: Peter Hurley <[email protected]> Cc: Phillip Raffeck <[email protected]> Cc: Anton Wuerfel <[email protected]> Cc: "Matwey V. Kornilov" <[email protected]> Cc: Yegor Yefremov <[email protected]> Cc: Thor Thayer <[email protected]> Reviewed-by: Andy Shevchenko <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-report')
0 files changed, 0 insertions, 0 deletions