From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Henderson Subject: Re: [Qemu-devel] [PATCH 00/39] Memory API, batch 2: PCI devices Date: Mon, 01 Aug 2011 10:32:47 -0700 Message-ID: <4E36E33F.1040803@twiddle.net> References: <1312135082-31985-1-git-send-email-avi@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: Anthony Liguori , qemu-devel@nongnu.org, kvm@vger.kernel.org, "Michael S. Tsirkin" To: Avi Kivity Return-path: Received: from mail-ww0-f44.google.com ([74.125.82.44]:36049 "EHLO mail-ww0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753644Ab1HARdm (ORCPT ); Mon, 1 Aug 2011 13:33:42 -0400 Received: by wwe5 with SMTP id 5so5882082wwe.1 for ; Mon, 01 Aug 2011 10:33:40 -0700 (PDT) In-Reply-To: <1312135082-31985-1-git-send-email-avi@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 07/31/2011 10:57 AM, Avi Kivity wrote: > This is a mostly mindless conversion of all QEMU PCI devices to the memory API. > After this patchset is applied, it is no longer possible to create a PCI device > using the old API. > > An immediate benefit is that PCI BARs that overlap each other are now handled > correctly: currently, the sequence > > map BAR 0 > map BAR 1 at an overlapping address > unmap either BAR 0 or BAR 1 > > will leave a hole where the overlap exists. With the patchset, the memory map > is restored correctly. > > Note that overlaps of PCI BARs with memory or non-PCI resources are still not > resolved correctly; this will be fixed later on. > > The vga patches have ugly intermediate states; however the result is fairly clean. > > Also available from: > > git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git memory-region-b2 1-39 Reviewed-by: Richard Henderson Nice cleanups. r~ From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:37253) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QnwN8-0005hg-2u for qemu-devel@nongnu.org; Mon, 01 Aug 2011 13:33:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QnwN3-0006D3-U0 for qemu-devel@nongnu.org; Mon, 01 Aug 2011 13:33:45 -0400 Received: from mail-ww0-f53.google.com ([74.125.82.53]:45889) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QnwN3-0006Cu-Nh for qemu-devel@nongnu.org; Mon, 01 Aug 2011 13:33:41 -0400 Received: by wwf26 with SMTP id 26so5252691wwf.10 for ; Mon, 01 Aug 2011 10:33:40 -0700 (PDT) Sender: Richard Henderson Message-ID: <4E36E33F.1040803@twiddle.net> Date: Mon, 01 Aug 2011 10:32:47 -0700 From: Richard Henderson MIME-Version: 1.0 References: <1312135082-31985-1-git-send-email-avi@redhat.com> In-Reply-To: <1312135082-31985-1-git-send-email-avi@redhat.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 00/39] Memory API, batch 2: PCI devices List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: "Michael S. Tsirkin" , qemu-devel@nongnu.org, kvm@vger.kernel.org On 07/31/2011 10:57 AM, Avi Kivity wrote: > This is a mostly mindless conversion of all QEMU PCI devices to the memory API. > After this patchset is applied, it is no longer possible to create a PCI device > using the old API. > > An immediate benefit is that PCI BARs that overlap each other are now handled > correctly: currently, the sequence > > map BAR 0 > map BAR 1 at an overlapping address > unmap either BAR 0 or BAR 1 > > will leave a hole where the overlap exists. With the patchset, the memory map > is restored correctly. > > Note that overlaps of PCI BARs with memory or non-PCI resources are still not > resolved correctly; this will be fixed later on. > > The vga patches have ugly intermediate states; however the result is fairly clean. > > Also available from: > > git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git memory-region-b2 1-39 Reviewed-by: Richard Henderson Nice cleanups. r~