[okl4-developer] <iguana_server> alignment fault at 0xdeadbefb from thread: 80000004

Geoffrey Lee glee at ok-labs.com
Wed Jun 4 23:21:23 EST 2008


On Wed, Jun 04, 2008 at 03:12:20PM +0200, Lukas HANEL wrote:
> Hi Geoffrey
> 
> I attached the disassembled code. In the clist create function, it seems 
> as if the first malloc returned a bad pointer(r4, MR04: 0x00000101). 
> Maybe this is indicating an error condition? So when the code tries to 
> write in the array, it is not performing a word aligned access (e.g. 
> 0x101+12)

Hi Lukas

That is 8040282c not 8000282c :)

As stated the faulting memory address is 0xdeadbefb which, apart from
not being aligned on a 4 byte boundary looks a bit suspect.

Probably it is trying to dereference offset 0xc from 0xdeadbeef?

	-gl

> 
> Lukas Hänel
> 
> ----
> struct clist *
> server_clist_create(struct pd *pd)
> {
> 80002800:       e92d4070        stmdb   sp!, {r4, r5, r6, lr}
> 80002804:       e1a05000        mov     r5, r0
> iguana/server/src/clist.c:85
>     struct clist *clist;
> 
>     clist = malloc(sizeof(*clist));
> 80002808:       e3a0001c        mov     r0, #28 ; 0x1c
> 8000280c:       eb001da0        bl      80009e94 <malloc>
> iguana/server/src/clist.c:86
>     if (clist != NULL) {
> 80002810:       e2504000        subs    r4, r0, #0      ; 0x0
> iguana/server/src/clist.c:89
>         clist->magic = CLIST_MAGIC;
>         clist->owner = pd;
>         clist->used = 0;
> 80002814:       e3a06000        mov     r6, #0  ; 0x0
> iguana/server/src/clist.c:91
>         clist->size = MIN_CLIST_SLOTS;
>         clist->cap = malloc(clist->size * sizeof(cap_t));
> 80002818:       e3a00080        mov     r0, #128        ; 0x80
> iguana/server/src/clist.c:86
> 8000281c:       0a000017        beq     80002880 <server_clist_create+0x80>
> iguana/server/src/clist.c:87
> 80002820:       e59f3060        ldr     r3, [pc, #96]   ; 80002888 
> <.text+0x2888>
> 80002824:       e5932000        ldr     r2, [r3]
> iguana/server/src/clist.c:90
> 80002828:       e3a03010        mov     r3, #16 ; 0x10
> 8000282c:       e584300c        str     r3, [r4, #12]
> iguana/server/src/clist.c:87
> 80002830:       e8840064        stmia   r4, {r2, r5, r6}
> iguana/server/src/clist.c:91
> 80002834:       eb001d96        bl      80009e94 <malloc>
> 
> ----
> Geoffrey Lee wrote:
> >On Wed, Jun 04, 2008 at 01:22:07PM +0200, Lukas HANEL wrote:
> >>Hi,
> >>
> >>when compiling with debug_trace=1 I get the following error message. 
> >>However, it seems as if the system is working fine even with this thing.
> >>So I was trying this with the drivers example and with oklinux and in 
> >>both ways the normal behaviour was not affected.
> >
> >Hi Lukas
> >
> >It looks like the system tried to cause an unaligned access by
> >accessing memory at 0xdeaddefb.  This makes the hardware trap and
> >causes an exception IPC to be sent.  The best way would be to disassmeble
> >the relevant parts of OKL4 and find out what it is doing.
> >
> >	-gl
> >
> >>Can you comment on source and impact of this? E.g. is this a problem?
> >>
> >>Thanks,
> >>Lukas
> >>
> >>----
> >><iguana_server> alignment fault at 0xdeadbefb from thread: 80000004
> >>IP: 0x8040282c SP: 0x8001ff4c FLAGS: 0x20000010
> >>   --  TAG: 0xffb00005
> >>      MR01: 0x8040282c
> >>      MR02: 0x8001ff4c
> >>      MR03: 0x20000010
> >>      MR04: 0x00000101
> >>      MR05: 0xdeadbefb
> >>
> >>_______________________________________________
> >>Developer mailing list
> >>Developer at okl4.org
> >>https://lists.okl4.org/mailman/listinfo/developer
> >>
> >
> 
> 

-- 




More information about the Developer mailing list