linux/drivers/serial
Dave Jones e480af09c4 [SERIAL] tickle NMI watchdog on serial output.
Serial is _slow_ sometimes. So slow, that the NMI watchdog kicks in.

NMI Watchdog detected LOCKUP on CPU2CPU 2
Modules linked in: loop usb_storage md5 ipv6 parport_pc lp parport autofs4 i2c_dev i2c_core rfcomm l2cap bluetooth sunrpc pcdPid: 3138, comm: gpm Not tainted 2.6.11-1.1290_FC4smp
RIP: 0010:[<ffffffff80273b8a>] <ffffffff80273b8a>{serial_in+106}
RSP: 0018:ffff81003afc3d50  EFLAGS: 00000002
RAX: 0000000000000020 RBX: 0000000000000020 RCX: 0000000000000000
RDX: 00000000000003fd RSI: 0000000000000005 RDI: ffffffff804dcd60
RBP: 00000000000024fc R08: 000000000000000a R09: 0000000000000033
R10: ffff81001beb7c20 R11: 0000000000000020 R12: ffffffff804dcd60
R13: ffffffff804ade76 R14: 000000000000002b R15: 000000000000002c
FS:  00002aaaaaac4920(0000) GS:ffffffff804fca00(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 00002aaaaabcb000 CR3: 000000003c0d0000 CR4: 00000000000006e0
Process gpm (pid: 3138, threadinfo ffff81003afc2000, task ffff81003eb63780)
Stack: ffffffff80275f2e 0000000000000000 ffffffff80448380 0000000000007d6b
       000000000000002c fffffffffffffbbf 0000000000000292 0000000000008000
       ffffffff80138e8c 0000000000007d97
Call Trace:<ffffffff80275f2e>{serial8250_console_write+270} <ffffffff80138e8c>{__call_console_drivers+76}
       <ffffffff8013914b>{release_console_sem+315} <ffffffff80260325>{con_open+149}
       <ffffffff80254e99>{tty_open+537} <ffffffff80192713>{chrdev_open+387}
       <ffffffff80188824>{dentry_open+260} <ffffffff80188994>{filp_open+68}
       <ffffffff80187b73>{get_unused_fd+227} <ffffffff80188a6c>{sys_open+76}
       <ffffffff8010ebc6>{tracesys+209}

Code: 0f b6 c0 c3 66 90 41 57 49 89 f7 41 56 41 be 00 01 00 00 41
console shuts up ...

I initially did the patch below a year ago for the Fedora kernel, and have
been keeping it up to date since.  I recently got the same thing happening
on a vanilla kernel, so figured it was time to repost this.

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2006-10-01 20:03:19 +01:00
..
cpm_uart Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
jsm [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
8250.c [SERIAL] tickle NMI watchdog on serial output. 2006-10-01 20:03:19 +01:00
8250.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
8250_accent.c
8250_acorn.c
8250_au1x00.c [SERIAL] AMD Alchemy UART: claim memory range 2006-04-30 11:15:58 +01:00
8250_boca.c
8250_early.c
8250_fourport.c
8250_gsc.c [PARISC] I/O-Space must be ioremap_nocache()'d 2006-03-30 17:48:42 +00:00
8250_hp300.c
8250_hub6.c
8250_mca.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
8250_pci.c [SERIAL] CONFIG_PM=n slim: drivers/serial/8250_pci.c 2006-10-01 17:07:08 +01:00
8250_pnp.c [PATCH] SERIAL: allow shared 8250_pnp interrupts 2006-07-03 15:26:58 -07:00
21285.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
68328serial.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
68328serial.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
68360serial.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
Kconfig [PATCH] fix serial/amba-pl011.c console Kconfig 2006-09-29 09:18:14 -07:00
Makefile [ARM] 3571/1: netX: serial driver for Hilscher netX 2006-06-19 13:29:07 +01:00
amba-pl010.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
amba-pl011.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
at91_serial.c [ARM] 3865/1: AT91RM9200 header updates 2006-09-28 11:52:05 +01:00
clps711x.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
crisv10.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
crisv10.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
dz.c [SERIAL] dz: Fix compilation error 2006-07-09 21:11:09 +01:00
dz.h
icom.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
icom.h
imx.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
ioc3_serial.c
ioc4_serial.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
ip22zilog.c [SERIAL] IP22: fix serial console hangs 2006-07-09 21:11:09 +01:00
ip22zilog.h
m32r_sio.c [SERIAL] Remove m32r_sio dependency on asm/serial.h 2006-10-01 17:06:03 +01:00
m32r_sio.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
m32r_sio_reg.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mcfserial.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
mcfserial.h Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
mpc52xx_uart.c Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-serial 2006-07-03 21:31:05 -07:00
mpsc.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
mux.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
netx-serial.c [ARM] 3571/1: netX: serial driver for Hilscher netX 2006-06-19 13:29:07 +01:00
pmac_zilog.c [POWERPC] powermac: Constify & voidify get_property() 2006-07-31 15:55:05 +10:00
pmac_zilog.h
pxa.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
s3c2410.c [ARM] 3793/1: S3C2412: fix wrong serial info struct 2006-09-18 13:30:17 +01:00
sa1100.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
serial_core.c [SERIAL] Fix oops when removing suspended serial port 2006-10-01 17:17:40 +01:00
serial_cs.c [SERIAL] Fix resume handling bug 2006-10-01 17:14:07 +01:00
serial_lh7a40x.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
serial_txx9.c [SERIAL] suspend/resume handlers don't have level arg anymore 2006-10-01 17:06:54 +01:00
sh-sci.c serial: Rework sh-sci for driver model. 2006-09-27 16:32:13 +09:00
sh-sci.h serial: Rework sh-sci for driver model. 2006-09-27 16:32:13 +09:00
sn_console.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
suncore.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
suncore.h
sunhv.c [SERIAL] sunhv: Convert to of_driver layer. 2006-06-30 14:13:38 -07:00
sunsab.c [SERIAL] sunsab: Fix E250 console with RSC. 2006-08-23 15:50:57 -07:00
sunsab.h
sunsu.c [SERIAL] sunsu: Report keyboard and mouse ports in kernel log. 2006-07-14 17:00:23 -07:00
sunzilog.c [SERIAL] sunzilog: Mark sunzilog_init_hw as __devinit. 2006-09-29 16:12:43 -07:00
sunzilog.h
v850e_uart.c [PATCH] irq-flags: serial: Use the new IRQF_ constants 2006-07-02 13:58:53 -07:00
vr41xx_siu.c [MIPS] vr41xx: Move IRQ numbers to asm-mips/vr41xx/irq.h 2006-07-13 21:26:19 +01:00