notdirty_write: fix store-related performance problems
Every store would always cause the tb_invalidate_phys_page_fast path to be invoked, amounting to a 40x slowdown of stores compared to loads. Change this code to only worry about TB invalidation for regions marked as executable (i.e. emulated executable). Even without uc_set_native_thunks, this change fixes most of the performance issues seen with thunking to native calls. Signed-off-by: Andrei Warkentin <andrei.warkentin@intel.com>
This commit is contained in:
@@ -787,6 +787,7 @@
|
||||
#define tlb_protect_code tlb_protect_code_sparc
|
||||
#define tlb_unprotect_code tlb_unprotect_code_sparc
|
||||
#define tlb_reset_dirty tlb_reset_dirty_sparc
|
||||
#define tlb_reset_dirty_by_vaddr tlb_reset_dirty_by_vaddr_sparc
|
||||
#define tlb_set_dirty tlb_set_dirty_sparc
|
||||
#define tlb_set_page_with_attrs tlb_set_page_with_attrs_sparc
|
||||
#define tlb_set_page tlb_set_page_sparc
|
||||
|
||||
Reference in New Issue
Block a user