* [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... @ 2008-02-24 14:10 Blue Swirl 0 siblings, 0 replies; 24+ messages in thread From: Blue Swirl @ 2008-02-24 14:10 UTC (permalink / raw) To: qemu-devel CVSROOT: /cvsroot/qemu Module name: qemu Changes by: Blue Swirl <blueswir1> 08/02/24 14:10:06 Modified files: target-sparc : exec.h op.c op_helper.c op_mem.h translate.c Added files: target-sparc : helper.h Removed files: target-sparc : op_template.h Log message: Modify Sparc32/64 to use TCG CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/exec.h?cvsroot=qemu&r1=1.24&r2=1.25 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op.c?cvsroot=qemu&r1=1.47&r2=1.48 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_helper.c?cvsroot=qemu&r1=1.66&r2=1.67 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_mem.h?cvsroot=qemu&r1=1.13&r2=1.14 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c?cvsroot=qemu&r1=1.88&r2=1.89 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/helper.h?cvsroot=qemu&rev=1.1 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_template.h?cvsroot=qemu&r1=1.2&r2=0 ^ permalink raw reply [flat|nested] 24+ messages in thread
* [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... @ 2007-09-21 19:10 Blue Swirl 2007-09-21 19:32 ` Andreas Färber 0 siblings, 1 reply; 24+ messages in thread From: Blue Swirl @ 2007-09-21 19:10 UTC (permalink / raw) To: qemu-devel CVSROOT: /cvsroot/qemu Module name: qemu Changes by: Blue Swirl <blueswir1> 07/09/21 19:10:53 Modified files: target-sparc : exec.h op.c op_helper.c op_mem.h translate.c Log message: Rework ASI instructions (Aurelien Jarno) CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/exec.h?cvsroot=qemu&r1=1.19&r2=1.20 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op.c?cvsroot=qemu&r1=1.39&r2=1.40 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_helper.c?cvsroot=qemu&r1=1.36&r2=1.37 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_mem.h?cvsroot=qemu&r1=1.9&r2=1.10 http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c?cvsroot=qemu&r1=1.68&r2=1.69 ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 19:10 Blue Swirl @ 2007-09-21 19:32 ` Andreas Färber 2007-09-21 20:25 ` Blue Swirl 2007-09-21 20:26 ` Aurelien Jarno 0 siblings, 2 replies; 24+ messages in thread From: Andreas Färber @ 2007-09-21 19:32 UTC (permalink / raw) To: qemu-devel Am 21.09.2007 um 21:10 schrieb Blue Swirl: > CVSROOT: /cvsroot/qemu > Module name: qemu > Changes by: Blue Swirl <blueswir1> 07/09/21 19:10:53 > > Modified files: > target-sparc : exec.h op.c op_helper.c op_mem.h translate.c > > Log message: > Rework ASI instructions (Aurelien Jarno) > > CVSWeb URLs: > http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/exec.h? > cvsroot=qemu&r1=1.19&r2=1.20 > http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op.c? > cvsroot=qemu&r1=1.39&r2=1.40 > http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_helper.c? > cvsroot=qemu&r1=1.36&r2=1.37 > http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_mem.h? > cvsroot=qemu&r1=1.9&r2=1.10 > http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c? > cvsroot=qemu&r1=1.68&r2=1.69 > These changes appear to have broken sparc32-softmmu on OS X v10.4 ppc: The OpenBIOS screen no longer appears. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 19:32 ` Andreas Färber @ 2007-09-21 20:25 ` Blue Swirl 2007-09-21 20:41 ` Andreas Färber 2007-09-21 20:26 ` Aurelien Jarno 1 sibling, 1 reply; 24+ messages in thread From: Blue Swirl @ 2007-09-21 20:25 UTC (permalink / raw) To: qemu-devel On 9/21/07, Andreas Färber <andreas.faerber@web.de> wrote: > These changes appear to have broken sparc32-softmmu on OS X v10.4 > ppc: The OpenBIOS screen no longer appears. I had exactly the same problem, but "make clean" fixed it. Some dependencies are not correct. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 20:25 ` Blue Swirl @ 2007-09-21 20:41 ` Andreas Färber 0 siblings, 0 replies; 24+ messages in thread From: Andreas Färber @ 2007-09-21 20:41 UTC (permalink / raw) To: qemu-devel Am 21.09.2007 um 22:25 schrieb Blue Swirl: > On 9/21/07, Andreas Färber <andreas.faerber@web.de> wrote: >> These changes appear to have broken sparc32-softmmu on OS X v10.4 >> ppc: The OpenBIOS screen no longer appears. > > I had exactly the same problem, but "make clean" fixed it. Some > dependencies are not correct. Negative, not even a make distclean + configure fixes it... ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 19:32 ` Andreas Färber 2007-09-21 20:25 ` Blue Swirl @ 2007-09-21 20:26 ` Aurelien Jarno 2007-09-21 21:07 ` Aurelien Jarno 1 sibling, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-21 20:26 UTC (permalink / raw) To: qemu-devel On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: > > > Am 21.09.2007 um 21:10 schrieb Blue Swirl: > > >CVSROOT: /cvsroot/qemu > >Module name: qemu > >Changes by: Blue Swirl <blueswir1> 07/09/21 19:10:53 > > > >Modified files: > > target-sparc : exec.h op.c op_helper.c op_mem.h translate.c > > > >Log message: > > Rework ASI instructions (Aurelien Jarno) > > > >CVSWeb URLs: > >http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/exec.h? > >cvsroot=qemu&r1=1.19&r2=1.20 > >http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op.c? > >cvsroot=qemu&r1=1.39&r2=1.40 > >http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_helper.c? > >cvsroot=qemu&r1=1.36&r2=1.37 > >http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_mem.h? > >cvsroot=qemu&r1=1.9&r2=1.10 > >http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c? > >cvsroot=qemu&r1=1.68&r2=1.69 > > > > These changes appear to have broken sparc32-softmmu on OS X v10.4 > ppc: The OpenBIOS screen no longer appears. > Could you try to see if qemu.log contains useful debug information while running in debug mode? I am currently building qemu-sparc on a powerpc (GNU/Linux) to try to reproduce the problem, but my machine isn't really fast, it will take some time. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 20:26 ` Aurelien Jarno @ 2007-09-21 21:07 ` Aurelien Jarno 2007-09-21 21:20 ` Andreas Färber 0 siblings, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-21 21:07 UTC (permalink / raw) To: qemu-devel Aurelien Jarno a écrit : > On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: >> >> Am 21.09.2007 um 21:10 schrieb Blue Swirl: >> >>> CVSROOT: /cvsroot/qemu >>> Module name: qemu >>> Changes by: Blue Swirl <blueswir1> 07/09/21 19:10:53 >>> >>> Modified files: >>> target-sparc : exec.h op.c op_helper.c op_mem.h translate.c >>> >>> Log message: >>> Rework ASI instructions (Aurelien Jarno) >>> >>> CVSWeb URLs: >>> http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/exec.h? >>> cvsroot=qemu&r1=1.19&r2=1.20 >>> http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op.c? >>> cvsroot=qemu&r1=1.39&r2=1.40 >>> http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_helper.c? >>> cvsroot=qemu&r1=1.36&r2=1.37 >>> http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/op_mem.h? >>> cvsroot=qemu&r1=1.9&r2=1.10 >>> http://cvs.savannah.gnu.org/viewcvs/qemu/target-sparc/translate.c? >>> cvsroot=qemu&r1=1.68&r2=1.69 >>> >> These changes appear to have broken sparc32-softmmu on OS X v10.4 >> ppc: The OpenBIOS screen no longer appears. >> > > Could you try to see if qemu.log contains useful debug information while > running in debug mode? > > I am currently building qemu-sparc on a powerpc (GNU/Linux) to try to > reproduce the problem, but my machine isn't really fast, it will take > some time. I am able to reproduce it, so it's probably an endianness problem. I am debugging... -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 21:07 ` Aurelien Jarno @ 2007-09-21 21:20 ` Andreas Färber 2007-09-22 11:49 ` Aurelien Jarno 0 siblings, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-21 21:20 UTC (permalink / raw) To: qemu-devel Am 21.09.2007 um 23:07 schrieb Aurelien Jarno: > Aurelien Jarno a écrit : >> On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: >>> These changes appear to have broken sparc32-softmmu on OS X v10.4 >>> ppc: The OpenBIOS screen no longer appears. >>> >> >> Could you try to see if qemu.log contains useful debug information >> while >> running in debug mode? >> >> I am currently building qemu-sparc on a powerpc (GNU/Linux) to try to >> reproduce the problem, but my machine isn't really fast, it will take >> some time. > > I am able to reproduce it, so it's probably an endianness problem. > I am > debugging... I have been unable to enter the monitor... If you need more information from me, please provide detailed instructions how to obtain the requested log file. Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-21 21:20 ` Andreas Färber @ 2007-09-22 11:49 ` Aurelien Jarno 2007-09-22 12:07 ` Blue Swirl 2007-09-22 13:11 ` Andreas Färber 0 siblings, 2 replies; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 11:49 UTC (permalink / raw) To: qemu-devel On Fri, Sep 21, 2007 at 11:20:26PM +0200, Andreas Färber wrote: > Am 21.09.2007 um 23:07 schrieb Aurelien Jarno: > > >Aurelien Jarno a écrit : > >>On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: > >>>These changes appear to have broken sparc32-softmmu on OS X v10.4 > >>>ppc: The OpenBIOS screen no longer appears. > >>> > >> > >>Could you try to see if qemu.log contains useful debug information > >>while > >>running in debug mode? > >> > >>I am currently building qemu-sparc on a powerpc (GNU/Linux) to try to > >>reproduce the problem, but my machine isn't really fast, it will take > >>some time. > > > >I am able to reproduce it, so it's probably an endianness problem. > >I am > >debugging... > > I have been unable to enter the monitor... If you need more > information from me, please provide detailed instructions how to > obtain the requested log file. > Unfortunately I don't have the same symptoms, so I am not sure it is the same problem. In my case the bug has been introduced by the iommu commit which does not consider big endian hosts. The patch below fixes the problem in my case. Could you please try it? Index: hw/iommu.c =================================================================== RCS file: /sources/qemu/qemu/hw/iommu.c,v retrieving revision 1.15 diff -u -d -p -r1.15 iommu.c --- hw/iommu.c 20 Sep 2007 16:01:51 -0000 1.15 +++ hw/iommu.c 22 Sep 2007 11:45:55 -0000 @@ -212,7 +212,7 @@ static uint32_t iommu_page_get_flags(IOM addr &= ~s->iostart; iopte += (addr >> (PAGE_SHIFT - 2)) & ~3; cpu_physical_memory_read(iopte, (uint8_t *)&ret, 4); - bswap32s(&ret); + tswap32s(&ret); DPRINTF("get flags addr " TARGET_FMT_plx " => pte " TARGET_FMT_plx ", *pte = %x\n", pa, iopte, ret); -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 11:49 ` Aurelien Jarno @ 2007-09-22 12:07 ` Blue Swirl 2007-09-22 13:11 ` Andreas Färber 1 sibling, 0 replies; 24+ messages in thread From: Blue Swirl @ 2007-09-22 12:07 UTC (permalink / raw) To: qemu-devel On 9/22/07, Aurelien Jarno <aurelien@aurel32.net> wrote: > On Fri, Sep 21, 2007 at 11:20:26PM +0200, Andreas Färber wrote: > > Am 21.09.2007 um 23:07 schrieb Aurelien Jarno: > > > > >Aurelien Jarno a écrit : > > >>On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: > > >>>These changes appear to have broken sparc32-softmmu on OS X v10.4 > > >>>ppc: The OpenBIOS screen no longer appears. > > >>> > > >> > > >>Could you try to see if qemu.log contains useful debug information > > >>while > > >>running in debug mode? > > >> > > >>I am currently building qemu-sparc on a powerpc (GNU/Linux) to try to > > >>reproduce the problem, but my machine isn't really fast, it will take > > >>some time. > > > > > >I am able to reproduce it, so it's probably an endianness problem. > > >I am > > >debugging... > > > > I have been unable to enter the monitor... If you need more > > information from me, please provide detailed instructions how to > > obtain the requested log file. > > > > Unfortunately I don't have the same symptoms, so I am not sure it is the > same problem. In my case the bug has been introduced by the iommu commit > which does not consider big endian hosts. > > The patch below fixes the problem in my case. Could you please try it? This should be it. Thanks a lot for debugging! ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 11:49 ` Aurelien Jarno 2007-09-22 12:07 ` Blue Swirl @ 2007-09-22 13:11 ` Andreas Färber 2007-09-22 17:50 ` Aurelien Jarno 1 sibling, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-22 13:11 UTC (permalink / raw) To: qemu-devel Am 22.09.2007 um 13:49 schrieb Aurelien Jarno: > On Fri, Sep 21, 2007 at 11:20:26PM +0200, Andreas Färber wrote: >> Am 21.09.2007 um 23:07 schrieb Aurelien Jarno: >> >>> Aurelien Jarno a écrit : >>>> On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: >>>>> These changes appear to have broken sparc32-softmmu on OS X v10.4 >>>>> ppc: The OpenBIOS screen no longer appears. >>>>> >>>> >>>> Could you try to see if qemu.log contains useful debug information >>>> while >>>> running in debug mode? >>>> >>>> I am currently building qemu-sparc on a powerpc (GNU/Linux) to >>>> try to >>>> reproduce the problem, but my machine isn't really fast, it will >>>> take >>>> some time. >>> >>> I am able to reproduce it, so it's probably an endianness problem. >>> I am >>> debugging... >> >> I have been unable to enter the monitor... If you need more >> information from me, please provide detailed instructions how to >> obtain the requested log file. >> > > Unfortunately I don't have the same symptoms, so I am not sure it > is the > same problem. In my case the bug has been introduced by the iommu > commit > which does not consider big endian hosts. > > The patch below fixes the problem in my case. Could you please try it? I tried Blue Swirl's commit thereof and it still fails for me, same symptoms. The virtual CPU load is at about 80% and nothing happens, no graphical or textual output (after "starting qemu..."), it just hangs. I can't say exactly which commit introduced the breakage but it must've been one this week... And x86 is not affected. Could it be related to the slavio keyboard handling changes? I'm using an Apple keyboard. Or maybe the 64-bit flag extension patch by Alexander Graf? Wildly guessing here... Would recording serial output to a file help? Or does that apply only to boot problems with an OS? Anything else that could help? Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 13:11 ` Andreas Färber @ 2007-09-22 17:50 ` Aurelien Jarno 2007-09-22 19:27 ` Andreas Färber 0 siblings, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 17:50 UTC (permalink / raw) To: qemu-devel Andreas Färber a écrit : > Am 22.09.2007 um 13:49 schrieb Aurelien Jarno: > >> On Fri, Sep 21, 2007 at 11:20:26PM +0200, Andreas Färber wrote: >>> Am 21.09.2007 um 23:07 schrieb Aurelien Jarno: >>> >>>> Aurelien Jarno a écrit : >>>>> On Fri, Sep 21, 2007 at 09:32:00PM +0200, Andreas Färber wrote: >>>>>> These changes appear to have broken sparc32-softmmu on OS X v10.4 >>>>>> ppc: The OpenBIOS screen no longer appears. >>>>>> >>>>> Could you try to see if qemu.log contains useful debug information >>>>> while >>>>> running in debug mode? >>>>> >>>>> I am currently building qemu-sparc on a powerpc (GNU/Linux) to >>>>> try to >>>>> reproduce the problem, but my machine isn't really fast, it will >>>>> take >>>>> some time. >>>> I am able to reproduce it, so it's probably an endianness problem. >>>> I am >>>> debugging... >>> I have been unable to enter the monitor... If you need more >>> information from me, please provide detailed instructions how to >>> obtain the requested log file. >>> >> Unfortunately I don't have the same symptoms, so I am not sure it >> is the >> same problem. In my case the bug has been introduced by the iommu >> commit >> which does not consider big endian hosts. >> >> The patch below fixes the problem in my case. Could you please try it? > > I tried Blue Swirl's commit thereof and it still fails for me, same > symptoms. The virtual CPU load is at about 80% and nothing happens, > no graphical or textual output (after "starting qemu..."), it just > hangs. > > I can't say exactly which commit introduced the breakage but it > must've been one this week... And x86 is not affected. > > Could it be related to the slavio keyboard handling changes? I'm > using an Apple keyboard. > > Or maybe the 64-bit flag extension patch by Alexander Graf? Wildly > guessing here... > > Would recording serial output to a file help? Or does that apply only > to boot problems with an OS? Anything else that could help? > The main think that would help is to find which commit has broken qemu on OS X, or in other words the latest version that is working. Then it would be a lot more easier to find what is wrong in the code. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 17:50 ` Aurelien Jarno @ 2007-09-22 19:27 ` Andreas Färber 2007-09-22 20:06 ` Aurelien Jarno 0 siblings, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-22 19:27 UTC (permalink / raw) To: qemu-devel Am 22.09.2007 um 19:50 schrieb Aurelien Jarno: > The main think that would help is to find which commit has broken qemu > on OS X, or in other words the latest version that is working. Then it > would be a lot more easier to find what is wrong in the code. Okay, so on 2007-09-20 15:30:00 UTC it still worked, that's after the tadd fix by Blue Swirl. At 16:10 UTC booting from DVD was broken but the OpenBIOS screen was still displayed. This should be after the iommu fix by Blue Swirl (for which an endianness fix has been applied today). No change at 22:50 UTC after the flags extension by A. Graf. Again no change at 2007-09-21 19:09:45 UTC after the slavio_serial.c change by Blue Swirl. I regret having to confirm this but it indeed breaks completely at 19:11:00 UTC after your ASI patch is applied... In op_helper.c you appeared to change endianness handling but I don't really understand what the code does so it could be anything... Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 19:27 ` Andreas Färber @ 2007-09-22 20:06 ` Aurelien Jarno 2007-09-22 20:23 ` Andreas Färber 0 siblings, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 20:06 UTC (permalink / raw) To: qemu-devel Andreas Färber a écrit : > Am 22.09.2007 um 19:50 schrieb Aurelien Jarno: > >> The main think that would help is to find which commit has broken qemu >> on OS X, or in other words the latest version that is working. Then it >> would be a lot more easier to find what is wrong in the code. > > Okay, so on 2007-09-20 15:30:00 UTC it still worked, that's after the > tadd fix by Blue Swirl. > > At 16:10 UTC booting from DVD was broken but the OpenBIOS screen was > still displayed. This should be after the iommu fix by Blue Swirl > (for which an endianness fix has been applied today). > > No change at 22:50 UTC after the flags extension by A. Graf. > > Again no change at 2007-09-21 19:09:45 UTC after the slavio_serial.c > change by Blue Swirl. > > I regret having to confirm this but it indeed breaks completely at > 19:11:00 UTC after your ASI patch is applied... In op_helper.c you > appeared to change endianness handling but I don't really understand > what the code does so it could be anything... > I really doubt it is an endianness problem as the current CVS works perfectly on GNU/Linux powerpc. The code in op_helper.c adds support for target little endian access (sparc is big endian), but it is anyway not used in openbios. We have to debug the problem and find what is wrong with OS X: - Which version of GCC are you using? - Could you please try to run qemu with -nographic? - Also could you please try to run qemu with -d in_asm,op and send us /tmp/qemu.log? -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 20:06 ` Aurelien Jarno @ 2007-09-22 20:23 ` Andreas Färber 2007-09-22 20:34 ` Aurelien Jarno 0 siblings, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-22 20:23 UTC (permalink / raw) To: qemu-devel [-- Attachment #1: Type: text/plain, Size: 1142 bytes --] Am 22.09.2007 um 22:06 schrieb Aurelien Jarno: > I really doubt it is an endianness problem as the current CVS works > perfectly on GNU/Linux powerpc. The code in op_helper.c adds > support for > target little endian access (sparc is big endian), but it is anyway > not > used in openbios. We have to debug the problem and find what is wrong > with OS X: > > - Which version of GCC are you using? I have a gcc 4.0.1 installed but configure appears to choose gcc-3.3: $ gcc-3.3 --version gcc-3.3 (GCC) 3.3 20030304 (Apple Computer, Inc. build 1819) Copyright (C) 2002 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. > - Could you please try to run qemu with -nographic? I already tried that, it makes no difference - it hangs after "starting qemu...". > - Also could you please try to run qemu with -d in_asm,op and send us > /tmp/qemu.log? Of course, see attached. (CVS HEAD configured as before, with .../ qemu-system-sparc -boot d -cdrom ...solaris10sparc.iso -nographic -d in_asm,op) [-- Attachment #2: qemu.log --] [-- Type: application/octet-stream, Size: 1970 bytes --] -------------- IN: 0xffd00000: b 0xffd040c0 0xffd00004: nop OP: 0x0000: jmp_im 0xffd040c0 0x0001: movl_npc_im 0xffd040c4 0x0002: movl_T0_0 0x0003: exit_tb 0x0004: end -------------- IN: 0xffd040c0: sethi %hi(0x71200000), %g1 0xffd040c4: lduba [ %g1 ] #ASI_M_BYPASS, %g2 0xffd040c8: cmp %g2, 0x51 0xffd040cc: bne 0xffd041a0 0xffd040d0: inc %g1 OP: 0x0000: movl_T0_im 0x71200000 0x0001: movl_g1_T0 0x0002: jmp_im 0xffd040c4 0x0003: movl_npc_im 0xffd040c8 0x0004: movl_T0_g1 0x0005: ld_asi 0x20 0x1 0x0 0x0006: movl_g2_T1 0x0007: movl_T0_g2 0x0008: movl_T1_sim 0x51 0x0009: sub_T1_T0_cc 0x000a: eval_bne 0x000b: movl_T0_g1 0x000c: movl_T1_sim 0x1 0x000d: add_T1_T0 0x000e: movl_g1_T0 0x000f: jz_T2_label 0x0 0x0010: goto_tb0 0x0011: jmp_im 0xffd041a0 0x0012: movl_npc_im 0xffd041a4 0x0013: movl_T0_im 0x8ae344 0x0014: exit_tb 0x0015: goto_tb1 0x0016: jmp_im 0xffd040d4 0x0017: movl_npc_im 0xffd040d8 0x0018: movl_T0_im 0x8ae345 0x0019: exit_tb 0x001a: end -------------- IN: 0xffd041a0: sethi %hi(0xf1200000), %g1 0xffd041a4: lduba [ %g1 ] #ASI_M_CTL, %g2 0xffd041a8: cmp %g2, 0x51 0xffd041ac: bne 0xffd04198 0xffd041b0: inc %g1 OP: 0x0000: movl_T0_im 0xf1200000 0x0001: movl_g1_T0 0x0002: jmp_im 0xffd041a4 0x0003: movl_npc_im 0xffd041a8 0x0004: movl_T0_g1 0x0005: ld_asi 0x2f 0x1 0x0 0x0006: movl_g2_T1 0x0007: movl_T0_g2 0x0008: movl_T1_sim 0x51 0x0009: sub_T1_T0_cc 0x000a: eval_bne 0x000b: movl_T0_g1 0x000c: movl_T1_sim 0x1 0x000d: add_T1_T0 0x000e: movl_g1_T0 0x000f: jz_T2_label 0x0 0x0010: goto_tb0 0x0011: jmp_im 0xffd04198 0x0012: movl_npc_im 0xffd0419c 0x0013: movl_T0_im 0x8ae388 0x0014: exit_tb 0x0015: goto_tb1 0x0016: jmp_im 0xffd041b4 0x0017: movl_npc_im 0xffd041b8 0x0018: movl_T0_im 0x8ae389 0x0019: exit_tb 0x001a: end -------------- IN: 0xffd04198: b 0xffd04198 0xffd0419c: nop OP: 0x0000: goto_tb0 0x0001: jmp_im 0xffd04198 0x0002: movl_npc_im 0xffd0419c 0x0003: movl_T0_im 0x8ae3cc 0x0004: exit_tb 0x0005: end [-- Attachment #3: Type: text/plain, Size: 52 bytes --] Thanks for your interest, and let me know, Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 20:23 ` Andreas Färber @ 2007-09-22 20:34 ` Aurelien Jarno 2007-09-22 21:21 ` Andreas Färber 2007-09-22 21:41 ` Aurelien Jarno 0 siblings, 2 replies; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 20:34 UTC (permalink / raw) To: qemu-devel Andreas Färber a écrit : > Am 22.09.2007 um 22:06 schrieb Aurelien Jarno: > >> I really doubt it is an endianness problem as the current CVS works >> perfectly on GNU/Linux powerpc. The code in op_helper.c adds >> support for >> target little endian access (sparc is big endian), but it is anyway >> not >> used in openbios. We have to debug the problem and find what is wrong >> with OS X: >> >> - Which version of GCC are you using? > > I have a gcc 4.0.1 installed but configure appears to choose gcc-3.3: > > $ gcc-3.3 --version > gcc-3.3 (GCC) 3.3 20030304 (Apple Computer, Inc. build 1819) > Copyright (C) 2002 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. > >> - Could you please try to run qemu with -nographic? > > I already tried that, it makes no difference - it hangs after > "starting qemu...". > >> - Also could you please try to run qemu with -d in_asm,op and send us >> /tmp/qemu.log? > > Of course, see attached. (CVS HEAD configured as before, with .../ > qemu-system-sparc -boot d -cdrom ...solaris10sparc.iso -nographic -d > in_asm,op) > Thanks, that's helpful, it looks like the "lduba" instructions is not working correctly in your case. Now I have to find why. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 20:34 ` Aurelien Jarno @ 2007-09-22 21:21 ` Andreas Färber 2007-09-22 21:41 ` Aurelien Jarno 1 sibling, 0 replies; 24+ messages in thread From: Andreas Färber @ 2007-09-22 21:21 UTC (permalink / raw) To: qemu-devel >> Am 22.09.2007 um 22:06 schrieb Aurelien Jarno: >> >>> I really doubt it is an endianness problem as the current CVS works >>> perfectly on GNU/Linux powerpc. I can confirm that OpenBIOS displays fine at CVS HEAD under Debian GNU/Linux ppc64 on the same machine (gcc 3.4, SDL). Maybe alignment differences? ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 20:34 ` Aurelien Jarno 2007-09-22 21:21 ` Andreas Färber @ 2007-09-22 21:41 ` Aurelien Jarno 2007-09-22 21:58 ` Andreas Färber 1 sibling, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 21:41 UTC (permalink / raw) To: qemu-devel Aurelien Jarno a écrit : > Andreas Färber a écrit : >> Am 22.09.2007 um 22:06 schrieb Aurelien Jarno: >> >>> I really doubt it is an endianness problem as the current CVS works >>> perfectly on GNU/Linux powerpc. The code in op_helper.c adds >>> support for >>> target little endian access (sparc is big endian), but it is anyway >>> not >>> used in openbios. We have to debug the problem and find what is wrong >>> with OS X: >>> >>> - Which version of GCC are you using? >> I have a gcc 4.0.1 installed but configure appears to choose gcc-3.3: >> >> $ gcc-3.3 --version >> gcc-3.3 (GCC) 3.3 20030304 (Apple Computer, Inc. build 1819) >> Copyright (C) 2002 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. >> >>> - Could you please try to run qemu with -nographic? >> I already tried that, it makes no difference - it hangs after >> "starting qemu...". >> >>> - Also could you please try to run qemu with -d in_asm,op and send us >>> /tmp/qemu.log? >> Of course, see attached. (CVS HEAD configured as before, with .../ >> qemu-system-sparc -boot d -cdrom ...solaris10sparc.iso -nographic -d >> in_asm,op) >> > > Thanks, that's helpful, it looks like the "lduba" instructions is not > working correctly in your case. Now I have to find why. I don't really understand, because that is the part of the code (at least from the op point of view) that is almost unchanged. Looking at the code again and again I can't see any problem. Could you please try to find the values of T1 at the end of helper_ld_asi (adding a printf or using gdb). That may help us to understand what is the problem. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 21:41 ` Aurelien Jarno @ 2007-09-22 21:58 ` Andreas Färber 2007-09-22 23:11 ` Aurelien Jarno 0 siblings, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-22 21:58 UTC (permalink / raw) To: qemu-devel Am 22.09.2007 um 23:41 schrieb Aurelien Jarno: > Aurelien Jarno a écrit : >> Thanks, that's helpful, it looks like the "lduba" instructions is not >> working correctly in your case. Now I have to find why. > > I don't really understand, because that is the part of the code (at > least from the op point of view) that is almost unchanged. Looking at > the code again and again I can't see any problem. > > Could you please try to find the values of T1 at the end of > helper_ld_asi (adding a printf or using gdb). That may help us to > understand what is the problem. With: printf("helper_ld_asi: T1 = %llx\n", T1); // not sure if that's correct? I get these two: helper_ld_asi: T1 = 5171200000 helper_ld_asi: T1 = 0 Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 21:58 ` Andreas Färber @ 2007-09-22 23:11 ` Aurelien Jarno 2007-09-23 8:44 ` Andreas Färber 2007-09-25 17:45 ` Andreas Färber 0 siblings, 2 replies; 24+ messages in thread From: Aurelien Jarno @ 2007-09-22 23:11 UTC (permalink / raw) To: qemu-devel Andreas Färber a écrit : > Am 22.09.2007 um 23:41 schrieb Aurelien Jarno: > >> Aurelien Jarno a écrit : >>> Thanks, that's helpful, it looks like the "lduba" instructions is not >>> working correctly in your case. Now I have to find why. >> I don't really understand, because that is the part of the code (at >> least from the op point of view) that is almost unchanged. Looking at >> the code again and again I can't see any problem. >> >> Could you please try to find the values of T1 at the end of >> helper_ld_asi (adding a printf or using gdb). That may help us to >> understand what is the problem. > > With: > > printf("helper_ld_asi: T1 = %llx\n", T1); // not sure if that's correct? Yes that is correct. > I get these two: > > helper_ld_asi: T1 = 5171200000 The correct value here is 51. I don't really understand why this value is not a 8-bit one, as the memory access is done through ldub_phys(). Could you please verify that helper_ld_asi() is called with the correct parameters. This should be 0x20 0x1 0x0. PS: I don't know if I will be able to get internet access in the next 4 days. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 23:11 ` Aurelien Jarno @ 2007-09-23 8:44 ` Andreas Färber 2007-09-25 17:45 ` Andreas Färber 1 sibling, 0 replies; 24+ messages in thread From: Andreas Färber @ 2007-09-23 8:44 UTC (permalink / raw) To: qemu-devel Am 23.09.2007 um 01:11 schrieb Aurelien Jarno: > Andreas Färber a écrit : >> Am 22.09.2007 um 23:41 schrieb Aurelien Jarno: >> >>> Aurelien Jarno a écrit : >>>> Thanks, that's helpful, it looks like the "lduba" instructions >>>> is not >>>> working correctly in your case. Now I have to find why. >>> I don't really understand, because that is the part of the code (at >>> least from the op point of view) that is almost unchanged. >>> Looking at >>> the code again and again I can't see any problem. >>> >>> Could you please try to find the values of T1 at the end of >>> helper_ld_asi (adding a printf or using gdb). That may help us to >>> understand what is the problem. >> >> With: >> >> printf("helper_ld_asi: T1 = %llx\n", T1); // not sure if that's >> correct? > > Yes that is correct. > >> I get these two: >> >> helper_ld_asi: T1 = 5171200000 > > The correct value here is 51. I don't really understand why this value > is not a 8-bit one, as the memory access is done through ldub_phys(). > Could you please verify that helper_ld_asi() is called with the > correct > parameters. This should be 0x20 0x1 0x0. > > PS: I don't know if I will be able to get internet access in the > next 4 > days. Take your time, I've already reverted my Q back to the last working state now that I've figured out that cool -D option. Actually my printf wasn't correct: For sparc32 T1 is a uint32_t, with %llx raising a warning I didn't notice before; with %x it does show the correct value of 51. printf("helper_ld_asi(%d, %d, %d)\n", asi, size, sign); ... printf("helper_ld_asi: T1 = %x\n", T1); starting qemu... helper_ld_asi(32, 1, 0) helper_ld_asi: T1 = 51 helper_ld_asi(47, 1, 0) helper_ld_asi: T1 = 0 So with 0x20==32 that part looks correct. Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-22 23:11 ` Aurelien Jarno 2007-09-23 8:44 ` Andreas Färber @ 2007-09-25 17:45 ` Andreas Färber 2007-09-26 11:05 ` Aurelien Jarno 1 sibling, 1 reply; 24+ messages in thread From: Andreas Färber @ 2007-09-25 17:45 UTC (permalink / raw) To: qemu-devel Am 23.09.2007 um 01:11 schrieb Aurelien Jarno: >>> Aurelien Jarno a écrit : >>>> Thanks, that's helpful, it looks like the "lduba" instructions >>>> is not >>>> working correctly in your case. Now I have to find why. >>> I don't really understand, because that is the part of the code (at >>> least from the op point of view) that is almost unchanged. >>> Looking at >>> the code again and again I can't see any problem. >> > PS: I don't know if I will be able to get internet access in the > next 4 > days. Just a short note that Blue Swirl's added break statements did not change the results previously posted. ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-25 17:45 ` Andreas Färber @ 2007-09-26 11:05 ` Aurelien Jarno 2007-09-28 14:37 ` Andreas Färber 0 siblings, 1 reply; 24+ messages in thread From: Aurelien Jarno @ 2007-09-26 11:05 UTC (permalink / raw) To: qemu-devel Andreas Färber a écrit : > Am 23.09.2007 um 01:11 schrieb Aurelien Jarno: > >>>> Aurelien Jarno a écrit : >>>>> Thanks, that's helpful, it looks like the "lduba" instructions >>>>> is not >>>>> working correctly in your case. Now I have to find why. >>>> I don't really understand, because that is the part of the code (at >>>> least from the op point of view) that is almost unchanged. >>>> Looking at >>>> the code again and again I can't see any problem. >> PS: I don't know if I will be able to get internet access in the >> next 4 >> days. > > Just a short note that Blue Swirl's added break statements did not > change the results previously posted. Oh, I thought it was fixed by this commited. Looking at the data you sent in your last mail, it looks like the lduba instruction is actually working correctly, given the first returned value is correct. But then it looks like the value is not correct in the cmp instruction as the wrong branch is taken. I have currently no idea why. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net ^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me... 2007-09-26 11:05 ` Aurelien Jarno @ 2007-09-28 14:37 ` Andreas Färber 0 siblings, 0 replies; 24+ messages in thread From: Andreas Färber @ 2007-09-28 14:37 UTC (permalink / raw) To: qemu-devel Am 26.09.2007 um 13:05 schrieb Aurelien Jarno: > Andreas Färber a écrit : >> Am 23.09.2007 um 01:11 schrieb Aurelien Jarno: >> >>>>> Aurelien Jarno a écrit : >>>>>> Thanks, that's helpful, it looks like the "lduba" instructions >>>>>> is not >>>>>> working correctly in your case. Now I have to find why. >>>>> I don't really understand, because that is the part of the code >>>>> (at >>>>> least from the op point of view) that is almost unchanged. >>>>> Looking at >>>>> the code again and again I can't see any problem. >>> PS: I don't know if I will be able to get internet access in the >>> next 4 >>> days. >> >> Just a short note that Blue Swirl's added break statements did not >> change the results previously posted. > > Oh, I thought it was fixed by this commited. > > Looking at the data you sent in your last mail, it looks like the > lduba > instruction is actually working correctly, given the first returned > value is correct. But then it looks like the value is not correct > in the > cmp instruction as the wrong branch is taken. > > I have currently no idea why. Okay, so this is the list of compiler warnings, configured with -- prefix=... --target-list=sparc-softmmu --enable-cocoa: $ make >/dev/null dyngen.c: In function 'get_reloc_name': dyngen.c:1028: warning: pointer targets in passing argument 2 of 'fetch_next_pair_value' differ in signedness dyngen.c:1030: warning: pointer targets in passing argument 2 of 'fetch_next_pair_value' differ in signedness dyngen.c:1032: warning: pointer targets in passing argument 2 of 'fetch_next_pair_value' differ in signedness /Users/andreas/Q/myqemu/vl.c: In function `init_timer_alarm': /Users/andreas/Q/myqemu/vl.c:1516: warning: `t' might be used uninitialized in this function /Users/andreas/Q/myqemu/vl.c: At top level: /Users/andreas/Q/myqemu/vl.c:1183: warning: `qemu_next_deadline' defined but not used /Users/andreas/Q/myqemu/hw/eepro100.c:269: warning: `eepro100_mdi_mask' defined but not used /Users/andreas/Q/myqemu/hw/pcnet.c:585: warning: `crctab' defined but not used /Users/andreas/Q/myqemu/cocoa.m: In function `setApplicationMenu': /Users/andreas/Q/myqemu/cocoa.m:860: warning: cannot find method `- setAppleMenu:'; return type `id' assumed ../dyngen-exec.h:229: warning: `__op_param1' defined but not used ../dyngen-exec.h:229: warning: `__op_param2' defined but not used ../dyngen-exec.h:229: warning: `__op_param3' defined but not used ../dyngen-exec.h:229: warning: `__op_param1' defined but not used ../dyngen-exec.h:229: warning: `__op_param2' defined but not used ../dyngen-exec.h:229: warning: `__op_param3' defined but not used Signedness warnings appear to be quite common for cross-platform software on OS X and usually do not matter, the rest looks okay to me. Just tell me if any additional information or debug output can help give you any idea. Andreas ^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2008-02-24 14:10 UTC | newest] Thread overview: 24+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-02-24 14:10 [Qemu-devel] qemu/target-sparc exec.h op.c op_helper.c op_me Blue Swirl -- strict thread matches above, loose matches on Subject: below -- 2007-09-21 19:10 Blue Swirl 2007-09-21 19:32 ` Andreas Färber 2007-09-21 20:25 ` Blue Swirl 2007-09-21 20:41 ` Andreas Färber 2007-09-21 20:26 ` Aurelien Jarno 2007-09-21 21:07 ` Aurelien Jarno 2007-09-21 21:20 ` Andreas Färber 2007-09-22 11:49 ` Aurelien Jarno 2007-09-22 12:07 ` Blue Swirl 2007-09-22 13:11 ` Andreas Färber 2007-09-22 17:50 ` Aurelien Jarno 2007-09-22 19:27 ` Andreas Färber 2007-09-22 20:06 ` Aurelien Jarno 2007-09-22 20:23 ` Andreas Färber 2007-09-22 20:34 ` Aurelien Jarno 2007-09-22 21:21 ` Andreas Färber 2007-09-22 21:41 ` Aurelien Jarno 2007-09-22 21:58 ` Andreas Färber 2007-09-22 23:11 ` Aurelien Jarno 2007-09-23 8:44 ` Andreas Färber 2007-09-25 17:45 ` Andreas Färber 2007-09-26 11:05 ` Aurelien Jarno 2007-09-28 14:37 ` Andreas Färber
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).