From: "Michael S. Tsirkin" <mst@redhat.com>
To: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>, qemu-devel@nongnu.org
Subject: Re: [PATCH] virtio-vga: fix virtio-vga bar ordering
Date: Wed, 22 Apr 2020 02:04:36 -0400 [thread overview]
Message-ID: <20200422020354-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20200421214853.14412-1-anthoine.bourgeois@gmail.com>
On Tue, Apr 21, 2020 at 11:48:53PM +0200, Anthoine Bourgeois wrote:
> With virtio-vga, pci bar are reordered. Bar #2 is used for compatibility
> with stdvga. By default, bar #2 is used by virtio modern io bar.
> This bar is the last one introduce in the virtio pci bar layout and it's
> crushed by the virtio-vga reordering. So virtio-vga and
> modern-pio-notify are incompatible because virtio-vga failed to
> initialize with this option.
>
> This fix exchange the modern io bar with the modern memory bar,
> replacing the msix bar that is never impacted anyway.
>
> Signed-off-by: Anthoine Bourgeois <anthoine.bourgeois@gmail.com>
Such changes generally need to be tied to machine version.
> ---
> hw/display/virtio-vga.c | 2 +-
> hw/virtio/virtio-pci.c | 1 +
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c
> index 2b4c2aa126..f5f8737c60 100644
> --- a/hw/display/virtio-vga.c
> +++ b/hw/display/virtio-vga.c
> @@ -113,7 +113,7 @@ static void virtio_vga_base_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
> * the stdvga mmio registers at the start of bar #2.
> */
> vpci_dev->modern_mem_bar_idx = 2;
> - vpci_dev->msix_bar_idx = 4;
> + vpci_dev->modern_io_bar_idx = 4;
>
> if (!(vpci_dev->flags & VIRTIO_PCI_FLAG_PAGE_PER_VQ)) {
> /*
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index 4cb784389c..9c5efaa06e 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -1705,6 +1705,7 @@ static void virtio_pci_realize(PCIDevice *pci_dev, Error **errp)
> *
> * region 0 -- virtio legacy io bar
> * region 1 -- msi-x bar
> + * region 2 -- virtio modern io bar
> * region 4+5 -- virtio modern memory (64bit) bar
> *
> */
> --
> 2.20.1
next prev parent reply other threads:[~2020-04-22 6:06 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-21 21:48 [PATCH] virtio-vga: fix virtio-vga bar ordering Anthoine Bourgeois
2020-04-22 6:04 ` Michael S. Tsirkin [this message]
2020-04-22 10:49 ` Gerd Hoffmann
2020-04-22 14:25 ` Michael S. Tsirkin
2020-04-22 10:46 ` Gerd Hoffmann
2020-04-22 22:02 ` Anthoine Bourgeois
2020-04-23 11:30 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200422020354-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=anthoine.bourgeois@gmail.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.