All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/14] ivshmem: update documentation, add client/server tools
@ 2014-09-02 15:25 ` David Marchand
  0 siblings, 0 replies; 42+ messages in thread
From: David Marchand @ 2014-09-02 15:25 UTC (permalink / raw)
  To: qemu-devel
  Cc: kvm, pbonzini, claudio.fontana, jani.kokkonen, eblake, cam,
	armbru, stefanha, arei.gonglei

Here is a patchset containing an update on ivshmem specs documentation and
importing ivshmem server and client tools.
These tools have been written from scratch and are not related to what is
available in nahanni repository.
I put them in contrib/ directory as the qemu-doc.texi was already telling the
server was supposed to be there.

Changes since v3:
- first patch is untouched
- just restored the Reviewed-By Claudio in second patch
- following patches 3-8 take into account Stefan's comments
- patches 9-12 take into account Gonglei's comments
- patch 13 adjusts ivshmem-server default values
- last patch introduces a change in the ivshmem client-server protocol to
  check a protocol version at connect time

Changes since v2:
- fixed license issues in ivshmem client/server (I took hw/virtio/virtio-rng.c
  file as a reference).

Changes since v1:
- moved client/server import patch before doc update,
- tried to re-organise the ivshmem_device_spec.txt file based on Claudio
  comments (still not sure if the result is that great, comments welcome),
- incorporated comments from Claudio, Eric and Cam,
- added more details on the server <-> client messages exchange (but sorry, no
  ASCII art here).

By the way, there are still some functionnalities that need description (use of
ioeventfd, the lack of irqfd support) and some parts of the ivshmem code clearly
need cleanup. I will try to address this in future patches when these first
patches are ok.


-- 
David Marchand

David Marchand (14):
  contrib: add ivshmem client and server
  docs: update ivshmem device spec
  contrib/ivshmem-*: comply with QEMU coding style
  contrib/ivshmem-*: reuse qemu/queue.h
  contrib/ivshmem-*: switch to QEMU headers
  contrib/ivshmem-server: set client sockets as non blocking
  contrib/ivshmem-*: add missing const and static attrs
  contrib/ivshmem-*: plug client and server in QEMU top Makefile
  contrib/ivshmem-*: switch to g_malloc0/g_free
  contrib/ivshmem-server: fix mem leak on error
  contrib/ivshmem-*: rework error handling
  contrib/ivshmem-*: various fixes
  contrib/ivshmem-server: align server default parameter values
  ivshmem: add check on protocol version in QEMU

 Makefile                                |    8 +
 configure                               |    3 +
 contrib/ivshmem-client/ivshmem-client.c |  413 +++++++++++++++++++++++++++++++
 contrib/ivshmem-client/ivshmem-client.h |  240 ++++++++++++++++++
 contrib/ivshmem-client/main.c           |  237 ++++++++++++++++++
 contrib/ivshmem-server/ivshmem-server.c |  402 ++++++++++++++++++++++++++++++
 contrib/ivshmem-server/ivshmem-server.h |  187 ++++++++++++++
 contrib/ivshmem-server/main.c           |  243 ++++++++++++++++++
 docs/specs/ivshmem_device_spec.txt      |  127 +++++++---
 hw/misc/ivshmem.c                       |   43 +++-
 include/hw/misc/ivshmem.h               |   17 ++
 qemu-doc.texi                           |   10 +-
 12 files changed, 1887 insertions(+), 43 deletions(-)
 create mode 100644 contrib/ivshmem-client/ivshmem-client.c
 create mode 100644 contrib/ivshmem-client/ivshmem-client.h
 create mode 100644 contrib/ivshmem-client/main.c
 create mode 100644 contrib/ivshmem-server/ivshmem-server.c
 create mode 100644 contrib/ivshmem-server/ivshmem-server.h
 create mode 100644 contrib/ivshmem-server/main.c
 create mode 100644 include/hw/misc/ivshmem.h

-- 
1.7.10.4


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

end of thread, other threads:[~2014-09-03 15:50 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-09-02 15:25 [PATCH v4 00/14] ivshmem: update documentation, add client/server tools David Marchand
2014-09-02 15:25 ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 01/14] contrib: add ivshmem client and server David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 20:20   ` Eric Blake
2014-09-02 20:20     ` [Qemu-devel] " Eric Blake
2014-09-02 15:25 ` [PATCH v4 02/14] docs: update ivshmem device spec David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 20:24   ` Eric Blake
2014-09-02 20:24     ` [Qemu-devel] " Eric Blake
2014-09-02 15:25 ` [PATCH v4 03/14] contrib/ivshmem-*: comply with QEMU coding style David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 04/14] contrib/ivshmem-*: reuse qemu/queue.h David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 05/14] contrib/ivshmem-*: switch to QEMU headers David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 20:28   ` Eric Blake
2014-09-02 20:28     ` [Qemu-devel] " Eric Blake
2014-09-02 15:25 ` [PATCH v4 06/14] contrib/ivshmem-server: set client sockets as non blocking David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 07/14] contrib/ivshmem-*: add missing const and static attrs David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 08/14] contrib/ivshmem-*: plug client and server in QEMU top Makefile David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 09/14] contrib/ivshmem-*: switch to g_malloc0/g_free David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 10/14] contrib/ivshmem-server: fix mem leak on error David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 11/14] contrib/ivshmem-*: rework error handling David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 12/14] contrib/ivshmem-*: various fixes David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 13/14] contrib/ivshmem-server: align server default parameter values David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 15:25 ` [PATCH v4 14/14] ivshmem: add check on protocol version in QEMU David Marchand
2014-09-02 15:25   ` [Qemu-devel] " David Marchand
2014-09-02 20:31 ` [PATCH v4 00/14] ivshmem: update documentation, add client/server tools Eric Blake
2014-09-02 20:31   ` [Qemu-devel] " Eric Blake
2014-09-03 13:01   ` David Marchand
2014-09-03 13:01     ` [Qemu-devel] " David Marchand
2014-09-03 14:47     ` Eric Blake
2014-09-03 14:47       ` [Qemu-devel] " Eric Blake

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.