qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Sparc32 bash problem solved


From: Blue Swirl
Subject: Re: [Qemu-devel] Sparc32 bash problem solved
Date: Sun, 28 May 2006 10:19:25 +0200

> emulator. I finally found the reason by observing strange Linux behaviour
> relating to MMU no-fault mode. No fault mode seems to apply only to
> supervisor accesses, not user ones. The logic was not described like this
> in the manual, thank you very much.

How did you find it?

I looked at qemu.log to find the faulting location in bash. I enabled DEBUG_MMU in helper.c and op_helper.c to see if the MMU mappings are correct, generating some 400 megs of logs. The instruction was load and the data being accessed was not mapped. Then I attached gdb to emulator and set a breakpoint to the faulting address and also to Linux fault handler. I noticed that the fault kept repeating forever, as if Linux didn't realise that any fault has happened. Then I got the idea to try this change. I think the logic is that it is not safe to allow user to override the MMU mappings. What an exciting story to tell your grandchildren, don't you think?

Caller[f0005e0c]: t_sec_trap_start_interrupt+0x38/0x5c
Caller[f01096c4]: prom_nbputchar+0xa0/0xb0

Maybe there is something wrong with Proll putchar function, or Proll's data areas are overwritten.

_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now! http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/





reply via email to

[Prev in Thread] Current Thread [Next in Thread]