tlbi va, vaa vs. val, vaal

Mario Smarduch m.smarduch at samsung.com
Thu Feb 26 16:12:32 PST 2015


I noticed kernel tlbflush.h use tlbi va*, vaa* variants instead of
val, vaal ones. Reading the manual D.5.7.2 it appears that
va*, vaa* versions invalidate intermediate caching of
translation structures.

With stage2 enabled that may result in 20+ memory lookups
for a 4 level page table walk. That's assuming that intermediate
caching structures cache mappings from stage1 table entry to
host page.

- Mario



More information about the linux-arm-kernel mailing list