From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Paul Durrant <paul.durrant@citrix.com>, xen-devel@lists.xen.org
Cc: Keir Fraser <keir@xen.org>, Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH] x86/hvm: add store and console event channel params to white-list
Date: Fri, 8 May 2015 15:01:55 +0100 [thread overview]
Message-ID: <554CC1D3.7080302@citrix.com> (raw)
In-Reply-To: <1431093590-5750-1-git-send-email-paul.durrant@citrix.com>
On 08/05/15 14:59, Paul Durrant wrote:
> My recent patch "use white-lists for HVM param guest accessibility checks"
> (commit 30efda12d63ff536102ed8e580b4c09765683b44) introduced a regression
> when saving and restoring Windows guests running Xen Project PV drivers.
>
> The drivers reset the event channel ABI on resume. This has the effect of
> closing the store and console local event channel ports created by the
> toolstack. The drivers do not currently use the console port but they
> do use the store port and thus, prior to reset, they sample the remote
> domain and port and then re-bind the channel - yielding a new and possibly
> different local port - after reset. They then store the new local port
> value in HVM_PARAM_CONSOLE_EVTCHN. That operation now fails and may
> lead to a crash, if using a debug build of the drivers, or a barely
> functional connection to xentored if not.
>
> This patch adds HVM_PARAM_STORE_EVTCHN and HVM_PARAM_CONSOLE_EVTCHN to
> the guest-settable white-list since either of them can be invalidated
> by an event channel ABI reset and thus the guest may indeed need to
> write new values to them to make them valid again.
>
> Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
> Cc: Keir Fraser <keir@xen.org>
> Cc: Jan Beulich <jbeulich@suse.com>
> Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
> ---
> xen/arch/x86/hvm/hvm.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c
> index 371fd33..78b0efb 100644
> --- a/xen/arch/x86/hvm/hvm.c
> +++ b/xen/arch/x86/hvm/hvm.c
> @@ -5632,6 +5632,8 @@ static int hvm_allow_set_param(struct domain *d,
> case HVM_PARAM_VM86_TSS:
> case HVM_PARAM_ACPI_IOPORTS_LOCATION:
> case HVM_PARAM_VM_GENERATION_ID_ADDR:
> + case HVM_PARAM_STORE_EVTCHN:
> + case HVM_PARAM_CONSOLE_EVTCHN:
> break;
> /*
> * The following parameters must not be set by the guest
prev parent reply other threads:[~2015-05-08 14:01 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-08 13:59 [PATCH] x86/hvm: add store and console event channel params to white-list Paul Durrant
2015-05-08 14:01 ` Andrew Cooper [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=554CC1D3.7080302@citrix.com \
--to=andrew.cooper3@citrix.com \
--cc=jbeulich@suse.com \
--cc=keir@xen.org \
--cc=paul.durrant@citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.