NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/55286: Kernel messages cause loss of serial console input



The following reply was made to PR kern/55286; it has been noted by GNATS.

From: Andreas Gustafsson <gson%gson.org@localhost>
To: Manuel Bouyer <bouyer%antioche.eu.org@localhost>
Cc: gnats-bugs%netbsd.org@localhost
Subject: Re: kern/55286: Kernel messages cause loss of serial console input
Date: Sun, 24 May 2020 16:51:52 +0300

 Manuel Bouyer wrote:
 > no, it works fine even if nothing is being printed. I know, I'm using '+++++'
 > as a key to enter ddb.
 
 If it's working when nothing is being printed, you are not using
 the code path in case, but a different one that will continue to work.
 During normal system operation when serial port interrupts are
 enabled, the cnmagic check happens in comintr(), and that's the one
 you are relying on.
 
 The code I'd like to delete is in com_common_putc() and is intended
 for situations such as early startup where interrupts are not yet
 enabled, or late shutdown when they have already been disabled.  If
 you type '+++++' during one of those phases, it is only detected in
 com_common_putc(), and that only works if the kernel happens to print
 a character to the console after each '+'.  It will not work if the
 kernel is deadlocked or in an infinite loop where nothing is printed
 to the console.
 
 > It definitively has some value. There are setups where BREAK can't be
 > sent (e.g. qemu, Dell idrac, ...). 
 
 I'm also using both qemu and idrac.  The qemu bug is supposedly fixed
 (https://bugs.launchpad.net/qemu/+bug/1654137), and the Dell server
 I'm using has a nice NMI button.  But that really only matters for the
 interrupts-disabled case; normally, '+++++' will continue to work.
 
 > I need it.
 
 Sure, but do you need it specifically in the case when serial
 interrupts are disabled and the kernel is not polling for console
 input but is printing something to the console?  That is the only
 case that deleting this code will break.
 -- 
 Andreas Gustafsson, gson%gson.org@localhost
 


Home | Main Index | Thread Index | Old Index