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

Re: [Xen-devel] [PATCH] xen/ept: Correct double unmap_domain_page() on error path



>>> On 16.04.14 at 13:37, <andrew.cooper3@xxxxxxxxxx> wrote:
> c/s 3d90d6e6 "x86/EPT: split super pages upon mismatching memory types"
> accidentally introduced an error path where the epte domain page would be
> unmapped twice if splitting the superpage failed.
> 
> Only unmap the page if the loop is to be continued.  When breaking from the
> loop, the page will be unmapped by the subsequent code.
> 
> Coverity-ID: 1203047
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

> --- a/xen/arch/x86/mm/p2m-ept.c
> +++ b/xen/arch/x86/mm/p2m-ept.c
> @@ -350,9 +350,9 @@ bool_t ept_handle_misconfig(uint64_t gpa)
>                                               e.sa_p2mt == p2m_mmio_direct);
>                  if ( unlikely(emt < 0) )
>                  {
> -                    unmap_domain_page(epte);
>                      if ( ept_split_super_page(p2m, &e, level, level - 1) )
>                      {
> +                        unmap_domain_page(epte);
>                          mfn = e.mfn;
>                          continue;
>                      }



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