From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joerg Roedel Subject: Re: [RFC PATCH 0/7] Beginning implementing the AMD IOMMU emulation Date: Tue, 30 Mar 2010 21:40:57 +0200 Message-ID: <20100330194056.GB24846@8bytes.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: aliguori@us.ibm.com, avi@redhat.com, qemu-devel@nongnu.org, kvm@vger.kernel.org To: Eduard - Gabriel Munteanu Return-path: Received: from 8bytes.org ([88.198.83.132]:46558 "EHLO 8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753411Ab0C3Tk5 (ORCPT ); Tue, 30 Mar 2010 15:40:57 -0400 Content-Disposition: inline In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: Hello Eduard, On Tue, Mar 30, 2010 at 11:20:01AM +0300, Eduard - Gabriel Munteanu wrote: > This patchset is intended to provide a start for implementing the > emulation of the AMD IOMMU. For those who aren't aware yet, I intend > to participate as a student in GSoC 2010. Great. This is a good start. > In short, this demonstrates a mechanism of inserting ACPI tables without > modifying SeaBIOS or other BIOS implementations. I also have a SeaBIOS > equivalent, but I think this approach is better, at least at the moment. I like the approach implemented in this patchset because of its simplicity. The right place for building acpi tables is the bios, though. I am fine with both ways. Anthony, Avi, what do you think about it? > I wouldn't merge this patchset yet, at least stuff after the first patch, > until it accumulates more work. I also didn't test loading ACPI tables from > the command line after these modifications. When Linux finds an IVRS table it expects that there is a working AMD IOMMU so you should change this patchset so that the ACPI table is enabled later when the hardware emulation is working. That will keep this work bisectable. As the next step I suggest you to implement an AMD IOMMU pci device with the config space, capability and the mmio register space. Regards, Joerg From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NwhJ7-0004vD-St for qemu-devel@nongnu.org; Tue, 30 Mar 2010 15:41:01 -0400 Received: from [140.186.70.92] (port=52113 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NwhJ6-0004uU-Ds for qemu-devel@nongnu.org; Tue, 30 Mar 2010 15:41:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NwhJ4-0007QQ-Qs for qemu-devel@nongnu.org; Tue, 30 Mar 2010 15:41:00 -0400 Received: from 8bytes.org ([88.198.83.132]:56952) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NwhJ4-0007QE-M0 for qemu-devel@nongnu.org; Tue, 30 Mar 2010 15:40:58 -0400 Date: Tue, 30 Mar 2010 21:40:57 +0200 From: Joerg Roedel Message-ID: <20100330194056.GB24846@8bytes.org> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Subject: [Qemu-devel] Re: [RFC PATCH 0/7] Beginning implementing the AMD IOMMU emulation List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduard - Gabriel Munteanu Cc: aliguori@us.ibm.com, avi@redhat.com, kvm@vger.kernel.org, qemu-devel@nongnu.org Hello Eduard, On Tue, Mar 30, 2010 at 11:20:01AM +0300, Eduard - Gabriel Munteanu wrote: > This patchset is intended to provide a start for implementing the > emulation of the AMD IOMMU. For those who aren't aware yet, I intend > to participate as a student in GSoC 2010. Great. This is a good start. > In short, this demonstrates a mechanism of inserting ACPI tables without > modifying SeaBIOS or other BIOS implementations. I also have a SeaBIOS > equivalent, but I think this approach is better, at least at the moment. I like the approach implemented in this patchset because of its simplicity. The right place for building acpi tables is the bios, though. I am fine with both ways. Anthony, Avi, what do you think about it? > I wouldn't merge this patchset yet, at least stuff after the first patch, > until it accumulates more work. I also didn't test loading ACPI tables from > the command line after these modifications. When Linux finds an IVRS table it expects that there is a working AMD IOMMU so you should change this patchset so that the ACPI table is enabled later when the hardware emulation is working. That will keep this work bisectable. As the next step I suggest you to implement an AMD IOMMU pci device with the config space, capability and the mmio register space. Regards, Joerg