From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1Cluza-0008FH-1X for qemu-devel@nongnu.org; Tue, 04 Jan 2005 15:09:22 -0500 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1CluzY-0008Ea-Aj for qemu-devel@nongnu.org; Tue, 04 Jan 2005 15:09:20 -0500 Received: from [129.104.30.34] (helo=mx1.polytechnique.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1Clumq-0004Vd-EZ for qemu-devel@nongnu.org; Tue, 04 Jan 2005 14:56:12 -0500 Received: from localhost (localhost [127.0.0.1]) by djali.polytechnique.org (Postfix) with ESMTP id A8F2F331BA for ; Tue, 4 Jan 2005 20:56:09 +0100 (CET) Received: from djali.polytechnique.org ([127.0.0.1]) by localhost (localhost [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 18880-02 for ; Tue, 4 Jan 2005 20:56:09 +0100 (CET) Received: from [84.99.204.173] (unknown [84.99.204.173]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ssl.polytechnique.org (Postfix) with ESMTP id 4E074331B7 for ; Tue, 4 Jan 2005 20:56:09 +0100 (CET) Message-ID: <41DAF4FE.8020606@bellard.org> Date: Tue, 04 Jan 2005 20:56:46 +0100 From: Fabrice Bellard MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: x86_64 target References: <41D9E0BB.1070202@bellard.org> In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Hi, I noticed the problem too, but hopefully it is not a regression: for x86_64, I added more features in the CPUID so that Linux accepts to switch to 64 bit, but I did not implement or test them all (SSE, MMX, APIC and PAE). So if you want to make regression tests, the easiest is to diable that in target-i386/helper2.c:109: -- env->cpuid_version = (family << 8) | (model << 4) | stepping; env->cpuid_features = (CPUID_FP87 | CPUID_DE | CPUID_PSE | CPUID_TSC | CPUID_MSR | CPUID_MCE | CPUID_CX8 | CPUID_PGE | CPUID_CMOV); #if defined(TARGET_X86_64) && 0 /* currently not enabled for std i386 because not fully tested */ env->cpuid_features |= CPUID_APIC | CPUID_FXSR | CPUID_PAE | CPUID_SSE | CPUID_SSE2; #endif } -- I was able to boot win2k succefully with the x86_64 target. The most likely regressions (I am sure there are still some) must be caused by the fact that some values are not properly extended from 32 bits to 64 bits with zeros. Fabrice. Alexander E. Patrakov wrote: > Fabrice Bellard wrote: > > >>Hi, >> >>As a small gift for this new year, here is an initial implementation of >>the x86_64 target in QEMU. It is a "work in progress" as usual, but it >>works enough to boot an x86_64 Linux kernel (I used the one available at >>http://bochs.sourceforge.net/guestos/linux.x86-64.bzImage). >> >>Although the x86_64 target works correctly on 32 bit hosts, it is >>designed to have the best performances on 64 bit hosts, such as x86_64 >>or ppc64. The current speed is poor relatively to the i386 emulation >>because I did not enable register usage on 64 bit hosts (no time to test >>it yet). >> >>The biggest missing part is a full implementation of SSE - I only added >>the minimal subset for the Linux kernel. I won't work again on the >>x86_64 target in the near future (as I said earlier most of my time is >>dedicated on improving the x86 on x86 speed), but anyone is free to >>submit patches. > > > I booted an existing win2k image with the new qemu-system-x86_64 emulator > (just to check that there are no i386 regressions) and the result is a > bluescreen (GOCR'ed and attached). > > > > ------------------------------------------------------------------------ > > *** STOP: 0x0000001E (0xC000001D,0x80432AC9,0xE1008A98,0xF74lB99C) > KMODE_EXCEPTION_NOT_HANDLED > > *** Address 80432AC9 base at 80400000, DateStamp 384d9bl7 - ntoskrnl.exe > > If this is the first time gou've seen this Stop error screen, > restart gour computer. If this screen appears again, follow > these steps: > > Check to be sure gou have adequate disk space. If a driver is > identified in the Stop Message, disable the driver or check > with the manufacturer for driver updates. Try changing video > adapters. > > Check with gour hardware vendor for ang BIOS updates. Disable > BIOS memorg options such as caching or shadowing. If gou need > to use Safe Mode to reMove or disable components, restart gour > computer, press F8 to select Advanced Startup Options, and then > select Safe Mode. > > Refer to gour Getting Started manual for more information on > troubleshooting Stop errors. > > > ------------------------------------------------------------------------ > > _______________________________________________ > Qemu-devel mailing list > Qemu-devel@nongnu.org > http://lists.nongnu.org/mailman/listinfo/qemu-devel