tty/serial/8250: Touch NMI watchdog in wait_for_xmitr
First loop in wait_for_xmitr could also trigger NMI
watchdog in case reading from the port is slow:
PID: 0 TASK:
ffffffff819c1460 CPU: 0 COMMAND: "swapper/0"
#0 [
ffff88019f405e58] crash_nmi_callback at
ffffffff8104d382
#1 [
ffff88019f405e68] nmi_handle at
ffffffff8168ead9
#2 [
ffff88019f405eb0] do_nmi at
ffffffff8168ec53
#3 [
ffff88019f405ef0] end_repeat_nmi at
ffffffff8168df13
[exception RIP: delay_tsc+50]
RIP:
ffffffff81325642 RSP:
ffff88019f403bb0 RFLAGS:
00000083
RAX:
00000000000005c8 RBX:
ffffffff81f83000 RCX:
0000024e4fb88a8b
RDX:
0000024e4fb89053 RSI:
0000000000000000 RDI:
00000000000007d1
RBP:
ffff88019f403bb0 R8:
000000000000000a R9:
0000000000000000
R10:
0000000000000000 R11:
ffff88019f403ad6 R12:
000000000000250f
R13:
0000000000000020 R14:
ffffffff81d360c7 R15:
0000000000000047
ORIG_RAX:
ffffffffffffffff CS: 0010 SS: 0018
--- <NMI exception stack> ---
#4 [
ffff88019f403bb0] delay_tsc at
ffffffff81325642
#5 [
ffff88019f403bb8] __const_udelay at
ffffffff813255a8
#6 [
ffff88019f403bc8] wait_for_xmitr at
ffffffff81404390
#7 [
ffff88019f403bf0] serial8250_console_putchar at
ffffffff8140455c
#8 [
ffff88019f403c10] uart_console_write at
ffffffff813ff00a
#9 [
ffff88019f403c40] serial8250_console_write at
ffffffff814044ae
#10 [
ffff88019f403c88] call_console_drivers.constprop.15 at
ffffffff81086b01
#11 [
ffff88019f403cb0] console_unlock at
ffffffff8108842f
#12 [
ffff88019f403ce8] vprintk_emit at
ffffffff81088834
#13 [
ffff88019f403d58] vprintk_default at
ffffffff81088ba9
#14 [
ffff88019f403d68] printk at
ffffffff8167f034
Adding touch_nmi_watchdog call to the first loop as well.
Reported-by: Chunyu Hu <chuhu@redhat.com>
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>