From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony Liguori Subject: Re: [PATCH v2] Shared memory device with interrupt support Date: Mon, 18 May 2009 13:54:03 -0500 Message-ID: <4A11AECB.70908@codemonkey.ws> References: <1241712992-17004-1-git-send-email-cam@cs.ualberta.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, Avi Kivity To: Cam Macdonell Return-path: Received: from mail-gx0-f166.google.com ([209.85.217.166]:39732 "EHLO mail-gx0-f166.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753095AbZERSyW (ORCPT ); Mon, 18 May 2009 14:54:22 -0400 Received: by gxk10 with SMTP id 10so6601004gxk.13 for ; Mon, 18 May 2009 11:54:23 -0700 (PDT) In-Reply-To: <1241712992-17004-1-git-send-email-cam@cs.ualberta.ca> Sender: kvm-owner@vger.kernel.org List-ID: Hi Cam, Cam Macdonell wrote: > 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. > > This device now creates a qemu character device and sends 1-bytes messages to trigger interrupts. Writes are trigger by writing to the "Doorbell" register on the shared memory PCI device. The lower 8-bits of the value written to this register are sent as the 1-byte message so different meanings of interrupts can be supported. > > Interrupts are only supported between 2 VMs currently. One VM must act as the server by adding "server" to the command-line argument. Shared memory devices are created with the following command-line: > > -ivhshmem ,,[unix:][,server] > > Interrupts can also be used between host and guest as well by implementing a listener on the host. > > Cam > I'd strongly recommend working these patches on qemu-devel and lkml. I suspect Avi may disagree with me, but in order for this to be eventually merged in either place, you're going to have additional requirements put on you. If it goes in via qemu-kvm.git, there's a possibility that you'll be forced into an ABI break down the road (consider the old hypercall and balloon drivers). Regards, Anthony Liguori