Bug 62026

Summary: COM-ports disabled in BIOS = FreeBSD Freeze
Product: Base System Reporter: elofu17
Component: miscAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: 4.9-STABLE   
Hardware: Any   
OS: Any   

Description elofu17 2004-01-28 12:00:34 UTC
(I'm running on a cvsup:ed RELENG_4 world)

I have enabled a login on a serial port via /etc/ttys:
  ttyd0  "/usr/libexec/getty std.9600"  vt100  on secure

Yesterday I added some NICs and got some PnP configuration errors in BIOS. While troubleshooting this, I disabled everything I didn't use; all serial (COM) ports, the parallell port, the builtin NIC, etc.

When I finally got a working config I forgot to enable the stuff I had disabled. I started FreeBSD and it booted fine.

Everything looked as it should on the screen. The last line was the login-prompt. The problem was that the machine had freezed. No response to keystrokes and no network traffic, not even responses to ARP-requests.

Nothing on the screen indicates what's wrong.
I rebooted the machine and booted on a LiveCD, ran fsck on my /var partition, only to see that nothing revealing was logged to /var/log.

Suddenly I remembered my dialin line in /etc/ttys. I disabled it and now there were no freeze.

Fix: 

This is a problem that is manually introduced. My hopes are that you could add some funtions that test wether any serial port exist before trying to use it. Then you could avoid the freeze and print/log a warning.
How-To-Repeat: Disable all COM-ports in BIOS. Enable a dialin getty in /etc/ttys that use a (nonexistent) serial port.
Comment 1 Bruce Evans 2004-01-29 14:46:58 UTC
On Wed, 28 Jan 2004, Elof wrote:

> >Fix:
> This is a problem that is manually introduced. My hopes are that you could add some funtions that test wether any serial port exist before trying to use it. Then you could avoid the freeze and print/log a warning.

There are already lots of existence checks.  Some BIOSes apparently "disable"
com ports in such away that the existence checks pass.  Please include
boot (-v) messages (just the sio parts) so that this can be debugged.

Bruce
Comment 2 Kris Kennaway freebsd_committer freebsd_triage 2004-04-24 08:54:13 UTC
State Changed
From-To: open->closed

Feedback timeout