[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [For Xen-4.10 PATCH v2 0/3] Reduce unnecessary icache maintenance operations
Hi, This series improves the number of icache flushes performed when allocating memory to a domain. This series was previously posted at [0] and [1]. Changes v1 -> v2: * Updated tags * Added a comment for icache_invalidate() definition for x86 to explain why it is empty. RFC -> v1: * Fixed coding style issue in Patch 1 * Added reviewed-by tags * Re-worked Patch 3 to defer icache optimisation only during domain creation Patch 1 adds a parameter to flush_page_to_ram() to prevent performing icache maintenance per page. Current calls to flush_page_to_ram() loop over pages and performing a full icache flush for each page is excessive. Patch 2 hoists icache maintenance from flush_page_to_ram() to p2m_cache_flush(). Patch 3 introduces a new MEMF_ flag to indicate to alloc_heap_pages() that icache maintenance will be performed by the caller. The icache maintenance operations are performed in populate_physmap() during domain creation. As I couldn't find icache maintenance operations for x86, an empty helper is introduced. If there are no further comments, please consider for inclusion. Thanks, Punit [0] https://www.mail-archive.com/xen-devel@xxxxxxxxxxxxx/msg108002.html [1] https://www.mail-archive.com/xen-devel@xxxxxxxxxxxxx/msg102934.html Punit Agrawal (3): Allow control of icache invalidations when calling flush_page_to_ram() arm: p2m: Prevent redundant icache flushes Avoid excess icache flushes in populate_physmap() before domain has been created xen/arch/arm/mm.c | 5 +++-- xen/arch/arm/p2m.c | 4 +++- xen/common/memory.c | 31 ++++++++++++++++++++++--------- xen/common/page_alloc.c | 2 +- xen/include/asm-arm/page.h | 2 +- xen/include/asm-x86/flushtlb.h | 2 +- xen/include/asm-x86/page.h | 8 ++++++++ xen/include/xen/mm.h | 2 ++ 8 files changed, 41 insertions(+), 15 deletions(-) -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |