>>> On 12.09.17 at 15:53, <aisa...@bitdefender.com> wrote:
> --- a/xen/arch/x86/domctl.c
> +++ b/xen/arch/x86/domctl.c
> @@ -625,6 +625,26 @@ long arch_do_domctl(
>               !is_hvm_domain(d) )
>              break;
>  
> +        if ( domctl->u.hvmcontext_partial.type == HVM_SAVE_CODE(CPU) &&
> +             domctl->u.hvmcontext_partial.instance < d->max_vcpus )

I have to admit that I'm not in favor of such special casing, even
less so without any code comment saying why this is so special.
What if someone else wanted some other piece of vCPU state
without pausing the entire domain? Wouldn't it be possible to
generalize this to cover all such state elements?

> +        {
> +             struct vcpu *v = d->vcpu[domctl->u.hvmcontext_partial.instance];
> +             struct hvm_hw_cpu ctx;
> +
> +             vcpu_pause(v);
> +
> +             hvm_save_one_cpu_ctxt(v, &ctx);
> +
> +             vcpu_unpause(v);
> +
> +             if ( copy_to_guest(domctl->u.hvmcontext_partial.buffer,
> +                (void *)&ctx, sizeof(ctx)) )

Indentation.

Jan


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

Reply via email to