From: "Michael S. Tsirkin" <mst@redhat.com>
To: 李菲 <lifei.shirley@bytedance.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
Jason Wang <jasowang@redhat.com>, Pawel Moll <pawel.moll@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Fam Zheng <zhengfeiran@bytedance.com>
Subject: [virtio-dev] Re: [External Email] Re: [PATCH v1 0/2] virtio-mmio: support multiple interrupt vectors
Date: Mon, 22 Jul 2019 04:39:47 -0400 [thread overview]
Message-ID: <20190722043707-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CA+=e4K5rn7-avNT3e07dfXkh=ZO2+RvthjqW15gZv-uFYrCs3A@mail.gmail.com>
On Mon, Jul 22, 2019 at 11:22:02AM +0800, 李菲 wrote:
> On Fri, Jul 19, 2019 at 11:14 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > On Fri, Jul 19, 2019 at 09:31:33PM +0800, Fei Li wrote:
> > > Hi,
> > >
> > > This patch series implements multiple interrupt vectors support for
> > > virtio-mmio device. This is especially useful for multiqueue vhost-net
> > > device when using firecracker micro-vms as the guest.
> > >
> > > Test result:
> > > With 8 vcpus & 8 net queues set, one vhost-net device with 8 irqs can
> > > receive 9 times more pps comparing with only one irq:
> > > - 564830.38 rxpck/s for 8 irqs on
> > > - 67665.06 rxpck/s for 1 irq on
> > >
> > > Please help to review, thanks!
> > >
> > > Have a nice day
> > > Fei
> >
> >
> > Interesting. The spec says though:
> >
> > 4.2.3.4
> > Notifications From The Device
> > The memory mapped virtio device is using a single, dedicated interrupt signal, which is asserted when at
> > least one of the bits described in the description of InterruptStatus is set. This is how the device sends a
> > used buffer notification or a configuration change notification to the device.
> >
> Yes, the spec needs to be updated if we want to use mult-irqs.
> >
> > So I'm guessing we need to change the host/guest interface?
> Just to confirm, does the "the host/guest interface" you mentioned mean how to
> pass the irq information from the user space tool to guest kernel?
> In this patch, we do this by passing the [irq_start, irq_end]
> interface via setting guest
> kernel command line, that is done in vm_cmdline_set().
> Also there is another way to do this: add two new registers describing irq info
> (irq_start & irq_end OR irq_start & irq_numbers) to the virtio config space.
>
> Which one do you prefer?
I'm not sure - so far irq was passed on the command line, right?
The first step in implementing any spec change would be to update qemu
code to virtio 1. Which is not a huge project but so far no one
bothered.
> > If true pls cc virtio-dev.
> Sure.
> >
> > Also, do we need to update dt bindings documentation?
> You mean the following doc? Sure. :)
> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/virtio/mmio.txt
>
> Thanks for the review!
>
> Have a nice day
> Fei
>
>
> >
> > >
> > > Fam Zheng (1):
> > > virtio-mmio: Process vrings more proactively
> > >
> > > Fei Li (1):
> > > virtio-mmio: support multiple interrupt vectors
> > >
> > > drivers/virtio/virtio_mmio.c | 238 +++++++++++++++++++++++++++++++++++--------
> > > 1 file changed, 196 insertions(+), 42 deletions(-)
> > >
> > > --
> > > 2.11.0
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: 李菲 <lifei.shirley@bytedance.com>
Cc: virtio-dev@lists.oasis-open.org, linux-kernel@vger.kernel.org,
Jason Wang <jasowang@redhat.com>, Pawel Moll <pawel.moll@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Fam Zheng <zhengfeiran@bytedance.com>
Subject: Re: [External Email] Re: [PATCH v1 0/2] virtio-mmio: support multiple interrupt vectors
Date: Mon, 22 Jul 2019 04:39:47 -0400 [thread overview]
Message-ID: <20190722043707-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CA+=e4K5rn7-avNT3e07dfXkh=ZO2+RvthjqW15gZv-uFYrCs3A@mail.gmail.com>
On Mon, Jul 22, 2019 at 11:22:02AM +0800, 李菲 wrote:
> On Fri, Jul 19, 2019 at 11:14 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > On Fri, Jul 19, 2019 at 09:31:33PM +0800, Fei Li wrote:
> > > Hi,
> > >
> > > This patch series implements multiple interrupt vectors support for
> > > virtio-mmio device. This is especially useful for multiqueue vhost-net
> > > device when using firecracker micro-vms as the guest.
> > >
> > > Test result:
> > > With 8 vcpus & 8 net queues set, one vhost-net device with 8 irqs can
> > > receive 9 times more pps comparing with only one irq:
> > > - 564830.38 rxpck/s for 8 irqs on
> > > - 67665.06 rxpck/s for 1 irq on
> > >
> > > Please help to review, thanks!
> > >
> > > Have a nice day
> > > Fei
> >
> >
> > Interesting. The spec says though:
> >
> > 4.2.3.4
> > Notifications From The Device
> > The memory mapped virtio device is using a single, dedicated interrupt signal, which is asserted when at
> > least one of the bits described in the description of InterruptStatus is set. This is how the device sends a
> > used buffer notification or a configuration change notification to the device.
> >
> Yes, the spec needs to be updated if we want to use mult-irqs.
> >
> > So I'm guessing we need to change the host/guest interface?
> Just to confirm, does the "the host/guest interface" you mentioned mean how to
> pass the irq information from the user space tool to guest kernel?
> In this patch, we do this by passing the [irq_start, irq_end]
> interface via setting guest
> kernel command line, that is done in vm_cmdline_set().
> Also there is another way to do this: add two new registers describing irq info
> (irq_start & irq_end OR irq_start & irq_numbers) to the virtio config space.
>
> Which one do you prefer?
I'm not sure - so far irq was passed on the command line, right?
The first step in implementing any spec change would be to update qemu
code to virtio 1. Which is not a huge project but so far no one
bothered.
> > If true pls cc virtio-dev.
> Sure.
> >
> > Also, do we need to update dt bindings documentation?
> You mean the following doc? Sure. :)
> https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/virtio/mmio.txt
>
> Thanks for the review!
>
> Have a nice day
> Fei
>
>
> >
> > >
> > > Fam Zheng (1):
> > > virtio-mmio: Process vrings more proactively
> > >
> > > Fei Li (1):
> > > virtio-mmio: support multiple interrupt vectors
> > >
> > > drivers/virtio/virtio_mmio.c | 238 +++++++++++++++++++++++++++++++++++--------
> > > 1 file changed, 196 insertions(+), 42 deletions(-)
> > >
> > > --
> > > 2.11.0
next prev parent reply other threads:[~2019-07-22 8:39 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-19 13:31 [PATCH v1 0/2] virtio-mmio: support multiple interrupt vectors Fei Li
2019-07-19 13:31 ` [PATCH 1/2] virtio-mmio: Process vrings more proactively Fei Li
2019-07-19 15:17 ` Michael S. Tsirkin
2019-07-22 2:28 ` [External Email] " Fam Zheng
2019-07-25 14:33 ` Michael S. Tsirkin
2019-07-19 13:31 ` [PATCH 2/2] virtio-mmio: support multiple interrupt vectors Fei Li
2019-07-19 15:14 ` [PATCH v1 0/2] " Michael S. Tsirkin
2019-07-22 3:22 ` [External Email] " 李菲
2019-07-22 5:10 ` [virtio-dev] Fwd: " 李菲
2019-07-22 8:39 ` Michael S. Tsirkin [this message]
2019-07-22 8:39 ` Michael S. Tsirkin
2019-07-22 13:43 ` [virtio-dev] " 李菲
2019-07-22 13:43 ` 李菲
2019-07-30 20:26 ` [virtio-dev] " Michael S. Tsirkin
2019-07-30 20:26 ` Michael S. Tsirkin
2019-07-31 4:04 ` [virtio-dev] " 李菲
2019-07-31 4:04 ` 李菲
2019-08-02 11:01 ` Sergio Lopez
2019-07-31 4:10 ` 李菲
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=20190722043707-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=jasowang@redhat.com \
--cc=lifei.shirley@bytedance.com \
--cc=linux-kernel@vger.kernel.org \
--cc=pawel.moll@arm.com \
--cc=suzuki.poulose@arm.com \
--cc=virtio-dev@lists.oasis-open.org \
--cc=zhengfeiran@bytedance.com \
/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.