[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] x86/p2m: fixed p2m_change_type_range() start / end check
p2m_change_type_range() handles end > max_mapped_pfn, but not start > max_mapped_pfn. Check the latter just after grabbing the lock and bail if true. Signed-off-by: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx> Suggested-by: George Dunlap <george.dunlap@xxxxxxxxxx> --- xen/arch/x86/mm/p2m.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c index c53cab4..af46cd9 100644 --- a/xen/arch/x86/mm/p2m.c +++ b/xen/arch/x86/mm/p2m.c @@ -976,6 +976,13 @@ void p2m_change_type_range(struct domain *d, ASSERT(p2m_is_changeable(ot) && p2m_is_changeable(nt)); p2m_lock(p2m); + + if ( start > p2m->max_mapped_pfn ) + { + p2m_unlock(p2m); + return; + } + p2m->defer_nested_flush = 1; if ( unlikely(end > p2m->max_mapped_pfn) ) -- 2.7.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |