All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Jordan Justen <jljusten@gmail.com>
Cc: qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] OVMF, SeaBIOS & non-CSM based legacy boot
Date: Mon, 21 Mar 2011 13:27:41 -0500	[thread overview]
Message-ID: <4D87989D.70005@codemonkey.ws> (raw)
In-Reply-To: <AANLkTi=c8DwrC9dxPmVA4vNg2-2NJn844m=eOMQBNJHd@mail.gmail.com>

On 03/21/2011 01:14 PM, Jordan Justen wrote:
> This weekend I spent some time working on loading SeaBIOS from OVMF to
> start a legacy boot.  I was able to get x86&  x86-64 Linux to legacy
> boot using this method.
>
> Unfortunately, (I think) it is not nearly as nice a having a true CSM.
>   Basically, you have to decide at some point in the OVMF boot that you
> want to legacy boot, and once you start SeaBIOS running, OVMF/UEFI

Interesting.  How much time does OVMF add to the total boot time when 
taking this approach?

> will never be in the picture again (until system reset).
>
> Contrast this to using a CSM where you can:
> * Load a legacy option ROM (vbios, or disk rom),
>    and use it during a UEFI boot

Is there gPXE for UEFI yet?

Other than that, this probably matters most of with device passthrough.  
I think this is a limitation we could live with in the not-to-short term 
though.

> * Fail a legacy boot, and potentially return back to UEFI if it fails.
>    (Not in all cases, if the failed boot alters the system state significantly)

I think the most typical use-case here is -boot cd or -boot dc.  From 
what I can tell, EFI support El Torito so it wouldn't be necessary to 
involve BIOS to handle booting from CDROMs.  Is that correct?

> * Specify via UEFI the boot process which disk to legacy boot in the CSM

I'm sure this is workable.

> So, would this be valuable (in the short term) to help move forward
> QEMU's usage of OVMF and add UEFI support?  Or would QEMU require true
> CSM support?

I think this certainly helps make the discussion more concrete.  I don't 
see any show stoppers here.

Regards,

Anthony Liguori

> Thanks,
>
> -Jordan
>

  reply	other threads:[~2011-03-21 18:27 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-21 18:14 [Qemu-devel] OVMF, SeaBIOS & non-CSM based legacy boot Jordan Justen
2011-03-21 18:27 ` Anthony Liguori [this message]
2011-03-21 21:06   ` Stefan Hajnoczi
2011-03-21 21:17     ` Michael Brown
2011-03-21 21:31       ` Jordan Justen
2011-03-21 21:40       ` Stefan Hajnoczi
2011-03-21 23:14         ` Michael Brown
2011-03-21 21:23   ` Jordan Justen
2011-03-22  8:00     ` Gleb Natapov
2011-03-22 19:28       ` Jordan Justen
2011-03-22 20:07         ` Gleb Natapov
2011-03-22 21:53           ` Jordan Justen
2011-03-23 12:36             ` Gleb Natapov
2011-03-23 22:32               ` Jordan Justen
2011-03-24 11:53                 ` Gleb Natapov
2011-03-24 16:46                   ` Jordan Justen
2011-03-24 18:36                     ` Gleb Natapov
2011-03-24 12:27                 ` Michal Suchanek
2011-03-24 13:44                   ` Gleb Natapov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4D87989D.70005@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=jljusten@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.