ARM: cacheflush: don't round address range up to nearest page
authorWill Deacon <will.deacon@arm.com>
Tue, 21 Aug 2012 14:33:19 +0000 (15:33 +0100)
committerGrazvydas Ignotas <notasas@gmail.com>
Sun, 3 Nov 2013 17:42:03 +0000 (19:42 +0200)
commitb2ee40d32c44cc26bfc6b52126ddc6d43e59e3c1
tree3ddfced81b6e3c03be069725222a9669a03afe99
parentf5522a07aa12c9d4cb9e55c80fac16dd37b04ae7
ARM: cacheflush: don't round address range up to nearest page

The flush_cache_user_range macro takes a pair of addresses describing
the start and end of the virtual address range to flush. Due to an
accidental oversight when flush_cache_range_user was introduced, the
address range was rounded up so that the start and end addresses were
page-aligned.

For historical reference, the interesting commits in history.git are:

10eacf1775e1 ("[ARM] Clean up ARM cache handling interfaces (part 1)")
71432e79b76b ("[ARM] Add flush_cache_user_page() for sys_cacheflush()")

This patch removes the alignment code, reducing the amount of flushing
required for ranges that are not an exact multiple of PAGE_SIZE.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Reported-by: Jonathan Austin <jonathan.austin@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm/include/asm/cacheflush.h