From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NvBqF-0005lz-6N for qemu-devel@nongnu.org; Fri, 26 Mar 2010 11:52:59 -0400 Received: from [140.186.70.92] (port=37486 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NvBqD-0005km-T1 for qemu-devel@nongnu.org; Fri, 26 Mar 2010 11:52:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NvBqC-0004xC-Gr for qemu-devel@nongnu.org; Fri, 26 Mar 2010 11:52:57 -0400 Received: from mail-pz0-f194.google.com ([209.85.222.194]:63880) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NvBqC-0004x8-9C for qemu-devel@nongnu.org; Fri, 26 Mar 2010 11:52:56 -0400 Received: by pzk32 with SMTP id 32so2712181pzk.4 for ; Fri, 26 Mar 2010 08:52:54 -0700 (PDT) MIME-Version: 1.0 Sender: camm@ualberta.ca In-Reply-To: <20100326013215.GF19308@shareable.org> References: <1269497310-21858-1-git-send-email-cam@cs.ualberta.ca> <4BAB2736.7020202@redhat.com> <8286e4ee1003250950l45cc2883yd4788d20f99ef86c@mail.gmail.com> <4BAB9718.3030808@redhat.com> <8286e4ee1003251035o75fed405j45b60d496afa66b5@mail.gmail.com> <4BABA1F4.3000801@redhat.com> <8286e4ee1003251117o74486dck813a47cee54b2d6d@mail.gmail.com> <20100326013215.GF19308@shareable.org> Date: Fri, 26 Mar 2010 09:52:54 -0600 Message-ID: <8286e4ee1003260852of59071cv3dde42e5cbadf500@mail.gmail.com> Subject: Re: [Qemu-devel] Re: [PATCH v3 0/2] Inter-VM shared memory PCI device From: Cam Macdonell Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jamie Lokier Cc: Avi Kivity , kvm@vger.kernel.org, qemu-devel@nongnu.org On Thu, Mar 25, 2010 at 7:32 PM, Jamie Lokier wrote: > Cam Macdonell wrote: >> An irqfd can only trigger a single vector in a guest. =A0Right now I >> only have one eventfd per guest. =A0 =A0So ioeventfd/irqfd restricts the >> current implementation to a single vector that a guest can trigger. >> Without irqfd, eventfds can be used like registers a write the number >> of the vector they want to trigger, but as you point out it is racy. > > It's not racy if you use a pipe instead of eventfd. :-) > > Actually, why not? =A0A byte pipe between guests would be more versatile. A pipe between guests would be quite versatile, however it's an orthogonal design to shared memory. The shared memory is how data should be shared/communicated if someone is using this device and the interrupts are there to help with synchronization. > > Could it even integrate with virtio-serial, somehow? > Could virtio-serial be used as is to support a pipe between guests? If a user wanted shared memory and a pipe, then they could setup two devices and use them together. Cam