[coreboot] slow load times

Myles Watson mylesgw at gmail.com
Sat Feb 14 05:26:43 CET 2009




This thread might be interesting to others.  Kevin fixed CD detection for me
in SeaBIOS.  The timeout wasn't long enough for the drive to detect the
media, so I couldn't boot a CD.

The other interesting problem I have is that when I cold boot into SeaBIOS,
the drives aren't detected.  If I restart the machine after this happens, it
won't boot fully into Linux until I boot the factory BIOS.  This doesn't
happen if I stop the boot process by holding reset until the drives spin up
on cold boot.

> On Fri, Feb 13, 2009 at 12:11:11PM -0700, Myles Watson wrote:
> > >> Looking at the code, I noticed that the cdrom booting code doesn't
> use
> > >> real timers and the ata code was recently updated to use less delays.
> > >
> > > Yes.  I had these troubles when I updated the Bochs BIOS for ADLO
> before
> > > SeaBIOS was around.  The delays don't matter in the simulator, so they
> get
> > > ignored.
> > >
> > >> The latest git does a better job of timing the cdrom capacity/media
> > >> sensing.  Can you do a "git pull" and retry?
> >
> > I can boot from CD again.  There are a lot of error messages (~550
> > more than before), but it works.  Thanks.
> 
> Great!  Yeah, looks like the IDE code is responding to failures much
> faster than it was before.  We could put an msleep() in the cdrom
> detect loop just to reduce the warnings, but tweaking the debugging
> level might be simpler.
> 
> > >> Hrmm.  If you cold boot into SeaBIOS, and then hit ctrl+alt+delete,
> > >> does it detect your drives during the reboot?
> > >
> > > I don't know.  I'll try that.  It doesn't work with the reset button
> if I
> > > let it go that far.
> > It didn't work for me that way.  It still works for me to use the reset
> button.
> 
> Hrmm.  That's weird.  Can you send a SeaBIOS log of a run where you
> boot up until failure, press ctrl+alt+delete, and then go to the
> failure again?

Sure.  From what I've been able to tell, there's nothing significant there.
SeaBIOS detects the drives the second time, but when Linux tries to boot it
gets confused when it tries to load the SATA drivers and hangs.  I don't
think I was clear on that before.  It could be related to the interrupt
routing problems, or something that's not getting reset correctly by
Coreboot.

It's symptomatically the same as booting into Linux with ACPI enabled and my
broken (so far) tables.  It hangs and won't boot correctly again until I
boot the factory BIOS, sometimes only a cold boot with the factory BIOS
works.

Thanks,
Myles





More information about the coreboot mailing list