From: Frederic Konrad <fred.konrad@greensocs.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-stable@nongnu.org, qemu-devel@nongnu.org, mst@redhat.com
Subject: Re: [Qemu-devel] [PATCH 12/11] virtio-pci: avoid extra pointer dereferences on fast path
Date: Tue, 15 Oct 2013 14:13:54 +0200 [thread overview]
Message-ID: <525D3182.8090304@greensocs.com> (raw)
In-Reply-To: <1381767839-11398-1-git-send-email-pbonzini@redhat.com>
Hi Paolo,
This looks ok, but I don't find the branch where it applies?
Seems it's already fixed on master.
Thanks,
Fred
On 14/10/2013 18:23, Paolo Bonzini wrote:
> We do not need to access vdev on the MSI-X fast path of virtio_pci_notify.
>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> It is possible to get rid of BusChild altogether, but even then
> this would be one less pointer dereference, and it's a simpler
> patch. So let's do this instead for 1.7.
>
> hw/virtio/virtio-pci.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
> index 1a179ea..a191c24 100644
> --- a/hw/virtio/virtio-pci.c
> +++ b/hw/virtio/virtio-pci.c
> @@ -113,12 +113,13 @@ static inline VirtIOPCIProxy *to_virtio_pci_proxy_fast(DeviceState *d)
> static void virtio_pci_notify(DeviceState *d, uint16_t vector)
> {
> VirtIOPCIProxy *proxy = to_virtio_pci_proxy_fast(d);
> - VirtIODevice *vdev = virtio_bus_get_device(&proxy->bus);
>
> if (msix_enabled(&proxy->pci_dev))
> msix_notify(&proxy->pci_dev, vector);
> - else
> + else {
> + VirtIODevice *vdev = virtio_bus_get_device(&proxy->bus);
> qemu_set_irq(proxy->pci_dev.irq[0], vdev->isr & 1);
> + }
> }
>
> static void virtio_pci_save_config(DeviceState *d, QEMUFile *f)
next prev parent reply other threads:[~2013-10-15 12:14 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-20 14:57 [Qemu-devel] [PATCH 00/11] virtio: cleanup and fix hot-unplug Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 01/11] virtio-bus: remove vdev field Paolo Bonzini
2013-10-14 16:23 ` [Qemu-devel] [PATCH 12/11] virtio-pci: avoid extra pointer dereferences on fast path Paolo Bonzini
2013-10-15 12:13 ` Frederic Konrad [this message]
2013-10-15 12:16 ` Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 00/12] virtio: cleanup and fix hot-unplug Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 01/12] virtio-ccw: move virtio_ccw_stop_ioeventfd to virtio_ccw_busdev_unplug Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 02/12] virtio-bus: remove vdev field Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 03/12] virtio-ccw: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 04/12] virtio-pci: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 05/12] virtio-bus: cleanup plug/unplug interface Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 06/12] virtio-blk: switch exit callback to VirtioDeviceClass Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 07/12] virtio-serial: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 08/12] virtio-net: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 09/12] virtio-scsi: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 10/12] virtio-balloon: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 11/12] virtio-rng: " Paolo Bonzini
2013-10-15 16:46 ` [Qemu-devel] [PATCH v3 12/12] virtio-pci: add device_unplugged callback Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 02/11] virtio-pci: remove vdev field Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 03/11] virtio-ccw: " Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 04/11] virtio-bus: cleanup plug/unplug interface Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 05/11] virtio-blk: switch exit callback to VirtioDeviceClass Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 06/11] virtio-serial: " Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 07/11] virtio-net: " Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 08/11] virtio-scsi: " Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 09/11] virtio-balloon: " Paolo Bonzini
2013-09-20 14:57 ` [Qemu-devel] [PATCH 10/11] virtio-rng: " Paolo Bonzini
2013-09-20 14:58 ` [Qemu-devel] [PATCH 11/11] virtio-pci: add device_unplugged callback Paolo Bonzini
2013-09-21 19:17 ` [Qemu-devel] [PATCH 00/11] virtio: cleanup and fix hot-unplug Michael S. Tsirkin
2013-09-22 8:08 ` Paolo Bonzini
2013-10-08 15:45 ` Paolo Bonzini
2013-10-08 17:02 ` Paolo Bonzini
2013-10-15 12:32 ` Michael S. Tsirkin
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=525D3182.8090304@greensocs.com \
--to=fred.konrad@greensocs.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@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.