From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M6pjB-000193-2u for qemu-devel@nongnu.org; Wed, 20 May 2009 13:37:17 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M6pj6-00017H-OM for qemu-devel@nongnu.org; Wed, 20 May 2009 13:37:16 -0400 Received: from [199.232.76.173] (port=35982 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M6pj6-00017D-DN for qemu-devel@nongnu.org; Wed, 20 May 2009 13:37:12 -0400 Received: from mx2.redhat.com ([66.187.237.31]:57712) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M6pj6-0004jq-1D for qemu-devel@nongnu.org; Wed, 20 May 2009 13:37:12 -0400 Date: Wed, 20 May 2009 20:35:36 +0300 From: "Michael S. Tsirkin" Subject: Re: [Qemu-devel] [PATCH] qemu: msi irq allocation api Message-ID: <20090520173536.GA22935@redhat.com> References: <20090520162130.GA22109@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: Carsten Otte , kvm@vger.kernel.org, Rusty Russell , qemu-devel@nongnu.org, virtualization@lists.linux-foundation.org, Christian Borntraeger , avi@redhat.com On Wed, May 20, 2009 at 08:21:01PM +0300, Blue Swirl wrote: > On 5/20/09, Michael S. Tsirkin wrote: > > define api for allocating/setting up msi-x irqs, and for updating them > > with msi-x vector information, supply implementation in ioapic. Please > > comment on this API: I intend to port my msi-x patch to work on top of > > it. > > > > Signed-off-by: Michael S. Tsirkin > > Sparc64 also uses packets ("mondos", not implemented yet) for > interrupt vector data, there the packet size is 8 * 64 bits. > I think we should aim for a more generic API that covers this case also. Are you sure this is a good idea? MSI is tied to PCI, and PCI only has MSI, not "mondos". What code would benefit from this abstraction? > For example, irq.c could support opaque packet payload of > unspecified/predefined size. MSI packet structure should be defined > in ioapic.c. Note that MSI does not have packets and MSI interrupts do not pass any payload. > The pci_msi_ops structure could be 'const', or do you expect it to > change during execution? Right. I'll fix that. -- MST