From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:59526) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SfHcw-0004Cu-60 for qemu-devel@nongnu.org; Thu, 14 Jun 2012 17:30:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SfHcu-0005YX-7S for qemu-devel@nongnu.org; Thu, 14 Jun 2012 17:30:49 -0400 Received: from mx1.redhat.com ([209.132.183.28]:31633) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SfHct-0005YG-RV for qemu-devel@nongnu.org; Thu, 14 Jun 2012 17:30:48 -0400 Date: Fri, 15 Jun 2012 00:31:21 +0300 From: "Michael S. Tsirkin" Message-ID: <20120614213120.GA22915@redhat.com> References: <20120614181104.23440.62204.stgit@bling.home> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20120614181104.23440.62204.stgit@bling.home> Subject: Re: [Qemu-devel] [PATCH v3 0/8] msix: Support specifying offsets, BARs, and capability location List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alex Williamson Cc: jan.kiszka@siemens.com, qemu-devel@nongnu.org On Thu, Jun 14, 2012 at 12:15:42PM -0600, Alex Williamson wrote: > v3: > - more patches, smaller diff, must be headed in the right direction > - macros for all hardcoded values in msix_init_exclusive_bar > - fold msix_add_config into msix_init allowing less churn to moving > around msix_uninit > - note native endian bug > - split msix_mmio_read move to separate patch > - split changing return value of msix_uninit to separate patch > > Thanks, > > Alex Thanks, applied all. Will test/push next week. > v2: > - split patch > - rename msix_[un]init_bar() to msix_[un]init_exclusive_bar() > - add the cherry on top to cleaning up PCIDevice naming > > v1: > > msix_init has very little configurability as to how it lays out MSIX > for a device. It claims to resize BARs, but doesn't actually do this > anymore. This patch allows MSIX to be fully specified, which is > necessary both for emulated devices trying to match the physical > layout of a hardware device as well as for any kind of device > assignment. > > New functions msix_init_bar & msix_uninit_bar provide wrappers around > the more detailed functions for drivers that just want a simple MSIX > setup. > > --- > > Alex Williamson (8): > msix: Switch msix_uninit to return void > msix: Allow full specification of MSIX layout > msix: Split PBA into it's own MemoryRegion > msix: Note endian TODO item > msix: Move msix_mmio_read > virtio: Convert to msix_init_exclusive_bar() interface > ivshmem: Convert to msix_init_exclusive_bar() interface > msix: Add simple BAR allocation MSIX setup functions > One minor suggestion for the future: I think it's prettier not to start with an upper case letter after ":". So the commit log would become: msix: add simple BAR allocation MSIX setup functions > > hw/ivshmem.c | 10 +- > hw/msix.c | 271 +++++++++++++++++++++++++++++++------------------------ > hw/msix.h | 13 ++- > hw/pci.h | 12 ++ > hw/virtio-pci.c | 15 +-- > hw/virtio-pci.h | 1 > 6 files changed, 176 insertions(+), 146 deletions(-)