dotgnu-libjit
[Top][All Lists]
Advanced

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

Re: [Dotgnu-libjit] How Do I Debug a Memory Protection Error?


From: Klaus Treichel
Subject: Re: [Dotgnu-libjit] How Do I Debug a Memory Protection Error?
Date: Sat, 16 Oct 2010 10:26:40 +0200

Hi Noah,

> I'm getting a bus error when running my program (which uses libjit).
> GDB suggests that this is a kernel protection failure on a region of
> memory with read and write, but not execute, permission, and that it
> happens when I call jit_apply. In fact, I tracked it through libjit to
> jit-apply.c line 442 (from a recent git version), which is a call to
> jit_builtin_apply. I think what must be happening is that libjit is
> putting generated code in memory that does not have executable
> permissions.

What does the address look like on which the bus error is raised?
The OS X abi for x86_64 should be SysV abi or do you know about any
differences?

Does gdb print the contents of the address?
like with print *(char *)(address)

Enter the command "display /8i $pc" in gdb before running the faulting
program and run it to get the assembly instructions where the error
actually happens.

Cheers,
Klaus

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

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