|
From: | Alan Pevec |
Subject: | Re: Re: [Qemu-devel] Bug with TARGET_PHYS_ADDR_SPACE_BITS |
Date: | Wed, 20 Aug 2008 11:10:40 +0200 |
User-agent: | Thunderbird 2.0.0.16 (X11/20080723) |
Anthony Liguori wrote:
Chris Lalancette wrote:Hello,oVirt is currently using straight x86_64 qemu emulation for certain parts of the architecture (we mostly use KVM, but need to use full emulation for a couple of parts). We recently upgraded our userspace package to kvm-72, but found that we could not PXE boot guests when we were doing full emulation (under kvm, we could PXE boot just fine). We also tried using qemu SVN tip, with similar results. We ended up doing a bisect, and tracked down the problem tothis commit (from the kvm repo, but pulled from qemu):http://git.kernel.org/?p=linux/kernel/git/amit/kvm-userspace.git;a=commit;h=468f7507339a5236bff8ab339eb0c1b019a95fdaThe important changes in there in terms of this bug revolves aroundTARGET_PHYS_ADDR_SPACE_BITS in exec.c. If I change that back to 32 (what it wasbefore this patch for x86_64), the PXE boot succeeds. Also, if I removeTARGET_PHYS_ADDR_SPACE_BITS > 32 conditional code in phys_page_find_alloc(), but leave TARGET_PHYS_ADDR_SPACE_BITS as 42, the PXE boot also works. I can't claim to understand the conditional code I've compiled out, so I'm not sure where thebug would be. Does anyone have an idea what the problem might be?Right now, the code just can't handle TARGET_PHYS_ADDR_SPACES_BITS > 32. This may help you:
I applied that to qemu svn trunk but still get the same tripple fault w/ pxelinux (syslinux-3.61-2.fc9) qemu: fatal: triple fault EAX=0f8ef0a8 EBX=f0711ae0 ECX=f07b0244 EDX=f07b026e ESI=f0711adc EDI=00000001 EBP=0f8ee990 ESP=f07b0016 EIP=00000717 EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0 ES =0010 0f8ee990 ffffffff 0fcf938e CS =0008 0f8ee990 ffffffff 0fcf9f8e SS =0010 0f8ee990 ffffffff 0fcf938e DS =0010 0f8ee990 ffffffff 0fcf938e FS =0010 0f8ee990 ffffffff 0fcf938e GS =0010 0f8ee990 ffffffff 0fcf938e LDT=0000 00000000 0000ffff 00008200 TR =0000 00000000 0000ffff 00008b00 GDT= 0f8f6ed0 00000037 IDT= 00000000 000003ff CR0=00000011 CR2=00000000 CR3=00000000 CR4=00000000CCS=0f8ee990 CCD=0f8efa5c CCO=ADDL FCW=037f FSW=0000 [ST=0] FTW=00 MXCSR=00001f80
FPR0=0000000000000000 0000 FPR1=0000000000000000 0000 FPR2=0000000000000000 0000 FPR3=0000000000000000 0000 FPR4=0000000000000000 0000 FPR5=0000000000000000 0000 FPR6=0000000000000000 0000 FPR7=0000000000000000 0000 XMM00=00000000000000000000000000000000 XMM01=00000000000000000000000000000000 XMM02=00000000000000000000000000000000 XMM03=00000000000000000000000000000000 XMM04=00000000000000000000000000000000 XMM05=00000000000000000000000000000000 XMM06=00000000000000000000000000000000 XMM07=00000000000000000000000000000000
[Prev in Thread] | Current Thread | [Next in Thread] |