[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen/mcfg: Call PHYSDEVOP_pci_mmcfg_reserved before PCI enumeration
On Mon, Sep 21, 2015 at 10:21 PM, Jan Beulich <jbeulich@xxxxxxxx> wrote: > I don't follow: Surely Dom0 first establishes MCFG areas to be used, and > only then scans the buses for devices, resulting in them to be reported to > the hypervisor? That seems like a reasonable expectation, but while Linux 4.2 finds the mmcfg areas before scanning the PCI bus, it doesn't tell Xen about them until later: acpi_init() first calls pci_mmcfg_late_init(), which searches ACPI for mmcfgs and checks that they are reserved in E820 or ACPI (vs pci_mmcfg_early_init() which searches both ACPI and hardcoded host bridges but checks only E820 for reservations); then calls acpi_scan_init() which scans the buses and calls the pci_device_add hypercall for each device. The pci_mmcfg_reserved hypercall is invoked later by xen_mcfg_late(). So if the contract is that Dom0 tells Xen about mmcfgs before the devices they cover, then Linux ought to call pci_mmcfg_reserved from (or immediately after) both pci_mmcfg_early_init() and pci_mmcfg_late_init(). --Ed _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |