From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:59235) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZlgAj-0005tZ-NS for qemu-devel@nongnu.org; Mon, 12 Oct 2015 12:42:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZlgAg-0000kf-9s for qemu-devel@nongnu.org; Mon, 12 Oct 2015 12:42:01 -0400 Received: from mail-pa0-x22b.google.com ([2607:f8b0:400e:c03::22b]:35735) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZlgAg-0000kV-12 for qemu-devel@nongnu.org; Mon, 12 Oct 2015 12:41:58 -0400 Received: by pabve7 with SMTP id ve7so100433133pab.2 for ; Mon, 12 Oct 2015 09:41:57 -0700 (PDT) Sender: =?UTF-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= From: marcandre.lureau@redhat.com Date: Mon, 12 Oct 2015 18:40:54 +0200 Message-Id: <1444668104-22955-1-git-send-email-marcandre.lureau@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PULL v2 00/50] Ivshmem patches List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, drjones@redhat.com, claudio.fontana@huawei.com, stefanha@redhat.com, =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , pbonzini@redhat.com, cam@cs.ualberta.ca From: Marc-André Lureau The following changes since commit 0bf224d5da41967a775b328234cda2d19f303908: Merge remote-tracking branch 'remotes/jasowang/tags/net-pull-request' into staging (2015-10-12 14:29:29 +0100) are available in the git repository at: git@github.com:elmarco/qemu.git tags/ivshmem-pull-request for you to fetch changes up to a3920e445af166ae95651a63bcd0d3b4694eed14: doc: document ivshmem & hugepages (2015-10-12 18:02:51 +0200) ---------------------------------------------------------------- This new pull request includes Andreas qtest patch, a doc patch, and fixes some new glib API usage in tests. ---------------------------------------------------------------- Andreas Färber (1): tests: Add ivshmem qtest David Marchand (3): contrib: add ivshmem client and server docs: update ivshmem device spec ivshmem: add check on protocol version in QEMU Marc-André Lureau (46): char: add qemu_chr_free() msix: add VMSTATE_MSIX_TEST ivhsmem: read do not accept more than sizeof(long) ivshmem: fix number of bytes to push to fifo ivshmem: factor out the incoming fifo handling ivshmem: remove unnecessary dup() ivshmem: remove superflous ivshmem_attr field ivshmem: remove useless doorbell field ivshmem: more qdev conversion ivshmem: remove last exit(1) ivshmem: limit maximum number of peers to G_MAXUINT16 ivshmem: simplify around increase_dynamic_storage() ivshmem: allocate eventfds in resize_peers() ivshmem: remove useless ivshmem_update_irq() val argument ivshmem: initialize max_peer to -1 ivshmem: remove max_peer field ivshmem: improve debug messages ivshmem: improve error handling ivshmem: print error on invalid peer id ivshmem: simplify a bit the code ivshmem: use common return ivshmem: use common is_power_of_2() ivshmem: migrate with VMStateDescription ivshmem: shmfd can be 0 ivshmem: check shm isn't already initialized ivshmem: add device description ivshmem: fix pci_ivshmem_exit() ivshmem: replace 'guest' for 'peer' appropriately ivshmem: error on too many eventfd received ivshmem: reset mask on device reset ivshmem-client: check the number of vectors ivshmem-server: use a uint16 for client ID ivshmem-server: fix hugetlbfs support contrib: remove unnecessary strdup() msix: implement pba write (but read-only) qtest: add qtest_add_abrt_handler() glib-compat: add 2.38/2.40/2.46 asserts tests: add ivshmem qtest ivshmem: do not keep shm_fd open ivshmem: use qemu_strtosz() ivshmem: add hostmem backend ivshmem: remove EventfdEntry.vector ivshmem: rename MSI eventfd_table ivshmem: use kvm irqfd for msi notifications ivshmem: use little-endian int64_t for the protocol doc: document ivshmem & hugepages Makefile | 8 + Makefile.objs | 5 + configure | 1 + contrib/ivshmem-client/Makefile.objs | 1 + contrib/ivshmem-client/ivshmem-client.c | 446 +++++++++++++++++ contrib/ivshmem-client/ivshmem-client.h | 213 ++++++++ contrib/ivshmem-client/main.c | 239 +++++++++ contrib/ivshmem-server/Makefile.objs | 1 + contrib/ivshmem-server/ivshmem-server.c | 480 ++++++++++++++++++ contrib/ivshmem-server/ivshmem-server.h | 166 +++++++ contrib/ivshmem-server/main.c | 263 ++++++++++ docs/specs/ivshmem_device_spec.txt | 127 +++-- hw/misc/ivshmem.c | 833 ++++++++++++++++++++++---------- hw/pci/msix.c | 6 + include/glib-compat.h | 61 +++ include/hw/misc/ivshmem.h | 25 + include/hw/pci/msix.h | 16 +- include/sysemu/char.h | 10 +- qemu-char.c | 9 +- qemu-doc.texi | 23 +- tests/Makefile | 3 + tests/ivshmem-test.c | 490 +++++++++++++++++++ tests/libqtest.c | 37 +- tests/libqtest.h | 2 + 24 files changed, 3149 insertions(+), 316 deletions(-) create mode 100644 contrib/ivshmem-client/Makefile.objs 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/Makefile.objs 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 create mode 100644 tests/ivshmem-test.c -- 2.4.3