On 11/1/18 2:45 PM, Razvan Cojocaru wrote:
> This patch is a pre-requisite for the one fixing VGA logdirty
> freezes when using altp2m. It only concerns itself with the
> ranges allocation / deallocation / initialization part. While
> touching the code, I've switched global_logdirty from bool_t
> to bool.
> 
> Signed-off-by: Razvan Cojocaru <rcojoc...@bitdefender.com>

Algorithm looks good; one issue:

>  /* Init the datastructures for later use by the p2m code */
>  static int p2m_initialise(struct domain *d, struct p2m_domain *p2m)
>  {
> @@ -108,7 +130,10 @@ free_p2m:
>  static void p2m_free_one(struct p2m_domain *p2m)
>  {
>      if ( hap_enabled(p2m->domain) && cpu_has_vmx )
> +    {
> +        p2m_free_logdirty(p2m);
>          ept_p2m_uninit(p2m);
> +    }

This is wrong -- the rangeset is created even if !hap_enabled() or
!cpu_has_vmx, but only destroyed here if both.

Everything else looks OK.

 -George

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

Reply via email to