Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-05-12 Thread Punit Agrawal
Hi Julien, Julien Grall writes: > Hi Punit, > > Sorry for the late answer. > > On 31/03/17 11:24, Punit Agrawal wrote: >> populate_physmap() calls alloc_heap_pages() per requested extent. As >> alloc_heap_pages() performs icache maintenance operations affecting the >>

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-05-09 Thread Julien Grall
Hi Punit, Sorry for the late answer. On 31/03/17 11:24, Punit Agrawal wrote: populate_physmap() calls alloc_heap_pages() per requested extent. As alloc_heap_pages() performs icache maintenance operations affecting the entire instruction cache, this leads to redundant cache flushes when

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Stefano Stabellini
On Fri, 31 Mar 2017, Wei Liu wrote: > On Fri, Mar 31, 2017 at 02:53:55PM +0100, Punit Agrawal wrote: > [...] > > > > Correct! > > > > invalidate_icache() flushes the entire instruction cache which ends up > > being called each time flush_page_to_ram() is invoked from > > alloc_heap_pages(). The

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Punit Agrawal
Wei Liu writes: > On Fri, Mar 31, 2017 at 02:53:55PM +0100, Punit Agrawal wrote: > [...] >> >> Correct! >> >> invalidate_icache() flushes the entire instruction cache which ends up >> being called each time flush_page_to_ram() is invoked from >> alloc_heap_pages(). The

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Wei Liu
On Fri, Mar 31, 2017 at 02:53:55PM +0100, Punit Agrawal wrote: [...] > > Correct! > > invalidate_icache() flushes the entire instruction cache which ends up > being called each time flush_page_to_ram() is invoked from > alloc_heap_pages(). The patch prevents repeated calls to >

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Punit Agrawal
Hi Wei, Thanks for taking a look at this RFC. Responses/questions below... Wei Liu writes: > On Fri, Mar 31, 2017 at 11:24:24AM +0100, Punit Agrawal wrote: >> populate_physmap() calls alloc_heap_pages() per requested extent. As >> alloc_heap_pages() performs icache

Re: [Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Wei Liu
On Fri, Mar 31, 2017 at 11:24:24AM +0100, Punit Agrawal wrote: > populate_physmap() calls alloc_heap_pages() per requested extent. As > alloc_heap_pages() performs icache maintenance operations affecting the > entire instruction cache, this leads to redundant cache flushes when > allocating

[Xen-devel] [For Xen-4.10 RFC PATCH 3/3] Prevent redundant icache flushes in populate_physmap()

2017-03-31 Thread Punit Agrawal
populate_physmap() calls alloc_heap_pages() per requested extent. As alloc_heap_pages() performs icache maintenance operations affecting the entire instruction cache, this leads to redundant cache flushes when allocating multiple extents in populate_physmap(). To alleviate this problem, introduce