[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH V3 3/3] xen/vm_event: Deny register writes if refused by vm_event reply



>>> On 06.07.15 at 17:51, <rcojocaru@xxxxxxxxxxxxxxx> wrote:
> @@ -443,6 +444,8 @@ void hvm_do_resume(struct vcpu *v)
>      struct domain *d = v->domain;
>      struct hvm_ioreq_server *s;
>  
> +    ASSERT(v == current);

This seems rather pointless in this function - nothing would work if that
wasn't the case.

With that removed,
Acked-by: Jan Beulich <jbeulich@xxxxxxxx>

Also ...

> @@ -468,6 +471,35 @@ void hvm_do_resume(struct vcpu *v)
>          }
>      }
>  
> +    if ( unlikely(d->arch.event_write_data) )
> +    {
> +        struct monitor_write_data *w = &d->arch.event_write_data[v->vcpu_id];
> +
> +        if ( w->do_write.msr )
> +        {
> +            hvm_msr_write_intercept(w->msr, w->value, 0);
> +            w->do_write.msr = 0;
> +        }
> +
> +        if ( w->do_write.cr0 )
> +        {
> +            hvm_set_cr0(w->cr0, 0);
> +            w->do_write.cr0 = 0;
> +        }
> +
> +        if ( w->do_write.cr4 )
> +        {
> +            hvm_set_cr4(w->cr4, 0);
> +            w->do_write.cr4 = 0;
> +        }
> +
> +        if ( w->do_write.cr3 )
> +        {
> +            hvm_set_cr3(w->cr3, 0);
> +            w->do_write.cr3 = 0;
> +        }
> +    }

... despite the CR ordering now being better, I continue to not be
convinced of this model when it comes to multiple updates happening
together. Yet that's not meant as a reason for the patch not to go
in; it's just a (maybe only) theoretical issue I see, and that I would
think _you_ want addressed.

Jan


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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.