From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43877) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z9Wq2-000210-H4 for qemu-devel@nongnu.org; Mon, 29 Jun 2015 07:02:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z9Wpz-0007je-6E for qemu-devel@nongnu.org; Mon, 29 Jun 2015 07:02:58 -0400 Message-ID: <559125DA.7030603@suse.de> Date: Mon, 29 Jun 2015 13:02:50 +0200 From: Alexander Graf MIME-Version: 1.0 References: <1435556214-2916-1-git-send-email-david@gibson.dropbear.id.au> <1435556214-2916-5-git-send-email-david@gibson.dropbear.id.au> <5590F958.9020306@redhat.com> <20150629113037.64f0d08f@thh440s> <5591152B.7090200@redhat.com> <559115FC.3090805@redhat.com> <559118B5.4060306@suse.de> <55911C53.9070001@redhat.com> <55911F9A.4040208@suse.de> <55912166.6030504@suse.de> In-Reply-To: <55912166.6030504@suse.de> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 4/4] Disable "info irq" and "info pic" for target-ppc List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?windows-1252?Q?Andreas_F=E4rber?= , Laurent Vivier Cc: Thomas Huth , armbru@redhat.com, qemu-devel@nongnu.org, lcapitulino@redhat.com, qemu-ppc@nongnu.org, David Gibson On 06/29/15 12:43, Andreas F=E4rber wrote: > Am 29.06.2015 um 12:36 schrieb Andreas F=E4rber: >> Am 29.06.2015 um 12:22 schrieb Laurent Vivier: >>> On 29/06/2015 12:06, Andreas F=E4rber wrote: >>>> Am 29.06.2015 um 11:55 schrieb Laurent Vivier: >>>>> On 29/06/2015 11:51, Laurent Vivier wrote: >>>>>> On 29/06/2015 11:30, Thomas Huth wrote: >>>>>>> On Mon, 29 Jun 2015 09:52:56 +0200 >>>>>>> Laurent Vivier wrote: >>>>>>>> On 29/06/2015 07:36, David Gibson wrote: >>>>>>>>> diff --git a/monitor.c b/monitor.c >>>>>>>>> index aeea2b5..8c56bfa 100644 >>>>>>>>> --- a/monitor.c >>>>>>>>> +++ b/monitor.c >>>>>>>>> @@ -2573,7 +2573,7 @@ static mon_cmd_t info_cmds[] =3D { >>>>>>>>> .help =3D "show the command line history", >>>>>>>>> .mhandler.cmd =3D hmp_info_history, >>>>>>>>> }, >>>>>>>>> -#if defined(TARGET_I386) || defined(TARGET_PPC) || defined(TAR= GET_MIPS) || \ >>>>>>>>> +#if defined(TARGET_I386) || defined(TARGET_MIPS) || \ >>>>>>>>> defined(TARGET_LM32) || (defined(TARGET_SPARC) && !define= d(TARGET_SPARC64)) >>>>>>>>> { >>>>>>>>> .name =3D "irq", >>>>>>>>> >>>>>>>> Perhaps we can a use a "#if defined(CONFIG_I8259) || >>>>>>>> defined(CONFIG_LM32) || (defined(TARGE_SPARC) && >>>>>>>> !defined(TARGET_SPARC64))" instead, so we keep the command for P= ReP ? >>>>>>> AFAIK this currently won't work since CONFIG_I8259 is only define= d for >>>>>>> the Makefiles, but not for the C pre-processor :-( >>>>>> Yes, I see that afterward, but ... >>>>>> >>>>>>> So unless somebody fixes that first, I think David's approach is = the >>>>>>> only practicable solution right now. >>>>>> if you add "config-devices.h" in GENERATED_HEADERS in Makefile.tar= get, >>>>>> and include "config-devices.h" in monitor.c, it works (all PREP >>>>>> dependencies in default-configs/ppc64-softmmu.mak must be removed = too) >>>>>> >>>>>> But does this change acceptable for a tiny improvement ? >>>>> In fine, I think we can also do like for sparc: >>>>> >>>>> defined(TARGET_PPC) && !defined(TARGET_PPC64) >>>> Alex specifically requested PReP to be made available in ppc64, too. >>> Thank you Andreas. >>> >>> But why ? (I didn't find the answer with google, a link can be helpfu= l). > http://git.qemu-project.org/?p=3Dqemu.git;a=3Dcommit;h=3Dacbb090b2400f6= 27a801074c4e3e006c7501bb26 > > (found by looking at the ppc64-softmmu.mak Git history) > > Judging by Markus as the reporter, I assume it was a tree-wide analysis > that came up with this inconsistency, which I was then asked to fix thi= s > way. Yes, it's consistency. All 64bit targets allow to run their 32bit=20 machine types as well. Whether this is a sensible thing to do or not is=20 a different discussion that (if we want to) we need to do outside of the=20 scope of this mail thread. As far as this patch goes, you get a clear nack from me, as it's a=20 regression for the prep target. Please just QOM'ify the interrupt=20 controller, add an interfact that allows you to query the irq stats and=20 then loop through all devices searching for that interface in the object=20 tree. That way we should be able to get rid of all #ifdefs in that=20 particular code and enable new irq controllers to expose their stats easi= ly. Alex