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

Re: [MiNT] Crash log



on 4/24/06 12:52 PM, Lonny Pursell wrote:

> Hi,
> 
> I have an app that dies with a memory protection enabled.  Can someone tell me
> what the "Addr: $hex..." entry in the crash log means exactly?
> 
> Looked at mprot.x on the server, but well still not sure what it is exactly.

Never mind.  Frank answered this on IRC.  Thanks Frank.

I have 1 observation. Any particular reason crash entries have to be so
obtuse?  The kernel knows the values, why can't it just compute the offset
for me?  It makes me do the math every time, so instead of:

    /* construct an AES alert box for this error:
     * | PROCESS  "buserrxx"  KILLED: |
     * | MEMORY VIOLATION.  (PID 000) |
     * |                              |
     * | Type: ......... PC: pc...... |
     * | Addr: ........  BP: ........ |
     */

I propose a change to:

     /* construct an AES alert box for this error:
     * | PROCESS  "buserrxx"  KILLED: |
     * | MEMORY VIOLATION.  (PID 000) |
     * | Type: ......... PC: pc...... |
     * | Addr: ........  BP: ........ |
     * |                 OS: ........ |
     */

Insert the offset at "OS:"
Where OS = (PC-BP)-256    ;-))


Now a new question.
Ingo pointed this out, and it's true on my machine as well.
With memory protection enabled we can clobber memory addresses below 2048
without entering super mode.  Is this suppose to happen?  I though this
should generate a memory violation?

-- 
Lonny Pursell    http://www.bright.net/~gfabasic/