From: "Michael S. Tsirkin" <mst@redhat.com>
To: "Liu, Jing2" <jing2.liu@linux.intel.com>
Cc: Jason Wang <jasowang@redhat.com>,
Zha Bin <zhabin@linux.alibaba.com>,
linux-kernel@vger.kernel.org, virtio-dev@lists.oasis-open.org,
slp@redhat.com, qemu-devel@nongnu.org,
chao.p.peng@linux.intel.com, gerry@linux.alibaba.com
Subject: Re: [virtio-dev] Re: [PATCH v2 4/5] virtio-mmio: add MSI interrupt feature support
Date: Tue, 11 Feb 2020 06:21:56 -0500 [thread overview]
Message-ID: <20200211061932-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <c42c8b49-5357-f341-2942-ba84afc25437@linux.intel.com>
On Tue, Feb 11, 2020 at 11:35:43AM +0800, Liu, Jing2 wrote:
>
> On 2/11/2020 11:17 AM, Jason Wang wrote:
> >
> > On 2020/2/10 下午5:05, Zha Bin wrote:
> > > From: Liu Jiang<gerry@linux.alibaba.com>
> > >
> > > Userspace VMMs (e.g. Qemu microvm, Firecracker) take advantage of using
> > > virtio over mmio devices as a lightweight machine model for modern
> > > cloud. The standard virtio over MMIO transport layer only supports one
> > > legacy interrupt, which is much heavier than virtio over PCI transport
> > > layer using MSI. Legacy interrupt has long work path and causes specific
> > > VMExits in following cases, which would considerably slow down the
> > > performance:
> > >
> > > 1) read interrupt status register
> > > 2) update interrupt status register
> > > 3) write IOAPIC EOI register
> > >
> > > We proposed to add MSI support for virtio over MMIO via new feature
> > > bit VIRTIO_F_MMIO_MSI[1] which increases the interrupt performance.
> > >
> > > With the VIRTIO_F_MMIO_MSI feature bit supported, the virtio-mmio MSI
> > > uses msi_sharing[1] to indicate the event and vector mapping.
> > > Bit 1 is 0: device uses non-sharing and fixed vector per event mapping.
> > > Bit 1 is 1: device uses sharing mode and dynamic mapping.
> >
> >
> > I believe dynamic mapping should cover the case of fixed vector?
> >
> Actually this bit *aims* for msi sharing or msi non-sharing.
>
> It means, when msi sharing bit is 1, device doesn't want vector per queue
>
> (it wants msi vector sharing as name) and doesn't want a high interrupt
> rate.
>
> So driver turns to !per_vq_vectors and has to do dynamical mapping.
>
> So they are opposite not superset.
>
> Thanks!
>
> Jing
what's the point of all this flexibility? the cover letter
complains about the code size of pci, then you go back
and add a ton of options with no justification.
>
> > Thanks
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
> > For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
> >
---------------------------------------------------------------------
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: "Liu, Jing2" <jing2.liu@linux.intel.com>
Cc: Jason Wang <jasowang@redhat.com>,
Zha Bin <zhabin@linux.alibaba.com>,
linux-kernel@vger.kernel.org, virtio-dev@lists.oasis-open.org,
slp@redhat.com, qemu-devel@nongnu.org,
chao.p.peng@linux.intel.com, gerry@linux.alibaba.com
Subject: Re: [virtio-dev] Re: [PATCH v2 4/5] virtio-mmio: add MSI interrupt feature support
Date: Tue, 11 Feb 2020 06:21:56 -0500 [thread overview]
Message-ID: <20200211061932-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <c42c8b49-5357-f341-2942-ba84afc25437@linux.intel.com>
On Tue, Feb 11, 2020 at 11:35:43AM +0800, Liu, Jing2 wrote:
>
> On 2/11/2020 11:17 AM, Jason Wang wrote:
> >
> > On 2020/2/10 下午5:05, Zha Bin wrote:
> > > From: Liu Jiang<gerry@linux.alibaba.com>
> > >
> > > Userspace VMMs (e.g. Qemu microvm, Firecracker) take advantage of using
> > > virtio over mmio devices as a lightweight machine model for modern
> > > cloud. The standard virtio over MMIO transport layer only supports one
> > > legacy interrupt, which is much heavier than virtio over PCI transport
> > > layer using MSI. Legacy interrupt has long work path and causes specific
> > > VMExits in following cases, which would considerably slow down the
> > > performance:
> > >
> > > 1) read interrupt status register
> > > 2) update interrupt status register
> > > 3) write IOAPIC EOI register
> > >
> > > We proposed to add MSI support for virtio over MMIO via new feature
> > > bit VIRTIO_F_MMIO_MSI[1] which increases the interrupt performance.
> > >
> > > With the VIRTIO_F_MMIO_MSI feature bit supported, the virtio-mmio MSI
> > > uses msi_sharing[1] to indicate the event and vector mapping.
> > > Bit 1 is 0: device uses non-sharing and fixed vector per event mapping.
> > > Bit 1 is 1: device uses sharing mode and dynamic mapping.
> >
> >
> > I believe dynamic mapping should cover the case of fixed vector?
> >
> Actually this bit *aims* for msi sharing or msi non-sharing.
>
> It means, when msi sharing bit is 1, device doesn't want vector per queue
>
> (it wants msi vector sharing as name) and doesn't want a high interrupt
> rate.
>
> So driver turns to !per_vq_vectors and has to do dynamical mapping.
>
> So they are opposite not superset.
>
> Thanks!
>
> Jing
what's the point of all this flexibility? the cover letter
complains about the code size of pci, then you go back
and add a ton of options with no justification.
>
> > Thanks
> >
> >
> >
> > ---------------------------------------------------------------------
> > 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: "Liu, Jing2" <jing2.liu@linux.intel.com>
Cc: virtio-dev@lists.oasis-open.org,
Zha Bin <zhabin@linux.alibaba.com>,
slp@redhat.com, Jason Wang <jasowang@redhat.com>,
linux-kernel@vger.kernel.org, qemu-devel@nongnu.org,
chao.p.peng@linux.intel.com, gerry@linux.alibaba.com
Subject: Re: [virtio-dev] Re: [PATCH v2 4/5] virtio-mmio: add MSI interrupt feature support
Date: Tue, 11 Feb 2020 06:21:56 -0500 [thread overview]
Message-ID: <20200211061932-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <c42c8b49-5357-f341-2942-ba84afc25437@linux.intel.com>
On Tue, Feb 11, 2020 at 11:35:43AM +0800, Liu, Jing2 wrote:
>
> On 2/11/2020 11:17 AM, Jason Wang wrote:
> >
> > On 2020/2/10 下午5:05, Zha Bin wrote:
> > > From: Liu Jiang<gerry@linux.alibaba.com>
> > >
> > > Userspace VMMs (e.g. Qemu microvm, Firecracker) take advantage of using
> > > virtio over mmio devices as a lightweight machine model for modern
> > > cloud. The standard virtio over MMIO transport layer only supports one
> > > legacy interrupt, which is much heavier than virtio over PCI transport
> > > layer using MSI. Legacy interrupt has long work path and causes specific
> > > VMExits in following cases, which would considerably slow down the
> > > performance:
> > >
> > > 1) read interrupt status register
> > > 2) update interrupt status register
> > > 3) write IOAPIC EOI register
> > >
> > > We proposed to add MSI support for virtio over MMIO via new feature
> > > bit VIRTIO_F_MMIO_MSI[1] which increases the interrupt performance.
> > >
> > > With the VIRTIO_F_MMIO_MSI feature bit supported, the virtio-mmio MSI
> > > uses msi_sharing[1] to indicate the event and vector mapping.
> > > Bit 1 is 0: device uses non-sharing and fixed vector per event mapping.
> > > Bit 1 is 1: device uses sharing mode and dynamic mapping.
> >
> >
> > I believe dynamic mapping should cover the case of fixed vector?
> >
> Actually this bit *aims* for msi sharing or msi non-sharing.
>
> It means, when msi sharing bit is 1, device doesn't want vector per queue
>
> (it wants msi vector sharing as name) and doesn't want a high interrupt
> rate.
>
> So driver turns to !per_vq_vectors and has to do dynamical mapping.
>
> So they are opposite not superset.
>
> Thanks!
>
> Jing
what's the point of all this flexibility? the cover letter
complains about the code size of pci, then you go back
and add a ton of options with no justification.
>
> > Thanks
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
> > For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
> >
next prev parent reply other threads:[~2020-02-11 11:22 UTC|newest]
Thread overview: 104+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-10 9:05 [PATCH v2 0/5] virtio mmio specification enhancement Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-10 9:05 ` [PATCH v2 1/5] virtio-mmio: add notify feature for per-queue Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-11 10:50 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 10:50 ` Michael S. Tsirkin
2020-02-11 10:50 ` Michael S. Tsirkin
2020-02-11 11:33 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 11:33 ` Michael S. Tsirkin
2020-02-11 11:33 ` Michael S. Tsirkin
2020-02-12 3:39 ` [virtio-dev] " Jason Wang
2020-02-12 3:39 ` Jason Wang
2020-02-12 8:18 ` [virtio-dev] " Michael S. Tsirkin
2020-02-12 8:18 ` Michael S. Tsirkin
2020-02-12 8:18 ` Michael S. Tsirkin
2020-02-12 8:53 ` [virtio-dev] " Jason Wang
2020-02-12 8:53 ` Jason Wang
2020-02-12 8:53 ` Jason Wang
2020-02-12 9:33 ` [virtio-dev] " Jason Wang
2020-02-12 9:33 ` Jason Wang
2020-02-12 9:33 ` Jason Wang
2020-02-12 9:55 ` [virtio-dev] " Michael S. Tsirkin
2020-02-12 9:55 ` Michael S. Tsirkin
2020-02-12 9:55 ` Michael S. Tsirkin
2020-02-13 3:38 ` [virtio-dev] " Jason Wang
2020-02-13 3:38 ` Jason Wang
2020-02-10 9:05 ` [PATCH v2 2/5] virtio-mmio: refactor common functionality Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-11 11:19 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 11:19 ` Michael S. Tsirkin
2020-02-11 11:19 ` Michael S. Tsirkin
2020-02-12 2:58 ` [virtio-dev] " Liu, Jing2
2020-02-12 2:58 ` Liu, Jing2
2020-02-12 2:58 ` Liu, Jing2
2020-02-12 7:29 ` Michael S. Tsirkin
2020-02-12 7:29 ` Michael S. Tsirkin
2020-02-12 7:29 ` Michael S. Tsirkin
2020-02-10 9:05 ` [PATCH v2 3/5] virtio-mmio: create a generic MSI irq domain Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-11 11:16 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 11:16 ` Michael S. Tsirkin
2020-02-11 11:16 ` Michael S. Tsirkin
2020-02-12 7:40 ` [virtio-dev] " Michael S. Tsirkin
2020-02-12 7:40 ` Michael S. Tsirkin
2020-02-12 7:40 ` Michael S. Tsirkin
2020-02-10 9:05 ` [PATCH v2 4/5] virtio-mmio: add MSI interrupt feature support Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-11 3:17 ` [virtio-dev] " Jason Wang
2020-02-11 3:17 ` Jason Wang
2020-02-11 3:35 ` [virtio-dev] " Liu, Jing2
2020-02-11 3:35 ` Liu, Jing2
2020-02-11 4:02 ` Jason Wang
2020-02-11 4:02 ` Jason Wang
2020-02-11 6:02 ` Liu, Jing2
2020-02-11 6:02 ` Liu, Jing2
2020-02-11 7:40 ` Jason Wang
2020-02-11 7:40 ` Jason Wang
2020-02-11 11:58 ` Michael S. Tsirkin
2020-02-11 11:58 ` Michael S. Tsirkin
2020-02-11 11:58 ` Michael S. Tsirkin
2020-02-11 12:04 ` Jason Wang
2020-02-11 12:04 ` Jason Wang
2020-02-11 12:08 ` Michael S. Tsirkin
2020-02-11 12:08 ` Michael S. Tsirkin
2020-02-11 12:18 ` Jason Wang
2020-02-11 12:18 ` Jason Wang
2020-02-11 14:00 ` Michael S. Tsirkin
2020-02-11 14:00 ` Michael S. Tsirkin
2020-02-12 9:03 ` Jason Wang
2020-02-12 9:03 ` Jason Wang
2020-02-12 9:15 ` Michael S. Tsirkin
2020-02-12 9:15 ` Michael S. Tsirkin
2020-02-12 3:54 ` Liu, Jing2
2020-02-12 3:54 ` Liu, Jing2
2020-02-12 7:33 ` Michael S. Tsirkin
2020-02-12 7:33 ` Michael S. Tsirkin
2020-02-12 7:33 ` Michael S. Tsirkin
2020-02-12 9:06 ` Jason Wang
2020-02-12 9:06 ` Jason Wang
2020-02-12 9:16 ` Michael S. Tsirkin
2020-02-12 9:16 ` Michael S. Tsirkin
2020-02-12 9:16 ` Michael S. Tsirkin
2020-02-13 3:40 ` Jason Wang
2020-02-13 3:40 ` Jason Wang
2020-02-13 3:40 ` Jason Wang
2020-02-11 11:21 ` Michael S. Tsirkin [this message]
2020-02-11 11:21 ` Michael S. Tsirkin
2020-02-11 11:21 ` Michael S. Tsirkin
2020-02-11 11:11 ` Michael S. Tsirkin
2020-02-11 11:11 ` Michael S. Tsirkin
2020-02-11 11:11 ` Michael S. Tsirkin
2020-02-10 9:05 ` [PATCH v2 5/5] x86: virtio-mmio: support virtio-mmio with MSI for x86 Zha Bin
2020-02-10 9:05 ` Zha Bin
2020-02-11 11:14 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 11:14 ` Michael S. Tsirkin
2020-02-11 11:14 ` Michael S. Tsirkin
2020-02-10 11:44 ` [virtio-dev] Re: [PATCH v2 0/5] virtio mmio specification enhancement Michael S. Tsirkin
2020-02-10 11:44 ` Michael S. Tsirkin
2020-02-10 11:44 ` Michael S. Tsirkin
2020-02-11 16:05 ` Chao Peng
2020-02-11 16:05 ` Chao Peng
2020-02-11 10:57 ` [virtio-dev] " Michael S. Tsirkin
2020-02-11 10:57 ` Michael S. Tsirkin
2020-02-11 10:57 ` 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=20200211061932-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=chao.p.peng@linux.intel.com \
--cc=gerry@linux.alibaba.com \
--cc=jasowang@redhat.com \
--cc=jing2.liu@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=qemu-devel@nongnu.org \
--cc=slp@redhat.com \
--cc=virtio-dev@lists.oasis-open.org \
--cc=zhabin@linux.alibaba.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.