summary refs log tree commit diff stats
path: root/qemu-char.h
diff options
context:
space:
mode:
authorCam Macdonell <cam@cs.ualberta.ca>2010-07-27 10:54:13 -0600
committerAnthony Liguori <aliguori@us.ibm.com>2010-08-10 16:25:16 -0500
commit6cbf4c8c6416237e9c323661b87d60792a9d51af (patch)
tree6c44bc8d4b79b334ba3a89211baa3cb4dfded594 /qemu-char.h
parent2431296806bc7a40c29b7775e16f36dc1cda4d06 (diff)
downloadfocaccia-qemu-6cbf4c8c6416237e9c323661b87d60792a9d51af.tar.gz
focaccia-qemu-6cbf4c8c6416237e9c323661b87d60792a9d51af.zip
RESEND: Inter-VM shared memory PCI device
resend for bug fix related to removal of irqfd

Support an inter-vm shared memory device that maps a shared-memory object as a
PCI device in the guest.  This patch also supports interrupts between guest by
communicating over a unix domain socket.  This patch applies to the qemu-kvm
repository.

    -device ivshmem,size=<size in format accepted by -m>[,shm=<shm name>]

Interrupts are supported between multiple VMs by using a shared memory server
by using a chardev socket.

    -device ivshmem,size=<size in format accepted by -m>[,shm=<shm name>]
           [,chardev=<id>][,msi=on][,ioeventfd=on][,vectors=n][,role=peer|master]
    -chardev socket,path=<path>,id=<id>

The shared memory server, sample programs and init scripts are in a git repo here:

    www.gitorious.org/nahanni

Signed-off-by: Cam Macdonell <cam@cs.ualberta.ca>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'qemu-char.h')
-rw-r--r--qemu-char.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/qemu-char.h b/qemu-char.h
index e3a07838a4..6ea01ba179 100644
--- a/qemu-char.h
+++ b/qemu-char.h
@@ -94,6 +94,9 @@ void qemu_chr_info_print(Monitor *mon, const QObject *ret_data);
 void qemu_chr_info(Monitor *mon, QObject **ret_data);
 CharDriverState *qemu_chr_find(const char *name);
 
+/* add an eventfd to the qemu devices that are polled */
+CharDriverState *qemu_chr_open_eventfd(int eventfd);
+
 extern int term_escape_char;
 
 /* async I/O support */