diff options
author | Valentine Barshak <vbarshak@mvista.com> | 2010-12-14 00:03:16 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-12-14 22:23:34 +0000 |
commit | 85b093bcc5322baa811a03ec73de0909c157f181 (patch) | |
tree | a403ad0cfc2c8d6dbeebc85d5332922410d2347c /fs/internal.h | |
parent | 593c252a731389ffdd00d4cb2d20192c47aa18c1 (diff) |
ARM: 6535/1: V6 MPCore v6_dma_inv_range and v6_dma_flush_range RWFO fix
Cache ownership must be acquired by reading/writing data from the
cache line to make cache operation have the desired effect on the
SMP MPCore CPU. However, the ownership is never acquired in the
v6_dma_inv_range function when cleaning the first line and
flushing the last one, in case the address is not aligned
to D_CACHE_LINE_SIZE boundary.
Fix this by reading/writing data if needed, before performing
cache operations.
While at it, fix v6_dma_flush_range to prevent RWFO outside
the buffer.
Cc: stable@kernel.org
Signed-off-by: Valentine Barshak <vbarshak@mvista.com>
Signed-off-by: George G. Davis <gdavis@mvista.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'fs/internal.h')
0 files changed, 0 insertions, 0 deletions