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

Re: [Xen-devel] [PATCH] x86/shadow: shadow_enable() cannot be called on oneself



At 18:55 +0000 on 31 Oct (1414778126), Andrew Cooper wrote:
> domain_pause() ASSERT()s that d != current->domain, making this particular
> sanity check unconditionally false.
> 
> The two callpaths leading here are from hvm_domain_initialise() (which
> absolutely can't be on oneself) and paging_domctl() (which checks and rejects
> domctls one oneself).
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> CC: Keir Fraser <keir@xxxxxxx>
> CC: Jan Beulich <JBeulich@xxxxxxxx>
> CC: Tim Deegan <tim@xxxxxxx>

Nak.  This check is partly documentation and entirely harmless; I'd
like to keep it.

Tim.

> ---
>  xen/arch/x86/mm/shadow/common.c |    3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/xen/arch/x86/mm/shadow/common.c b/xen/arch/x86/mm/shadow/common.c
> index a5eed28..57a1500 100644
> --- a/xen/arch/x86/mm/shadow/common.c
> +++ b/xen/arch/x86/mm/shadow/common.c
> @@ -2929,8 +2929,7 @@ int shadow_enable(struct domain *d, u32 mode)
>      domain_pause(d);
>  
>      /* Sanity check the arguments */
> -    if ( (d == current->domain) ||
> -         shadow_mode_enabled(d) ||
> +    if ( shadow_mode_enabled(d) ||
>           ((mode & PG_translate) && !(mode & PG_refcounts)) ||
>           ((mode & PG_external) && !(mode & PG_translate)) )
>      {
> -- 
> 1.7.10.4
> 

_______________________________________________
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®.