Hi Julien, > On 20 Feb 2021, at 17:54, Julien Grall <jul...@xen.org> wrote: > > From: Julien Grall <jgr...@amazon.com> > > At the moment, flush_page_to_ram() is both cleaning and invalidate to > PoC the page. However, the cache line can be speculated and pull in the > cache right after as it is part of the direct map.
If we go further through this logic maybe all calls to clean_and_invalidate_dcache_va_range could be transformed in a clean_dcache_va_range. > > So it is pointless to try to invalidate the line in the data cache. > But what about processors which would not speculate ? Do you expect any performance optimization here ? If so it might be good to explain it as I am not quite sure I get it. Cheers Bertrand > Signed-off-by: Julien Grall <jgr...@amazon.com> > --- > xen/arch/arm/mm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c > index 59f8a3f15fd1..2f11d214e184 100644 > --- a/xen/arch/arm/mm.c > +++ b/xen/arch/arm/mm.c > @@ -529,7 +529,7 @@ void flush_page_to_ram(unsigned long mfn, bool > sync_icache) > { > void *v = map_domain_page(_mfn(mfn)); > > - clean_and_invalidate_dcache_va_range(v, PAGE_SIZE); > + clean_dcache_va_range(v, PAGE_SIZE); > unmap_domain_page(v); > > /* > -- > 2.17.1 > >