On 07/12/15 16:48, Roger Pau Monne wrote:
> Loosen up the condition so we make sure that the current vcpu belongs to the
> same domain.
>
> Signed-off-by: Roger Pau Monné <roger....@citrix.com>
> Cc: Jan Beulich <jbeul...@suse.com>
> Cc: Andrew Cooper <andrew.coop...@citrix.com>

The "v == current" is a genuine restriction on hvm_cpuid(), but only
matters for areas not probed by these two uses.

Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com>

Longterm, I will remove the restriction, but there is a substantial
quantity of work before that can happen.

> ---
>  xen/arch/x86/hvm/hvm.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
> index af3d4d7..92d57ff 100644
> --- a/xen/arch/x86/hvm/hvm.c
> +++ b/xen/arch/x86/hvm/hvm.c
> @@ -1842,7 +1842,7 @@ static const char * hvm_efer_valid(const struct vcpu 
> *v, uint64_t value,
>      {
>          unsigned int level;
>  
> -        ASSERT(v == current);
> +        ASSERT(v->domain == current->domain);
>          hvm_cpuid(0x80000000, &level, NULL, NULL, NULL);
>          if ( level >= 0x80000001 )
>          {
> @@ -1912,7 +1912,7 @@ static unsigned long hvm_cr4_guest_reserved_bits(const 
> struct vcpu *v,
>      {
>          unsigned int level;
>  
> -        ASSERT(v == current);
> +        ASSERT(v->domain == current->domain);
>          hvm_cpuid(0, &level, NULL, NULL, NULL);
>          if ( level >= 1 )
>              hvm_cpuid(1, NULL, NULL, &leaf1_ecx, &leaf1_edx);


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to