|From:||Linus Torvalds <torvalds-AT-linux-foundation.org>|
|To:||Len Brown <lenb-AT-kernel.org>|
|Subject:||Re: [GIT PULL] x86 setup BIOS workarounds|
|Date:||Thu, 2 Apr 2009 12:31:15 -0700 (PDT)|
|Cc:||"H. Peter Anvin" <hpa-AT-zytor.com>, "Michael K. Johnson" <johnsonm-AT-rpath.com>, Justin Forbes <jmforbes-AT-linuxtx.org>, Jordan Hargrave <Jordan_Hargrave-AT-dell.com>, Ingo Molnar <mingo-AT-elte.hu>, Thomas Gleixner <tglx-AT-linutronix.org>, Linux Kernel Mailing List <linux-kernel-AT-vger.kernel.org>, linux-acpi-AT-vger.kernel.org|
On Thu, 2 Apr 2009, Len Brown wrote: > > Yes, this expects old BIOS to always return 20. Do you have any reason to expect that all BIOS'es are bug-free in this area? That would be a first. We already check for other error cases where the BIOS didn't do the right thing in other ways in its e820 routine, or clobbered the wrogn registers or whatever. Why would you expect that the return value would always be ok? > No, it does not expect old BIOS to have any particular value > in buf.ext_flags -- since that is examined only for size > 20. The point is, that expectation that the BIOS returns 20 seems very unreasonable. BIOS writers tend to have been on pain medication for so long that they can hardly remember their own name, much less actually make sure they follow all the documentation. Now, if Windows has actually _depended_ on the right return value since Win95, that would be a good, strong argument. Because that's the only case where we can pretty much depend on BIOS writers get things right - if Windows doesn't boot when they get it wrong. As far as I can tell, that has always been the only real quality assurance for most BIOS'es. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to email@example.com More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds