Hello,
Found a problem when using small pages and getting permission faults.
This patch corrects the decoding of access permissions for small pages
on ARM, was just off by 2 bits.

-Scott
Index: target-arm/helper.c
===================================================================
RCS file: /sources/qemu/qemu/target-arm/helper.c,v
retrieving revision 1.8
diff -u -3 -p -r1.8 helper.c
--- target-arm/helper.c	20 Jan 2007 17:12:09 -0000	1.8
+++ target-arm/helper.c	2 Feb 2007 05:12:03 -0000
@@ -338,7 +338,7 @@ static int get_phys_addr(CPUState *env, 
                 break;
             case 2: /* 4k page.  */
                 phys_addr = (desc & 0xfffff000) | (address & 0xfff);
-                ap = (desc >> (4 + ((address >> 13) & 6))) & 3;
+                ap = (desc >> (4 + ((address >> 11) & 6))) & 3; /* SRO */
                 break;
             case 3: /* 1k page.  */
                 if (type == 1) {
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel

Reply via email to