From: "Eugenio Pérez" <eperezma@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
Hanna Reitz <hreitz@redhat.com>,
linux-kernel@vger.kernel.org,
German Maglione <gmaglione@redhat.com>,
virtualization@lists.linux.dev,
Stefano Garzarella <sgarzare@redhat.com>,
yama@redhat.com, Vivek Goyal <vgoyal@redhat.com>,
Miklos Szeredi <miklos@szeredi.hu>,
mst@redhat.com, Jason Wang <jasowang@redhat.com>
Subject: [RFC v2 0/5] virtiofs: map buffer out of virtqueue lock
Date: Fri, 21 Feb 2025 18:06:21 +0100 [thread overview]
Message-ID: <20250221170626.261687-1-eperezma@redhat.com> (raw)
This is useful for some setups like swiotlb or VDUSE where the DMA
operations are expensive and/or need to be performed with a write lock.
After applying these patches, fio read test goes from 1124MiB/s to
1263.14MiB/s.
v2:
* Follow current add_premapped virtio API
* Disable notification more aggressive too.
---
Sending this series to obtain feedback if this is the right way to go &
to profile it properly.
TODO: Profile multiqueue.
TODO: Handling errors.
TODO: Do the same for hiprio queue.
TODO: Can we batch maps? virtiofs always sends many buffers.
Eugenio Pérez (5):
vduse: add virtio_fs to allowed dev id
virtiofs: Move stack sg to fuse_req
virtio_ring: add api for premapped out and in buffer chain
virtiofs: perform DMA operations out of the spinlock
virtiofs: Disable notifications more aggresively
drivers/vdpa/vdpa_user/vduse_dev.c | 1 +
drivers/virtio/virtio_ring.c | 35 ++++++++++++
fs/fuse/fuse_i.h | 7 +++
fs/fuse/virtio_fs.c | 85 +++++++++++++++++++++---------
include/linux/virtio.h | 7 +++
5 files changed, 110 insertions(+), 25 deletions(-)
--
2.48.1
next reply other threads:[~2025-02-21 17:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-21 17:06 Eugenio Pérez [this message]
2025-02-21 17:06 ` [RFC v2 1/5] vduse: add virtio_fs to allowed dev id Eugenio Pérez
2025-02-24 1:57 ` Jason Wang
2025-02-24 6:42 ` Eugenio Perez Martin
2025-02-21 17:06 ` [RFC v2 2/5] virtiofs: Move stack sg to fuse_req Eugenio Pérez
2025-02-21 17:06 ` [RFC v2 3/5] virtio_ring: add api for premapped out and in buffer chain Eugenio Pérez
2025-02-21 17:06 ` [RFC v2 4/5] virtiofs: perform DMA operations out of the spinlock Eugenio Pérez
2025-02-24 2:03 ` Jason Wang
2025-02-21 17:06 ` [RFC v2 5/5] virtiofs: Disable notifications more aggresively Eugenio Pérez
2025-02-24 2:01 ` Jason Wang
2025-02-24 6:44 ` Eugenio Perez Martin
2025-02-24 7:44 ` Eugenio Perez Martin
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=20250221170626.261687-1-eperezma@redhat.com \
--to=eperezma@redhat.com \
--cc=gmaglione@redhat.com \
--cc=hreitz@redhat.com \
--cc=jasowang@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=mst@redhat.com \
--cc=sgarzare@redhat.com \
--cc=stefanha@redhat.com \
--cc=vgoyal@redhat.com \
--cc=virtualization@lists.linux.dev \
--cc=xuanzhuo@linux.alibaba.com \
--cc=yama@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®