From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:45834) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QMwzH-0008NC-4F for qemu-devel@nongnu.org; Thu, 19 May 2011 02:45:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QMwzF-0000BD-Lr for qemu-devel@nongnu.org; Thu, 19 May 2011 02:45:35 -0400 Received: from ozlabs.org ([203.10.76.45]:45317) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QMwzE-0000B6-Vf for qemu-devel@nongnu.org; Thu, 19 May 2011 02:45:33 -0400 Date: Thu, 19 May 2011 16:45:28 +1000 From: David Gibson Message-ID: <20110519064528.GJ3015@yookeroo.fritz.box> References: <1301023292-24977-1-git-send-email-david@gibson.dropbear.id.au> <1301023292-24977-2-git-send-email-david@gibson.dropbear.id.au> <2F295803-5875-4781-A52D-101CE9DD1DDF@web.de> <20110519053934.GH3015@yookeroo.fritz.box> <67F15A3F-5EE2-4825-8766-2CA2D6B3356B@web.de> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <67F15A3F-5EE2-4825-8766-2CA2D6B3356B@web.de> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 01/27] Clean up PowerPC SLB handling code List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Andreas =?iso-8859-1?Q?F=E4rber?= Cc: Alexander Graf , "qemu-devel@nongnu.org Developers" , Kenneth Salerno , paulus@samba.org, anton@samba.org, The OpenBIOS Mailinglist On Thu, May 19, 2011 at 08:00:53AM +0200, Andreas F=E4rber wrote: > Am 19.05.2011 um 07:39 schrieb David Gibson: >=20 > >On Thu, May 19, 2011 at 07:35:30AM +0200, Andreas F=E4rber wrote: > >>Am 25.03.2011 um 04:21 schrieb David Gibson: > >> > >>>Currently the SLB information when emulating a PowerPC 970 is > >>>storeed in a structure with the unhelpfully named fields 'tmp' > >>>and 'tmp64'. While the layout in these fields does match the > >>>description of the SLB in the architecture document, it is not > >>>convenient either for looking up the SLB, or for emulating the > >>>slbmte instruction. > >>> > >>>This patch, therefore, reorganizes the SLB entry structure to be > >>>divided in the the "ESID related" and "VSID related" fields as > >>>they are divided in instructions accessing the SLB. > >>> > >>>In addition to making the code smaller and more readable, this will > >>>make it easier to implement for the 1TB segments used in more > >>>recent PowerPC chips. > >>> > >>>Signed-off-by: David Gibson > >> > >>According to my bisect, this patch broke ppc64 OpenBIOS. > >> > >>David, would you please take a look? > > > >Uh, sure. can you describe the symptoms of the breakage, and the > >exact qemu setup you've observed the problem with? >=20 > $ uname -a > Darwin PMG5-3.local 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 > 16:57:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_PPC Power Macintosh > # Mac OS X 10.5.8 on dual-core G5 >=20 > $ gcc-4.2 --version > powerpc-apple-darwin9-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5577) > Copyright (C) 2007 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There > is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR > PURPOSE. >=20 > ../qemu/configure --prefix=3D/Users/andreas/QEMU/latest64 \ > --target-list=3Dppc-softmmu,ppc64-softmmu \ > --extra-cflags=3D"-arch ppc64" --extra-ldflags=3D"-arch ppc64" --cc=3Dg= cc-4.2 > --host-cc=3Dgcc-4.2 \ > --enable-cocoa --disable-kvm --disable-strip --disable-docs > --enable-io-thread $* > # I/O thread doesn't matter >=20 > /Users/andreas/QEMU/qemu64/ppc64-softmmu/qemu-system-ppc64 -boot d -cdr= om > /Users/andreas/QEMU/AIX/dvd.1022A4_OBETA_710.iso \ > -bios /Users/andreas/QEMU/OpenBIOS/openbios/obj-ppc64/openbios-qemu.elf > -m 1024 \ > -M mac99 -prom-env 'auto-boot?=3Dfalse' -nographic >=20 > CD should be irrelevant, -boot c -hda /dev/null should work the same. Um, yeah, I thought putting an AIX dvd into a Mac was a bit odd. > Expected: OpenBIOS banner and > prompt > Observed: DSI exception on mtmsrd, no serial output Does this happen only with your openbios image, or does it also happen with the one included in qemu? My working theory is that openbios is using the old 32-64 bridge stuff where segment register accesses are emulated to populate certain SLB slots. I have a vague recollection that I saw the code implementing that when I was doing the cleanup and convinced myself it was not necessary. More information as I investigate further. > (The regression on ppc32 AIX observed by Kenneth seems to be a > different issue, introduced earlier.) I don't know what that regression is; I don't read qemu-devel exhaustively. If you want my attention, best to CC me directly. --=20 David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other= _ | _way_ _around_! http://www.ozlabs.org/~dgibson