]> bbs.cooldavid.org Git - net-next-2.6.git/commit
ARM: 6187/1: The v6_dma_inv_range() function must preserve data on SMP
authorCatalin Marinas <catalin.marinas@arm.com>
Mon, 21 Jun 2010 14:09:36 +0000 (15:09 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 1 Jul 2010 09:12:14 +0000 (10:12 +0100)
commitca57926d53580f7c950496cb7ef6d7930610e1dd
tree93a559372fcc905726c6e253e463d101a5916837
parenta5e9d38b226686c89fd78413456535d5b66e8b1f
ARM: 6187/1: The v6_dma_inv_range() function must preserve data on SMP

A recent patch for DMA cache maintenance on ARM11MPCore added a write
for ownership trick to the v6_dma_inv_range() function. Such operation
destroys data already present in the buffer. However, this function is
used with with dma_sync_single_for_device() which is supposed to
preserve the existing data transfered into the buffer. This patch adds a
combination of read/write for ownership to preserve the original data.

Reported-by: Ronen Shitrit <rshitrit@marvell.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/cache-v6.S