Console patch part II...
Ken Smith
kensmith at cse.Buffalo.EDU
Tue Mar 16 12:23:46 PST 2004
On Tue, Mar 16, 2004 at 11:40:41AM -0800, Marcel Moolenaar wrote:
> On Tue, Mar 16, 2004 at 02:34:06AM -0500, Ken Smith wrote:
> > On Mon, Mar 15, 2004 at 11:09:37PM -0800, Marcel Moolenaar wrote:
> >
> > > You need to fix the code to call cninit() soon enough that you
> > > never need to panic before it?
> >
> > Expanding slightly... cninit() currently is before the first printf()'s
> > or calls to panic(). But it can't stay there, at least some of the
> > potential consoles (e.g. Kris's Creator-3D) wind up calling make_dev()
> > and that was causing his panic's.
>
> Fix syscons.
>
> > Alpha had this same problem and the end solution for alpha is more or
> > less identical to what I'm proposing with the kludge hack.
>
> I accepted the hack on alpha simply because there's no developer
> base to put in the work to actually fix the problem. Now that
> sparc64 appears to suffer from the same, I'm passionately of the
> opinion that we cannot kluge our way out of this.
>
> > - [ This is a new thought... ] Restructure all the potential
> > console drivers to be like ofw_console is. ofw_console doesn't
> > call make_dev() in its attach routine. Instead it uses a
> > sysinit() to handle the make_dev() later in the boot sequence
> > instead of doing at attach time.
>
> Look at uart(4). It does everything right and consequently does not
> force us to delay cninit() or kdb_init() for that matter. With
> uart(4), you do not need ofw_console(4) most of the time. Your
> problem is therefore not that cninit() is called to soon. Your
> problem is that syscons is broken.
Ok, sorry. You sent this while I was editing the reply I made a
few minutes ago.
I'm off to look at syscons then.
--
Ken Smith
- From there to here, from here to | kensmith at cse.buffalo.edu
there, funny things are everywhere. |
- Theodore Geisel |
More information about the freebsd-sparc64
mailing list