[okl4-developer] Using OKLinux to provide services
Geoffrey Lee
glee at ok-labs.com
Wed Aug 6 22:45:28 EST 2008
On Wed, Aug 06, 2008 at 08:41:07PM +1000, Joshua Root wrote:
> Damien Schulz wrote:
> > Hi Geoffrey,
> >
> > the pagefault happens in the function dequeue_task of the Linux kernel. Any idea what could cause this problem?
> >
> > 01f09110 <dequeue_task>:
> > 1f09110: e1a0c00d mov ip, sp
> > 1f09114: e92dd830 stmdb sp!, {r4, r5, fp, ip, lr, pc}
> > 1f09118: e2804020 add r4, r0, #32 ; 0x20
> > 1f0911c: e24cb004 sub fp, ip, #4 ; 0x4
> > 1f09120: e3a02601 mov r2, #1048576 ; 0x100000
> > 1f09124: e2822c01 add r2, r2, #256 ; 0x100
> > 1f09128: e2815004 add r5, r1, #4 ; 0x4
> > 1f0912c: e5913000 ldr r3, [r1] <-- crash
> > 1f09130: e2433001 sub r3, r3, #1 ; 0x1
> > 1f09134: e5813000 str r3, [r1]
>
> Well, r1 would be the second argument, which means it's being passed a
> null task_struct pointer. Why that would be, I don't know.
I am guessing because the mutex can sleep and since the ipc loop
is freestanding and not associated with any Linux task_struct-based
thread so calling Linux down() and up() is not allowed.
>
> - Josh
-gl
>
> _______________________________________________
> Developer mailing list
> Developer at okl4.org
> https://lists.okl4.org/mailman/listinfo/developer
>
--
More information about the Developer
mailing list