[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v2 05/21][SeaBIOS] pciinit: Fix pcimem_start
From: |
Gerd Hoffmann |
Subject: |
Re: [Qemu-devel] [RFC PATCH v2 05/21][SeaBIOS] pciinit: Fix pcimem_start value |
Date: |
Wed, 11 Jul 2012 13:56:19 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:10.0.5) Gecko/20120601 Thunderbird/10.0.5 |
On 07/11/12 12:31, Vasilis Liaskovitis wrote:
> In order to hotplug memory between RamSize and BUILD_PCIMEM_START, the pci
> window needs to start at BUILD_PCIMEM_START (0xe0000000).
> Otherwise, the guest cannot online new dimms at those ranges due to pci_root
> window conflicts. (workaround for linux guest is booting with pci=nocrs)
> static void pci_bios_map_devices(struct pci_bus *busses)
> {
> - pcimem_start = RamSize;
> + pcimem_start = BUILD_PCIMEM_START;
It isn't that simple. For the 32bit pci window it will work, but will
leaves address space unused instead of assigning it to the 32bit pci
window. For the 64bit pci window it will not work.
You have to walk the dimms and figure what the highest used address is,
for both below-4g and above-4g. Then fill two variable with it and make
the pci init code use that instead of RamSize and RamSizeOver4G.
cheers,
Gerd
[Qemu-devel] [RFC PATCH v2 08/21] pc: calculate dimm physical addresses and adjust memory map, Vasilis Liaskovitis, 2012/07/11
[Qemu-devel] [RFC PATCH v2 04/21][SeaBIOS] acpi: generate hotplug memory devices, Vasilis Liaskovitis, 2012/07/11
[Qemu-devel] [RFC PATCH v2 02/21][SeaBIOS] Add SSDT memory device support, Vasilis Liaskovitis, 2012/07/11
[Qemu-devel] [RFC PATCH v2 14/21][SeaBIOS] acpi_dsdt: Support _OST dimm method, Vasilis Liaskovitis, 2012/07/11
[Qemu-devel] [RFC PATCH v2 17/21][SeaBIOS] acpi_dsdt: Revert internal dimm state on _OST failure, Vasilis Liaskovitis, 2012/07/11