Kernel Helpers segmentation fault

Adam Lackorzynski adam at os.inf.tu-dresden.de
Wed Nov 13 23:33:32 CET 2019


Hi,

the case for cmpxchg64 is currently not handled, that's why it faults.
Could you make me available the go program or at least the code around
the call to __kuser_cmpxchg64?


Adam

On Wed Nov 13, 2019 at 08:45:22 +0530, Sateesh K wrote:
> Hi,
>   My setup is as follows:
>   l4linux 4.19.0-l4
>   Fiasco.OC
>   Raspberry Pi 3 Model B
> 
>   I am running a helloworld.go program which is causing the following stack
> trace.
> 
> (gdb) bt full
> #0  0xffff0f60 in ?? ()
> No symbol table info available.
> #1  0x0001143c in kernelCAS64 ()
>     at /usr/local/go/src/sync/atomic/asm_linux_arm.s:112
> No locals.
> #2  0x0001103c in sync/atomic.loadUint64 (addr=0x10442080, val=48)
>     at /usr/local/go/src/sync/atomic/64bit_arm.go:10
> No locals.
> #3  0x00071f44 in internal/poll.(*fdMutex).rwlock (mu=0x10442080,
> read=false,
>     ~r1=160) at /usr/local/go/src/internal/poll/fd_mutex.go:130
>         mutexBit.lo = 4
>         mutexMask.hi = 2147481600
>         mutexMask.lo = 0
>         mutexSema = 0x1044208c
>         mutexWait.hi = 2048
>         mutexWait.lo = 0
> #4  0x00072314 in internal/poll.(*FD).writeLock (fd=0x10442080, ~r0=...)
>     at /usr/local/go/src/internal/poll/fd_mutex.go:237
> No locals.
> #5  0x00072a94 in internal/poll.(*FD).Write (fd=0x10442080, p=..., ~r1=0,
>     ~r2=...) at /usr/local/go/src/internal/poll/fd_unix.go:243
>         n = -1212420096
>         nn = 118
> --Type <RET> for more, q to quit, c to continue without paging--c
> #6  0x00073958 in os.(*File).write (b=..., err=..., f=0x1040c0f0, n=2729821
> 44) at /usr/local/go/src/os/file_unix.go:243
> No locals.
> #7  0x00072ffc in os.(*File).Write (b=..., err=..., f=0x1040c0f0, n=0) at
> /usr/local/go/src/os/file.go:144
>         err.data = 0x12c0e8 <fmt.ppFree> ""
>         err.itab = 0x8b7a8 <fmt.Fprintln+20> "\004"
>         ~r2.data = 0x10456014 ""
>         ~r2.itab = 0x0
> #8  0x0008b7fc in fmt.Fprintln (a=..., err=..., n=233960, w=...) at
> /usr/local/go/src/fmt/print.go:255
>         p = 0x10456080
> #9  0x0008b888 in fmt.Println (a=..., err=..., n=0) at
> /usr/local/go/src/fmt/print.go:264
> No locals.
> #10 0x000916c0 in main.main () at /home/pi/hello.go:6
> No locals.
> 
>  On further analysis, I find that segmentation fault is at
> 
> __kuser_cmpxchg64.
> 
> I have enabled CONFIG_KUSER_HELPERS=y when building the linux kernel.
> 
> Any hint please on how to proceed.
> 




More information about the l4-hackers mailing list