From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60812) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bfiCb-0002Vs-I4 for qemu-devel@nongnu.org; Fri, 02 Sep 2016 02:43:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bfiCX-0004gu-Cw for qemu-devel@nongnu.org; Fri, 02 Sep 2016 02:43:48 -0400 Received: from 2.mo68.mail-out.ovh.net ([46.105.52.162]:34642) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bfiCX-0004gP-7X for qemu-devel@nongnu.org; Fri, 02 Sep 2016 02:43:45 -0400 Received: from player695.ha.ovh.net (b9.ovh.net [213.186.33.59]) by mo68.mail-out.ovh.net (Postfix) with ESMTP id 59AF1FF98BC for ; Fri, 2 Sep 2016 08:43:44 +0200 (CEST) References: <1472797976-24210-1-git-send-email-nikunj@linux.vnet.ibm.com> From: =?UTF-8?Q?C=c3=a9dric_Le_Goater?= Message-ID: Date: Fri, 2 Sep 2016 08:43:37 +0200 MIME-Version: 1.0 In-Reply-To: <1472797976-24210-1-git-send-email-nikunj@linux.vnet.ibm.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH RFC 0/4] Enable MTTCG on PowerPC List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Nikunj A Dadhania , qemu-ppc@nongnu.org, alex.bennee@linaro.org, david@gibson.dropbear.id.au, rth@twiddle.net Cc: qemu-devel@nongnu.org On 09/02/2016 08:32 AM, Nikunj A Dadhania wrote: > The series is a first attempt at enabling Multi-Threaded TCG on PowerPC. > Changes that were needed to enable PowerPC are pretty simple; > > Patch 01: Take a iothread lock during hcall, as hcall can generate io requests > 02: For TCG, we were harcoding smt as 1, this gets rid of the limitation > 03: Use atomic_cmpxchg in store conditional > 04: With more threads, flush the entry from each cpu. > This can be optimized further. > > The patches are based on the Alex Bennee's base enabling patches for > MTTCG[1] and Emilios's cmpxchg atomics. The consolidated tree of the > above patches is here: > > https://github.com/stsquad/qemu/tree/mttcg/base-patches-v4-with-cmpxchg-atomics-v2 > > Apart from the above, PPC patches are based out of ppc-for-2.8 and > load/store consolidation patches [2] > > Series with all dependent patches available here: > https://github.com/nikunjad/qemu/tree/ppc_mttcg_v1 > > Testing: > ======== > > -smp 4,cores=1,threads=4 -accel tcg,thread=multi > > TODO > ==== > Implement msgsndp instructions(door-bell), newer kernels enable it > depending on the PVR. I have been using following workaround to boot. > https://github.com/nikunjad/qemu/commit/2c10052c5f93418a6b920e6ba3ce1813fcf50bc4 You could also introduce a Power8 DD1 in qemu. From the kernel cputable : { /* Power8 DD1: Does not support doorbell IPIs */ .pvr_mask = 0xffffff00, .pvr_value = 0x004d0100, .cpu_name = "POWER8 (raw)", .cpu_features = CPU_FTRS_POWER8_DD1, ... Cheers, C.