[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Why is SeaBIOS used with -kernel?
From: |
Kevin O'Connor |
Subject: |
Re: [Qemu-devel] Why is SeaBIOS used with -kernel? |
Date: |
Fri, 1 Apr 2016 16:05:46 -0400 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Fri, Apr 01, 2016 at 07:41:31PM +0100, Richard W.M. Jones wrote:
> On Fri, Apr 01, 2016 at 11:35:40AM -0400, Kevin O'Connor wrote:
> > > +# general stuff
> > > +CONFIG_QEMU=y
> > > +CONFIG_ROM_SIZE=128
> >
> > Why force a size of 128K - I would think 64K would be fine.
>
> Agreed. Setting this to =0 seems the best thing, and it does fit fine
> inside 64K.
>
> > > +# no input, no boot menu
> > > +CONFIG_MOUSE=n
> > > +CONFIG_KEYBOARD=n
> > [...]
> > > +CONFIG_DRIVES=n
> >
> > I would not recommended disabling CONFIG_MOUSE, CONFIG_KEYBOARD,
> > CONFIG_DRIVES - I only had those in my config so as to avoid having to
> > specify all the device drivers. Ideally these would remain on and the
> > individual device drivers would be disabled.
>
> We are always use this in a virtual appliance. Interaction with the
> user is both impossible and undesirable. It either boots or not, and
> the whole appliance is discarded in seconds. We're always using
> -kernel with this SeaBIOS build, so probing drives is never needed.
Okay, but if it doesn't change the boot time, then it would be nicer
to use a standard rom for all boots.
I looked closer at your setup and it appears the SeaBIOS virtio-scsi
driver is very slow because it does a full search of all 256 possible
scsi targets. This full scan takes a lot of time. I put together a
quick patch (see below) to stop the scan early. Gerd/Paulo, do you
know if what I've done is valid and/or if there is a better way we can
limit the virtio-scsi scan?
I also found a way to reduce the overhead of the "shadow ram" code a
little. I have a patch (see below) for that as well.
Another consumer of time is ACPI table deployment. I wonder if you
could get similar results by running QEMU with "-no-acpi"?
Beyond that, I think the only other big time consumers of the default
seabios is debug messages. If so, then I think we can come up with a
way to limit these debug messages in SeaBIOS.
The SeaBIOS testing patches are at:
https://github.com/KevinOConnor/seabios/tree/testing
Thanks,
-Kevin
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, (continued)
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Paolo Bonzini, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?,
Kevin O'Connor <=
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/02
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Paolo Bonzini, 2016/04/02
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Kevin O'Connor, 2016/04/01
- Re: [Qemu-devel] Why is SeaBIOS used with -kernel?, Richard W.M. Jones, 2016/04/01