Hi Laszlo, Michael

On 09/21/2018 08:41 PM, Laszlo Ersek wrote:
On 09/21/18 19:20, Michael S. Tsirkin wrote:
On Fri, Sep 21, 2018 at 06:01:30PM +0300, Marcel Apfelbaum wrote:
On 09/20/2018 05:49 PM, Laszlo Ersek wrote:
Now, there's another complication, obviously -- machine type compat. In
commit 9fa99d2519cb, we added the "pci_hole64_fix" compat property. I
assume the additional fix I'm proposing requires another compat
property?
We have to, is a guest visible change. I really don't like these compat
properties, but I don't see a way around it.
Well does it only affect ACPI? Or other stuff? ACPI changes
are mostly safe without need for compat things.
My understanding is that it affects ACPI only:

(1) q35_host_get_pci_hole64_end() is only referenced in the code when it
is set as a getter for the PCI_HOST_PROP_PCI_HOLE64_END property, in
q35_host_initfn() [hw/pci-host/q35.c].

(2) i440fx_pcihost_get_pci_hole64_end() is only referenced in the code
when it is set as a getter for the same PCI_HOST_PROP_PCI_HOLE64_END
property, in i440fx_pcihost_initfn() [hw/pci-host/piix.c].

(3) The PCI_HOST_PROP_PCI_HOLE64_END property is only fetched in
acpi_get_pci_holes() [hw/i386/acpi-build.c].

(4) acpi_get_pci_holes() is only called in acpi_build()
[hw/i386/acpi-build.c].

(5) The resultant "pci_hole64" structure is passed to build_dsdt() only.

Yes, it affects only ACPI. But the ACPI tables are guest visible.
On the other hand it can be seen as a "firmware update" and not
as a machine change.

As I previously stated I prefer to avoid another compat property.
Thanks,
Marcel

Thanks
Laszlo


Reply via email to