Regression: x-igd-opregion=off ignored in VFIO IGD quirk handling Description of problem: A regression in QEMU’s VFIO IGD initialization causes the `x-igd-opregion=off` parameter to be ignored, resulting in an error when passing through an Intel iGPU SR-IOV Virtual Function (VF) at PCI address `00:02.1`: `qemu-system-x86_64: -device vfio-pci,host=0000:00:02.1,...: Device does not supports IGD OpRegion feature: No such device` Automatic detection of IGD-OpRegion assumes any Intel iGPU (including GVT-g) will have it but SR-IOV VFs do not. Steps to reproduce: 1. Configure an Intel iGPU with SR-IOV enabled, creating a VF at `00:02.1`. 2. Bind the VF to the `vfio-pci` driver: ``` echo 0000:00:02.1 > /sys/bus/pci/drivers/i915/unbind either: echo "8086 4680" > /sys/bus/pci/drivers/vfio-pci/new_id or: echo 0000:00:02.1 > /sys/bus/pci/drivers/vfio-pci/bind ``` 3. Run QEMU with the command line above, including `-device vfio-pci,host=0000:00:02.1,...,x-igd-opregion=off`. Additional information: - **Hardware details**: - `00:02.1 VGA compatible controller [0300]: Intel Corporation AlderLake-S GT1 [8086:4680] (rev 0c)` - Host motherboard: MSI PRO Z690-A DDR4 - CPU: Intel Core i5 12600K - **Regression cause**: The issue was introduced by commit 7be29f2f1a3f5b037d27eedbd5df9f441e8c8c16, which changed `vfio_pci_igd_config_quirk` to detect OpRegion automatically, ignoring `vdev->igd_opregion=false`. - **Proposed fix**: I have a patch that adds checks for `vdev->igd_opregion` in `vfio_pci_igd_config_quirk` and `vfio_pci_kvmgt_config_quirk`, skipping OpRegion handling when `x-igd-opregion=off`. The patch has been tested, confirming the VM starts without errors. I will submit it to qemu-devel@nongnu.org with a reference to this issue.