On 2018-04-11 15:16, f...@ozog.com wrote:
> inmates cannot use X86_FEATURE_VMX from regular cpuid
> as vcpu maks the bit explicitely on non-root cells.
> 
> use cpuid leaf 0 to detect AuthenticAMD and change to VMMCALL
> 
> Signed-off-by: Francois-Frederic Ozog <f...@ozog.com>
> ---
>  inmates/lib/x86/hypercall.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/inmates/lib/x86/hypercall.c b/inmates/lib/x86/hypercall.c
> index ac99f0c3..2d7a96e1 100644
> --- a/inmates/lib/x86/hypercall.c
> +++ b/inmates/lib/x86/hypercall.c
> @@ -40,19 +40,19 @@
> 
>  #define X86_FEATURE_VMX        (1 << 5)
> 
> -bool jailhouse_use_vmcall;
> +bool jailhouse_use_vmcall = true;
> 
>  void hypercall_init(void)
>  {
> -       u32 eax = 1, ecx = 0;
> +       u32 eax = 0, ebx = 0, ecx = 0, edx = 0;
> 
>         asm volatile(
>                 "cpuid"
>                 : "=c" (ecx)
> -               : "a" (eax), "c" (ecx)
> -               : "rbx", "rdx", "memory"
> +               : "a" (eax), "b" (ebx), "c" (ecx), "d" (edx)
> +               : "memory"
>         );
> 
> -       if (ecx & X86_FEATURE_VMX)
> -               jailhouse_use_vmcall = true;
> +       if (ebx == 0x68747541 && ecx == 0x444d4163 && edx == 0x69746E65)
> +               jailhouse_use_vmcall = false;
>  }
> -- 
> 2.11.0
> 

This patch looks functionally fine now, but your mailer replaces tabs
with spaces. Please fix and resend.

Jan

-- 
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to