netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/7] net/9p: remove msize limit in virtio transport
@ 2021-09-20 16:43 Christian Schoenebeck
  2021-09-20 16:43 ` [PATCH v2 1/7] net/9p: show error message if user 'msize' cannot be satisfied Christian Schoenebeck
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: Christian Schoenebeck @ 2021-09-20 16:43 UTC (permalink / raw)
  To: v9fs-developer
  Cc: netdev, Dominique Martinet, Eric Van Hensbergen, Latchesar Ionkov,
	Greg Kurz, Vivek Goyal

This series aims to get get rid of the current 500k 'msize' limitation in
the 9p virtio transport, which is currently a bottleneck for performance
of 9p mounts.

This is a follow-up of the following series and discussion:
https://lore.kernel.org/all/28bb651ae0349a7d57e8ddc92c1bd5e62924a912.1630770829.git.linux_oss@crudebyte.com/T/#eb647d0c013616cee3eb8ba9d87da7d8b1f476f37

Known limitation: With this series applied I can run

  QEMU host <-> 9P virtio <-> Linux guest

with up to 3 MB msize. If I try to run it with 4 MB it seems to hit some
limitation on QEMU side:

  qemu-system-x86_64: virtio: too many write descriptors in indirect table

I haven't looked into this issue yet.

Testing and feedback appreciated!

v1 -> v2:

  * Fix memory leak [patch 6].

  * Use pr_info() instead of p9_debug(P9_DEBUG_ERROR, ...) for user info
    [patch 1].

  * Show user info message if chained SG lists are not supported on
    architecture [patch 6].

  * Kernel doc fixes [patch 4], [patch 6].

Christian Schoenebeck (7):
  net/9p: show error message if user 'msize' cannot be satisfied
  9p/trans_virtio: separate allocation of scatter gather list
  9p/trans_virtio: turn amount of sg lists into runtime info
  9p/trans_virtio: introduce struct virtqueue_sg
  net/9p: add trans_maxsize to struct p9_client
  9p/trans_virtio: support larger msize values
  9p/trans_virtio: resize sg lists to whatever is possible

 include/net/9p/client.h |   2 +
 net/9p/client.c         |  17 ++-
 net/9p/trans_virtio.c   | 290 ++++++++++++++++++++++++++++++++++------
 3 files changed, 269 insertions(+), 40 deletions(-)

-- 
2.20.1


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

end of thread, other threads:[~2021-09-22 11:56 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-09-20 16:43 [PATCH v2 0/7] net/9p: remove msize limit in virtio transport Christian Schoenebeck
2021-09-20 16:43 ` [PATCH v2 1/7] net/9p: show error message if user 'msize' cannot be satisfied Christian Schoenebeck
2021-09-20 16:43 ` [PATCH v2 2/7] 9p/trans_virtio: separate allocation of scatter gather list Christian Schoenebeck
2021-09-20 16:43 ` [PATCH v2 3/7] 9p/trans_virtio: turn amount of sg lists into runtime info Christian Schoenebeck
2021-09-20 16:44 ` [PATCH v2 4/7] 9p/trans_virtio: introduce struct virtqueue_sg Christian Schoenebeck
2021-09-22 11:25   ` Christian Schoenebeck
2021-09-20 16:44 ` [PATCH v2 5/7] net/9p: add trans_maxsize to struct p9_client Christian Schoenebeck
2021-09-20 16:44 ` [PATCH v2 6/7] 9p/trans_virtio: support larger msize values Christian Schoenebeck
2021-09-22 11:42   ` Christian Schoenebeck
2021-09-20 16:44 ` [PATCH v2 7/7] 9p/trans_virtio: resize sg lists to whatever is possible Christian Schoenebeck
2021-09-22 11:56   ` Christian Schoenebeck

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).