qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] sparc mmu bug(and fix) seen with NetBSD
@ 2008-06-24 17:39 Cliff Wright
  2008-06-24 19:05 ` Blue Swirl
  0 siblings, 1 reply; 2+ messages in thread
From: Cliff Wright @ 2008-06-24 17:39 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 487 bytes --]

When using QEMU 0.9.1 for sparc emulation on i386 booting NetBSD 4.0 miniroot.fs a bug with the MMU is seen. A fault type is mis-aligned with
the fault status register. This is seen by NetBSD with a copy on write
that causes a write fault, with no fault type in the register, NetBSD just
returns to the faulting instruction, causing an infinite loop.
Below is a patch to the 0.9.1 source, however I see the same problem
in the subversion source.



-- 
Cliff Wright <cliff@snipe444.org>

[-- Attachment #2: qemu-patch1.txt --]
[-- Type: text/plain, Size: 441 bytes --]

--- helper.c.orig	2008-01-06 11:38:45.000000000 -0800
+++ helper.c	2008-06-24 10:23:00.000000000 -0700
@@ -197,7 +197,7 @@
     }
     /* check access */
     access_perms = (pde & PTE_ACCESS_MASK) >> PTE_ACCESS_SHIFT;
-    error_code = access_table[*access_index][access_perms];
+    error_code = access_table[*access_index][access_perms] << 2;
     if (error_code && !((env->mmuregs[0] & MMU_NF) && is_user))
         return error_code;
 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-06-24 19:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-24 17:39 [Qemu-devel] sparc mmu bug(and fix) seen with NetBSD Cliff Wright
2008-06-24 19:05 ` Blue Swirl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).