[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 1/5] x86/PoD: Simplify handling of the quick check
There is no need to duplicate the contents of the skip block. While cleaning up this function, change 4 ints to be unsigned. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> CC: Wei Liu <wei.liu2@xxxxxxxxxx> CC: George Dunlap <george.dunlap@xxxxxxxxxxxxx> --- xen/arch/x86/mm/p2m-pod.c | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/xen/arch/x86/mm/p2m-pod.c b/xen/arch/x86/mm/p2m-pod.c index ba37344..f1b221f 100644 --- a/xen/arch/x86/mm/p2m-pod.c +++ b/xen/arch/x86/mm/p2m-pod.c @@ -863,15 +863,14 @@ p2m_pod_zero_check_superpage(struct p2m_domain *p2m, gfn_t gfn) } static void -p2m_pod_zero_check(struct p2m_domain *p2m, const gfn_t *gfns, int count) +p2m_pod_zero_check(struct p2m_domain *p2m, const gfn_t *gfns, unsigned int count) { mfn_t mfns[count]; p2m_type_t types[count]; unsigned long *map[count]; struct domain *d = p2m->domain; + unsigned int i, j, max_ref = 1; - int i, j; - int max_ref = 1; /* Allow an extra refcount for one shadow pt mapping in shadowed domains */ if ( paging_mode_shadow(d) ) @@ -911,14 +910,7 @@ p2m_pod_zero_check(struct p2m_domain *p2m, const gfn_t *gfns, int count) /* Quick zero-check */ for ( j = 0; j < 16; j++ ) if ( *(map[i] + j) != 0 ) - break; - - if ( j < 16 ) - { - unmap_domain_page(map[i]); - map[i] = NULL; - continue; - } + goto skip; /* Try to remove the page, restoring old mapping if it fails. */ if ( p2m_set_entry(p2m, gfns[i], INVALID_MFN, PAGE_ORDER_4K, -- 2.1.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 |