summary refs log tree commit diff stats
path: root/qemu-char.c
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.c
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.c')
-rw-r--r--qemu-char.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/qemu-char.c b/qemu-char.c
index 9b69d928ef..6a3952ccdf 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -2087,6 +2087,12 @@ static void tcp_chr_read(void *opaque)
     }
 }
 
+CharDriverState *qemu_chr_open_eventfd(int eventfd){
+
+    return qemu_chr_open_fd(eventfd, eventfd);
+
+}
+
 static void tcp_chr_connect(void *opaque)
 {
     CharDriverState *chr = opaque;