Issues with nullconsole in FreeBSD 6.0-p6

Doug Ambrisko ambrisko at ambrisko.com
Wed Apr 5 03:20:45 UTC 2006


Jonas Bülow writes:
| I'm experiencing a really strange problem using nullconsole in FreeBSD
| 6.0-p6. Briefly, what happens is that the use of nullconsole affects
| the behavior of the OS negatively, very negatively.
| 
| There are two different setups with different kernel
| configurations. They both have console set to nullconsole in
| loader.conf.
| 
| In the first setup the machine reboots spontaneously somewhere during
| boot without leaving a hint of the reason.
| 
| In the other setup there is a fsck process (fsck_4.2bsd) crashing with
| signal 8 (floating point exception) during boot. The fsck is run on an
| auxiliary disk during startup.
| 
| Both these problems goes away if console is set to either vidconsole
| or comconsole in loader.conf.
| 
| Adding DDB to the kernel configuration prevents to machine from
| continuously rebooting in the first setup. Instead, it silently halts
| somewhere in the boot process. Not easy telling where. It's seems to
| be somewhere late in the process. Probably when running rc.d scripts
| by observing the time before reboot compared to when using vidconsole
| or comconsole.
| 
| I've tried to debug the problem. I've not figured out how to remotely
| debug a kernel when using nullconsole. The escape to debugger hot keys
| (Ctrl+Alt+Esc or Ctrl+SysReq) does not work when using
| nullconsole. Therefor it is not possible to switch to remote mode. Can
| DDB be force to go directly into remote mode?
| 
| I really understand it is impossible to give a simple answer or
| solution to my problems described above. Well, if someone knows a
| solution I wouldn't mind sharing it. What I really would like help
| with is some input on how to debug this further. What to look for,
| things to try etc.

We don't seem to have that problem here with our enhanced consmute stuff.
I noticed some implementation strangeness with the newer consmute
implementation.  Our major change is to put it into a function so if
you break into the debugger or it panics you get that stuff.  Now
technically this wouldn't be a good idea with the original motivation
but works for us.

Bug me to remember to extract the patch for you to try.

Doug A.


More information about the freebsd-stable mailing list