On Tue, 2014-05-13 at 04:54 +0200, Laszlo Ersek wrote:
> 
> But, second, we've known for quite some time that windows server 2008 r2
> works well with the SeaBIOS CSM and a few edk2 patches (thanks again to
> David Woodhouse and Kevin O'Connor).
> 
> There are two problems with the CSM, one specific (and possibly
> accidental/fixable), and one generic (and inherent).
> 
> - The specific (possibly accidental, fixable) problem is that using the
> SeaBIOS CSM plus the CSM infrastructure in edk2 breaks OVMF's S3 resume.
> I had not set out to track this down because of the other problem (see
> below).

Wimp :)

> - The generic / inherent problem with the current SeaBIOS CSM + the edk2
> CSM infrastructure is that the combination is a nightmare to trace,
> debug, and modify, for mere mortals. It switches from long mode to real
> mode and vice versa, and it's impossible to follow unless you know the
> relevant magic from the Intel SDM from memory.

Actually I'm not sure that's any more true for CSM than it is for EDK2
itself. If it doesn't work, most mortals will just give up.

You did a *lot* of amazing work on enabling S3 support in OVMF. That was
dark magic, and yes its interaction with CSM will also involve darker
magic. But once it's fixed, it's fixed. It's largely a solved problem
and shouldn't *need* to be re-debugged very often. Especially since 'git
bisect' is such a no-brainer to use once you at least have a point in
history that *did* work¹. 

> ...
> (Without enabling the CSM in an OVMF build, the option to legacy-boot is
> lost of course as well, but I expressly don't desire that option. Just
> boot legacy OSes with pure SeaBIOS; it's easy to choose your firmware in
> a virtual machine.)

I don't think I agree that it's easy to choose your firmware. If I'm
using virt-manager/libvirt under Fedora, how do I do it? I suppose it'd
be implicit in my choice of operating system? So I might be expected to
know that selecting "Fedora 20" will use legacy BIOS while "Fedora 21"
will magically switch me over to UEFI, according to criteria that are
entirely opaque to me? And if I'm using Ubuntu or something else, the
choices there might be entirely different?

Or were you really intending the tools to give the user an explicit
choice of legacy vs. UEFI rather than depending on the OS? That would
kind of suck too.

Really, I think we should make CSM work and keep it working, then it's a
no-brainer for users because things Just Work™. Never underestimate the
collective stupidity of end-users. If we can make it Just Work™,
especially since we're so close already, then I think we should.

Which is why I spent the time to enable CSM in the first place, of
course. Not to mention the fact that having OVMF+CSM as a default
firmware will serve to accelerate adoption of UEFI in virtual machines,
and that gives people a *really* easy playground to get involved in EDK2
source code; fixing bugs and making improvements.

-- 
David Woodhouse                            Open Source Technology Centre
david.woodho...@intel.com                              Intel Corporation

¹ Assuming everyone is using git properly and there are never any large
  code dumps labelled "merge from foobar SVN" of course. Anyone doing
  *that* should have their commit privs revoked until they've retaken
  the "source code management 101" course. Or sobered up.


Attachment: smime.p7s
Description: S/MIME cryptographic signature

------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to