|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 2/3] xen/igd: don't register rom bar twice
On 2026-07-10 02:35, Chuck Zmudzinski wrote:
> This also fixes a failed assertion in pci [1] for Qemu
> version 10 and higher when passing through an Intel
> IGD with an option ROM to the guest.
>
> [1] f6fc01c ("hw/pci: Assert a bar is not registered multiple times")
>
> Fixes: 881213f ("xen, gfx passthrough: retrieve VGA BIOS to work")
Please follow the QEMU standard way to reference a commit
`<at-least-12-digits-of-SHA-commit-id> (“Fixed commit subject”)`
https://www.qemu.org/docs/master/devel/submitting-a-patch.html#write-a-meaningful-commit-message
> Signed-off-by: Chuck Zmudzinski <brchuckz@xxxxxxx>
> ---
> Changes in v2:
> - get 'pcibus_t romsize' instead of 'PCIIORegion region'
> - move definition of romsize to the top of the function
> and make it constant
> - add stable to Cc list
>
> Changes in v3:
> - fix Cc address for qemu-stable
>
> hw/xen/xen_pt.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c
> index 474606e..8b30b61 100644
> --- a/hw/xen/xen_pt.c
> +++ b/hw/xen/xen_pt.c
> @@ -459,6 +459,7 @@ static int xen_pt_register_regions(XenPCIPassthroughState
> *s, uint16_t *cmd)
> {
> int i = 0;
> XenHostPCIDevice *d = &s->real_device;
> + const pcibus_t romsize = s->dev.io_regions[PCI_ROM_SLOT].size;
>
> /* Register PIO/MMIO BARs */
> for (i = 0; i < PCI_ROM_SLOT; i++) {
> @@ -495,7 +496,7 @@ static int xen_pt_register_regions(XenPCIPassthroughState
> *s, uint16_t *cmd)
> }
>
> /* Register expansion ROM address */
> - if (d->rom.base_addr && d->rom.size) {
> + if (!romsize && d->rom.base_addr && d->rom.size) {
> uint32_t bar_data = 0;
>
> /* Re-set BAR reported by OS, otherwise ROM can't be read. */
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |