[SeaBIOS] [BUG] BSOD on Win2003 Server when 64bit PCI resource is present

Gerd Hoffmann kraxel at redhat.com
Mon Aug 6 10:21:58 CEST 2012


On 07/28/12 17:27, Kevin O'Connor wrote:
> On Thu, Jul 26, 2012 at 03:38:47PM +0000, Alexey Korolev wrote:
>> HI,
>>
>> Current version of Seabios is causing blue screen on Windows2003 when 64bit PCI resource is present and occupies high memory.
>>
>> BSOD Error code is: 0x000000A5 (0x02, 0xFFFFfADF6A446880, 0x1, 0xFFFFFADFAA34690)
>>
>> The issue is localized, it is related to presence of 64bit resource in _CRS method.
>>
>> If we disable a 64bit region from _CRS  the Win2003 load normally but this doesn't allow Windows to use 64bit resources.
>>
>> At the moment I have no idea how to fix this. Please help! 
> 
> Unfortunately, it's very difficult to debug acpi issues on Windows.
> Gerd's been on vacation this week - so, lets give him a chance to look
> at it when he gets back.  If it can't be resolved, we'll need to
> revert the patch that broke Win2003.

Well, it isn't a regression, so no need to revert IMHO.

It breaks on winxp / win2k3 only in case 64bit pci is actually used.
Which happens only in case we run out of address space below 4G.  This
is a setup which isn't supported at all with older seabios versions.

The very first patch revision had a static entry in the _CRS array
(before _CRS became a method) which didn't work with winxp too.  So we
ended up with the _CRS method which (beside updating the 32bit window)
adds the 64bit RessourceTemplate only in case we actually have 64bit pci
ressources, so we don't disturb existing setups with a new 64bit entry
they might not be able to handle.

I've never seen 64bit RessourceTemplate entries work with winxp, I fear
the winxp acpi code just can't handle 64bit RessourceTemplates ...

cheers,
  Gerd



More information about the SeaBIOS mailing list