[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Ping: [PATCH 3/3] x86: tighten MMU_*PT_UPDATE* check and combine error paths
>>> On 12.10.17 at 12:01, wrote: > Don't accept anything other than r/w RAM pages and move the paged-out > check into the (unlikely) error path following that check. > > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Ping? > --- a/xen/arch/x86/mm.c > +++ b/xen/arch/x86/mm.c > @@ -3507,18 +3507,18 @@ long do_mmu_update( > gmfn = req.ptr >> PAGE_SHIFT; > page = get_page_from_gfn(pt_owner, gmfn, &p2mt, P2M_ALLOC); > > - if ( p2m_is_paged(p2mt) ) > + if ( unlikely(!page) || p2mt != p2m_ram_rw ) > { > - ASSERT(!page); > - p2m_mem_paging_populate(pt_owner, gmfn); > - rc = -ENOENT; > - break; > - } > - > - if ( unlikely(!page) ) > - { > - gdprintk(XENLOG_WARNING, > - "Could not get page for normal update\n"); > + if ( page ) > + put_page(page); > + if ( p2m_is_paged(p2mt) ) > + { > + p2m_mem_paging_populate(pt_owner, gmfn); > + rc = -ENOENT; > + } > + else > + gdprintk(XENLOG_WARNING, > + "Could not get page for normal update\n"); > break; > } > > > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |