AnsweredAssumed Answered

How to debug Oops: Kernel access of bad area, sig: 11 [#1]  issue

Question asked by Chandra Shekhar on Aug 5, 2015
Latest reply on Oct 26, 2015 by Chandra Shekhar

Hi,

We are getting below kernel crash while using "insmod" for kernel module built for t1040 processor using 64 bit toolchain.

 

root@t1040rdb:/media/ram# insmod linux-kernel-bde.ko
linux_kernel_bde: module license 'Proprietary' taints kernel.
Disabling lock debugging due to kernel taint
Unable to handle kernel paging request for data at address 0x00000000
Faulting instruction address: 0x80000000001a0758
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=24 CoreNet Generic
Modules linked in: linux_kernel_bde(PO+)
CPU: 0 PID: 2700 Comm: insmod Tainted: P           O 3.12.19-rt30-QorIQ-SDK-V1.6+gc29fe1a #3
task: c000000006937400 ti: c00000000657c000 task.ti: c00000000657c000
NIP: 80000000001a0758 LR: 800000000019b274 CTR: c00000000036ddb4
REGS: c00000000657f7a0 TRAP: 0300   Tainted: P           O  (3.12.19-rt30-QorIQ-SDK-V1.6+gc29fe1a)
MSR: 0000000080029000 <CE,EE,ME>  CR: 44000444  XER: 20000000
SOFTE: 1
DEAR: 0000000000000000, ESR: 0000000000000000

GPR00: 800000000019b268 c00000000657fa20 80000000001a8ad0 000000000000002a
GPR04: 0000000044000444 000000000000000d 0000000000000008 0000000000000008
GPR08: 0000000000000000 0000000000000001 00000001a66b1cbc 0000000000000000
GPR12: 0000000024000442 c00000000fff4000 80000000001a7fc8 0000000000000154
GPR16: 0000000000000018 c000000000b7c518 0000000000000000 0000000000000124
GPR20: c000000000afc210 c00000000657fdc0 0000000000000001 80000000001a0b50
GPR24: c0000000069df1c0 c0000000007d9648 0000000000000001 c000000000b3e980
GPR28: 800000000019d118 80000000001a2068 ffffffffffffffed 800000000019c318
NIP [80000000001a0758] gmodule_get+0x0/0xffffffffffffbad8 [linux_kernel_bde]
LR [800000000019b274] ____versions+0x169ac/0x17968 [linux_kernel_bde]
Call Trace:
[c00000000657fa20] [800000000019b268] ____versions+0x169a0/0x17968 [linux_kernel_bde] (unreliable)
[c00000000657fab0] [c00000000000184c] .do_one_initcall+0x14c/0x1a0
[c00000000657fba0] [c0000000000acfc8] .load_module+0x1ea4/0x2394
[c00000000657fd40] [c0000000000ad564] .SyS_init_module+0xac/0xec
[c00000000657fe30] [c000000000000598] syscall_exit+0x0/0x8c
Instruction dump:
XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX
XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX
---[ end trace 75186f9f417e1c86 ]---

Segmentation fault
root@t1040rdb:/media/ram#

 

However when the same is compiled for 32bit kernel with 32 bit toolchain the kernel module works perfectly. Is there any configuration missing? Can someone provide some clue to debug it further?

 

Regards,

Chandra Shekhar

Outcomes