On (21/01/06 17:28), chenzhen (R) wrote:
> On 21/1/6 15:33, Sergey Senozhatsky wrote:
> > On (21/01/06 14:46), chenzhen wrote:
> >> Since 54f19b4a6(tty/serial/8250: Touch NMI watchdog in wait_for_xmitr),
> >> serial8250
> >> will always touch watchdog in write and wait_for_xmitr. However,
> >> serial8250 may
> >> become low speed thus take a long time to print. In this process, nmi and
> >> soft
> >> watchdog on current CPU will be invalid.
> >>
> >> To resolve this problem, add a cmdline option "tty_watchdog_enable" to
> >> control
> >> the touchdog in serial8250.
> > Sorry, I don't understand - what does this fix?
> >
> > -ss
> > .
>
> It fixes that if serial8250 is low speed on some machine, when it
> writes for a long time, NMI/softlockup watchdog will never bark and
> potential rlock will not be detected. So an option to control the
> touchdog in serial8250 may help.
This is the intention. Suppose that serial8250 triggers the lockup
watchdog, how are you going to fix it? If you need to write N
bytes to the slow 8250 port then there is nothing you can do about
it; triggering watchdog from the 8250 write path is certainly not
going to help. If you have an excessive number of printk()-s then
reduce the number of spurious printk()-s (ratelimit, etc).
-ss