diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2005-10-20 17:55:26 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2005-10-29 14:32:50 -0400 |
commit | e5adb8770e12169a6595a3ad5682541441bd1052 (patch) | |
tree | 22aaae4e58f9d4054a474a5fa31d492e4b9e79a1 /arch/mips/lib/memcpy.S | |
parent | 7cf8053b8ee48a7f0e9d8ebc72c279fb2e168c25 (diff) |
Hack to resolve longstanding prefetch issue
Prefetching may be fatal on some systems if we're prefetching beyond the
end of memory on some systems. It's also a seriously bad idea on non
dma-coherent systems.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/lib/memcpy.S')
-rw-r--r-- | arch/mips/lib/memcpy.S | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/mips/lib/memcpy.S b/arch/mips/lib/memcpy.S index a78865f76547..7f9aafa4d80e 100644 --- a/arch/mips/lib/memcpy.S +++ b/arch/mips/lib/memcpy.S | |||
@@ -13,6 +13,21 @@ | |||
13 | * Mnemonic names for arguments to memcpy/__copy_user | 13 | * Mnemonic names for arguments to memcpy/__copy_user |
14 | */ | 14 | */ |
15 | #include <linux/config.h> | 15 | #include <linux/config.h> |
16 | |||
17 | /* | ||
18 | * Hack to resolve longstanding prefetch issue | ||
19 | * | ||
20 | * Prefetching may be fatal on some systems if we're prefetching beyond the | ||
21 | * end of memory on some systems. It's also a seriously bad idea on non | ||
22 | * dma-coherent systems. | ||
23 | */ | ||
24 | #if !defined(CONFIG_DMA_COHERENT) || !defined(CONFIG_DMA_IP27) | ||
25 | #undef CONFIG_CPU_HAS_PREFETCH | ||
26 | #endif | ||
27 | #ifdef CONFIG_MIPS_MALTA | ||
28 | #undef CONFIG_CPU_HAS_PREFETCH | ||
29 | #endif | ||
30 | |||
16 | #include <asm/asm.h> | 31 | #include <asm/asm.h> |
17 | #include <asm/asm-offsets.h> | 32 | #include <asm/asm-offsets.h> |
18 | #include <asm/regdef.h> | 33 | #include <asm/regdef.h> |