From: Randy Dunlap <randy.dunlap@oracle.com>
To: Avi Kivity <avi@redhat.com>
Cc: Marcelo Tosatti <mtosatti@redhat.com>, kvm@vger.kernel.org
Subject: Re: [PATCH] KVM: VMX: Correct asm constraint in vmcs_load()
Date: Mon, 20 Dec 2010 11:16:42 -0800 [thread overview]
Message-ID: <4D0FAB9A.7010103@oracle.com> (raw)
In-Reply-To: <4D0F9FD5.800@redhat.com>
On 12/20/10 10:26, Avi Kivity wrote:
> On 12/20/2010 08:22 PM, Randy Dunlap wrote:
>> On 12/20/10 09:58, Avi Kivity wrote:
>> > On 12/20/2010 07:57 PM, Avi Kivity wrote:
>> >> On 12/20/2010 07:53 PM, Randy Dunlap wrote:
>> >>> On 12/20/10 09:47, Avi Kivity wrote:
>> >>> > On 12/20/2010 06:56 PM, Randy Dunlap wrote:
>> >>> >> On 12/20/10 01:06, Avi Kivity wrote:
>> >>> >> > 'error' is byte sized, so use a byte register constraint.
>> >>> >>
>> >>> >> Hm, OK, but I still get the same build error.
>> >>> >
>> >>> > Not okay then. Can you verify that by removing the content
>> of the
>> >>> > function the problem goes away?
>> >>>
>> >>> Nope. I put #if 0 / #endif around the asm() and if (error) lines
>> >>> but I still get the error message:
>> >>>
>> >>> linux-next-20101217/arch/x86/kvm/vmx.c: Assembler messages:
>> >>> linux-next-20101217/arch/x86/kvm/vmx.c:488: Error: bad register name
>> >>> `%sil'
>> >>>
>> >>
>> >> And line 488 was one of those under #if 0?
>> >>
>> >>> which is on the "u8 error;" line below:
>> >>>
>> >>> static void vmcs_load(struct vmcs *vmcs)
>> >>> {
>> >>> u64 phys_addr = __pa(vmcs);
>> >>> u8 error;
>> >>>
>> >
>> > Er, you just answered me. Are you sure gcc saw your update? what
>> > happens if you comment that line as well? assign to 'error' instead?
>>
>> > pwd
>> /lnx/src/NEXT/linux-next-20101217
>>
>> > quilt ser -v
>> = kvm-asm-constraint12.patch
>>
>> > make ARCH=i386 O=X32 all 2>&1 | tee kvm7.out
>> <kconfig messages deleted>
>> Using /lnx/src/NEXT/linux-next-20101217 as source for kernel
>> GEN /lnx/src/NEXT/linux-next-20101217/X32/Makefile
>> CHK include/linux/version.h
>> CHK include/generated/utsrelease.h
>> CALL /lnx/src/NEXT/linux-next-20101217/scripts/checksyscalls.sh
>> CHK include/generated/compile.h
>> CC arch/x86/kvm/vmx.o
>> /lnx/src/NEXT/linux-next-20101217/arch/x86/kvm/vmx.c: Assembler messages:
>> /lnx/src/NEXT/linux-next-20101217/arch/x86/kvm/vmx.c:488: Error: bad
>> register name `%sil'
>> make[3]: *** [arch/x86/kvm/vmx.o] Error 1
>> make[2]: *** [arch/x86/kvm] Error 2
>> make[1]: *** [arch/x86] Error 2
>> make: *** [sub-make] Error 2
>>
>>
>> This is with the entire function being empty (no code, no data).
>>
>> > Wierd.
>>
>> Definitely. I can't explain it.
>>
>
> Maybe it's the vmcs_clear() above. Try the same treatment?
Good call. Changing the =g to =qm there fixes the build problem.
Thanks.
--
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
desserts: http://www.xenotime.net/linux/recipes/
prev parent reply other threads:[~2010-12-20 19:16 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-20 9:06 [PATCH] KVM: VMX: Correct asm constraint in vmcs_load() Avi Kivity
2010-12-20 16:56 ` Randy Dunlap
2010-12-20 17:47 ` Avi Kivity
2010-12-20 17:53 ` Randy Dunlap
2010-12-20 17:57 ` Avi Kivity
2010-12-20 17:58 ` Avi Kivity
2010-12-20 18:22 ` Randy Dunlap
2010-12-20 18:26 ` Avi Kivity
2010-12-20 19:16 ` Randy Dunlap [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D0FAB9A.7010103@oracle.com \
--to=randy.dunlap@oracle.com \
--cc=avi@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=mtosatti@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox