[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] xen: don't flush the TLB on grant unmap for auto-translated guests
For auto-translated guests the p2m code will do the necessary TLB flushes, so there's no need to perform any TLB flushes in generic grant table code. Signed-off-by: Roger Pau Monnà <roger.pau@xxxxxxxxxx> Cc: Jan Beulich <jbeulich@xxxxxxxx> Cc: Tim Deegan <tim@xxxxxxx> Cc: Ian Campbell <ian.campbell@xxxxxxxxxx> --- xen/common/grant_table.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c index 107b000..a2a857f 100644 --- a/xen/common/grant_table.c +++ b/xen/common/grant_table.c @@ -1099,7 +1099,8 @@ gnttab_unmap_grant_ref( guest_handle_add_offset(uop, 1); } - flush_tlb_mask(current->domain->domain_dirty_cpumask); + if ( !paging_mode_external(current->domain) ) + flush_tlb_mask(current->domain->domain_dirty_cpumask); for ( i = 0; i < partial_done; i++ ) __gnttab_unmap_common_complete(&(common[i])); @@ -1114,7 +1115,8 @@ gnttab_unmap_grant_ref( return 0; fault: - flush_tlb_mask(current->domain->domain_dirty_cpumask); + if ( !paging_mode_external(current->domain) ) + flush_tlb_mask(current->domain->domain_dirty_cpumask); for ( i = 0; i < partial_done; i++ ) __gnttab_unmap_common_complete(&(common[i])); @@ -1162,7 +1164,8 @@ gnttab_unmap_and_replace( guest_handle_add_offset(uop, 1); } - flush_tlb_mask(current->domain->domain_dirty_cpumask); + if ( !paging_mode_external(current->domain) ) + flush_tlb_mask(current->domain->domain_dirty_cpumask); for ( i = 0; i < partial_done; i++ ) __gnttab_unmap_common_complete(&(common[i])); @@ -1177,7 +1180,8 @@ gnttab_unmap_and_replace( return 0; fault: - flush_tlb_mask(current->domain->domain_dirty_cpumask); + if ( !paging_mode_external(current->domain) ) + flush_tlb_mask(current->domain->domain_dirty_cpumask); for ( i = 0; i < partial_done; i++ ) __gnttab_unmap_common_complete(&(common[i])); -- 1.7.7.5 (Apple Git-26) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |