From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37250) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a3MnM-0000By-1c for qemu-devel@nongnu.org; Mon, 30 Nov 2015 06:39:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1a3MnL-0006Kv-1a for qemu-devel@nongnu.org; Mon, 30 Nov 2015 06:38:59 -0500 Received: from mx1.redhat.com ([209.132.183.28]:56672) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1a3MnK-0006Kh-Sc for qemu-devel@nongnu.org; Mon, 30 Nov 2015 06:38:58 -0500 References: <1447939696-28930-1-git-send-email-mst@redhat.com> <1447939696-28930-8-git-send-email-mst@redhat.com> <565AED2E.4010404@gmail.com> From: Marcel Apfelbaum Message-ID: <565C354B.8060802@redhat.com> Date: Mon, 30 Nov 2015 13:38:51 +0200 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PULL 07/15] q35: Check propery to determine if iommu is set List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Bandan Das , Marcel Apfelbaum Cc: Peter Maydell , qemu-devel@nongnu.org, "Michael S. Tsirkin" On 11/29/2015 08:22 PM, Bandan Das wrote: > Hi Marcel, > > Marcel Apfelbaum writes: > ... >> >> Maybe is too late, but this contradicts QEMU usage, as I understand > Why late ? We can always revert it :) Well, this is why I am so disappointment in myself that I didn't catch this earlier. I *really* don't like doing this. :( On the bright side this is a 're-factoring only' patch, so we can take our time with it. > >> object_property_get_* should be used when we don't know object's type. > My understanding is that it's not mandatory to use it only when type > is unknown. Ofcourse, it makes it redundant when you do know the type. > > I tend to follow convention, I noticed another call to qdev_get_machine, > and so opted for this. I am actually ok either way and don't prefer one way > over the other. This part actually makes sense. qdev_get_machine should be preferred over current_machine global variable that should disappear (IMHO). But once we have the machine as Object, we can simply cast it to machine and get the field with MACHINE(qdev_get_machine())->iommu instead of calling the property 'by name'. And the wrapper machine_iommu was a "commodity method" requested by (some) QOM guys who don't like calling the "object internals" in other files. However since "iommmu" is a simple flag, I suppose we gain nothing from the wrapper. Thanks, Marcel > >> Why use "iommu" when you can simply call current_machine->iommu ? >> (if you don't like the wrapper, which is pretty harmless in my opinion) > >> >> Thanks, >> Marcel >> >>> mch_init_dmar(mch); >>> } >>> } >>>