virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* [PATCH virtio 0/8] virtio_pci_modern: allow parallel admin queue commands execution
@ 2024-06-24  9:04 Jiri Pirko
  2024-06-24  9:04 ` [PATCH virtio 1/8] virtio_pci: push out single vq find code to vp_find_one_vq_msix() Jiri Pirko
                   ` (9 more replies)
  0 siblings, 10 replies; 38+ messages in thread
From: Jiri Pirko @ 2024-06-24  9:04 UTC (permalink / raw)
  To: virtualization; +Cc: mst, jasowang, xuanzhuo, eperezma, parav, feliu

From: Jiri Pirko <jiri@nvidia.com>

Currently the admin queue command execution is serialized by a lock.
This patchsets lifts this limitation allowing to execute admin queue
commands in parallel. To do that, admin queue processing needs to be
converted from polling to interrupt based completion.

Patches #1-#6 are preparations, making things a bit smoother as well.
Patch #7 implements interrupt based completion for admin queue.
Patch #8 finally removes the admin queue serialization lock.

Jiri Pirko (8):
  virtio_pci: push out single vq find code to vp_find_one_vq_msix()
  virtio_pci_modern: treat vp_dev->admin_vq.info.vq pointer as static
  virtio: push out code to vp_avq_index()
  virtio: create admin queues alongside other virtqueues
  virtio_pci_modern: create admin queue of queried size
  virtio_pci_modern: pass cmd as an identification token
  virtio_pci_modern: use completion instead of busy loop to wait on
    admin cmd result
  virtio_pci_modern: remove admin queue serialization lock

 drivers/virtio/virtio.c            |  28 +----
 drivers/virtio/virtio_pci_common.c | 109 ++++++++++++++------
 drivers/virtio/virtio_pci_common.h |   9 +-
 drivers/virtio/virtio_pci_modern.c | 160 ++++++++++++-----------------
 include/linux/virtio.h             |   2 +
 include/linux/virtio_config.h      |   2 -
 6 files changed, 150 insertions(+), 160 deletions(-)

-- 
2.45.1


^ permalink raw reply	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2024-06-25 14:29 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-24  9:04 [PATCH virtio 0/8] virtio_pci_modern: allow parallel admin queue commands execution Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 1/8] virtio_pci: push out single vq find code to vp_find_one_vq_msix() Jiri Pirko
2024-06-24 10:52   ` Heng Qi
2024-06-24 13:11     ` Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 2/8] virtio_pci_modern: treat vp_dev->admin_vq.info.vq pointer as static Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 3/8] virtio: push out code to vp_avq_index() Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 4/8] virtio: create admin queues alongside other virtqueues Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 5/8] virtio_pci_modern: create admin queue of queried size Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 6/8] virtio_pci_modern: pass cmd as an identification token Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 7/8] virtio_pci_modern: use completion instead of busy loop to wait on admin cmd result Jiri Pirko
2024-06-24 11:30   ` Michael S. Tsirkin
2024-06-24 13:10     ` Jiri Pirko
2024-06-25 11:07     ` Jiri Pirko
2024-06-25 12:53       ` Parav Pandit
2024-06-25 14:29         ` Jiri Pirko
2024-06-24 11:34   ` Michael S. Tsirkin
2024-06-24 13:10     ` Jiri Pirko
2024-06-24  9:04 ` [PATCH virtio 8/8] virtio_pci_modern: remove admin queue serialization lock Jiri Pirko
2024-06-24  9:53 ` [PATCH virtio 0/8] virtio_pci_modern: allow parallel admin queue commands execution Heng Qi
2024-06-24 11:23   ` Michael S. Tsirkin
2024-06-24 13:46     ` Jiri Pirko
2024-06-24 13:55       ` Michael S. Tsirkin
2024-06-24 14:51         ` Jiri Pirko
2024-06-24 15:16           ` Michael S. Tsirkin
2024-06-25  2:11             ` Heng Qi
2024-06-25  6:38               ` Jiri Pirko
2024-06-25  6:41                 ` Parav Pandit
2024-06-25  7:29                   ` Michael S. Tsirkin
2024-06-25  8:01                     ` Jiri Pirko
2024-06-25  7:20               ` Michael S. Tsirkin
2024-06-25  7:25                 ` Parav Pandit
2024-06-24 15:10     ` Jiri Pirko
2024-06-24 15:23       ` Michael S. Tsirkin
2024-06-24 15:45         ` Jiri Pirko
2024-06-24 11:07 ` Michael S. Tsirkin
2024-06-24 13:09   ` Jiri Pirko
2024-06-24 13:16     ` Michael S. Tsirkin
2024-06-24 13:36       ` Jiri Pirko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).