 |
In the phoneME Advanced MR1 release, cache flushing on linux/ARM 2.6 kernels is not done properly. This usually results in a readily reproducable crash, or in some cases a hang. To fix this bug, apply the following patch:
Index: src/linux-arm/javavm/runtime/jit/flushcache_arch.S
===================================================================
--- src/linux-arm/javavm/runtime/jit/flushcache_arch.S (revision 566)
+++ src/linux-arm/javavm/runtime/jit/flushcache_arch.S (working copy)
@@ -31,7 +31,7 @@
ENTRY1(CVMJITflushCacheDoit)
/* First argument: beginning address in range */
/* Second argument: end address in range */
- mov a3, #1
+ mov a3, #0
swi 0x009f0002
mov pc, lr
SET_SIZE(CVMJITflushCacheDoit)
Note that this bug is not present in MR2 and later releases.
-- ChrisPlummer - 17 Jan 2007
|