lkml.org 
[lkml]   [2006]   [Aug]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/4] x86 paravirt_ops: create no_paravirt.h for native ops
Andi Kleen wrote:
>> +/* Stop speculative execution */
>> +static inline void sync_core(void)
>> +{
>> + unsigned int eax = 1, ebx, ecx, edx;
>> + __cpuid(&eax, &ebx, &ecx, &edx);
>> +}
>>
>
> Actually I don't think this one should be para virtualized at all.
> I don't see any reason at all why a hypervisor should trap it and it
> is very time critical. I would recommend you move it back into the
> normal files without hooks.
>

When VT/AMDV is enabled, cpuid could cause a vm exit, so it would be
nice to use one of the other serializing instructions in this case. For
the default implementation, it should probably be an explicit
asm("cpuid") to make it clear that we don't want any paravirtualized cpuid.

J

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-08-07 07:47    [W:0.097 / U:0.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site