[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RESEND 1/3] OvmfPkg/XenSupport: remove usage of prefetchable PCI host bridge aperture
On 03/19/19 15:03, Anthony PERARD wrote: > On Thu, Mar 14, 2019 at 07:45:56PM +0000, Igor Druzhinin wrote: >> On 14/03/2019 17:41, Anthony PERARD wrote: >>> Hi, >>> >>> On Wed, Mar 06, 2019 at 12:40:54PM +0000, Igor Druzhinin wrote: >>>> This aperture doesn't exist in OVMF and trying to use it causes >>> >>> I'm trying to understand what you mean by writing "doesn't exist in >>> OVMF". Are prefetchable BAR not handled by ScanForRootBridges() ? >>> Or is it the emulation of the config space that isn't correct? >>> Maybe QEMU should lies about a BAR been prefetchable? >> >> The problem here is: hvmloader places BARs initially disregarding >> prefetchable bit in an arbitrary order because essentially there is only >> 1 aperture for the host bridge in emulated system under Xen (and KVM as >> well). In PcatPciRootBridgeParseBars() we construct apertures for high >> level OVMF code by reading the BAR placement information after >> hvmloader. It often appears that there are prefetchable and >> non-prefetchable BARs coexist with each other and make prefetchable and >> non-prefetchable apertures overlap. This eventually triggers an >> assertion in high level OVMF code because that shouldn't happen. > > Thanks for the explanation. Could you add it to the patch description? > >> OVMF for KVM is not using prefetchable BAR at all - see >> PciHostBridgeGetRootBridges() in which it passes mNonExistAperture dummy >> object to high level code. I think it's wrong to construct a >> prefetchable aperture for Xen and this code should be removed as it's >> done for QEMU-KVM. Do you think this patch needs to do that? > > It would be nice to remove the code that isn't useful so feel free to do > it and/or keep the current patch with the description updated. Right -- I'd like to add one keyword here, for background: EFI_PCI_HOST_BRIDGE_COMBINE_MEM_PMEM. (It's documented in both edk2 [MdePkg/Include/Protocol/PciHostBridgeResourceAllocation.h] and the PI spec [EFI_PCI_HOST_BRIDGE_RESOURCE_ALLOCATION_PROTOCOL.GetAllocAttributes()].) Thanks Laszlo _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |