Hello,
because of trouble with finding the correct memory map we updated from ezsdk 5_01_00_77 to ezsdk 5_02_02_60. The problem with the memory map is gone, but now a kernel oops appears as soon as we call this:
// Now that everything has been set up on the ARM, trigger the DSP
Notify_sendEvent(DSP_PROC_ID, // 0
0,
APPNOTIFY_EVENT_NO, // 11
0,
TRUE);
When debugging further, that's where it happens, as far as I can see:
in /opt/ti/syslink_2_00_02_80/packages/ti/syslink/ipc/hlos/usr/Notify.c:
1090 #endif /* if !defined(SYSLINK_BUILD_OPTIMIZE) */
1091 cmdArgs.procId = procId;
1092 cmdArgs.lineId = lineId;
1093 cmdArgs.eventId = eventId;
1094 cmdArgs.payload = payload;
1095 cmdArgs.waitClear = waitClear;
1096 status = NotifyDrvUsr_ioctl (CMD_NOTIFY_SENDEVENT, &cmdArgs); // <==== CRASH
1097 #if !defined(SYSLINK_BUILD_OPTIMIZE)
As soon as line 1096 is executed, 12MB of kernel log is printed, where the start is printed below.
My code was mainly copied from elder syslink examples and worked like a charm with the old ipc/syslink from ezsdk 5_01_00_70.
What has happened? I found nothing in the release notes.
Unable to handle kernel NULL pointer dereference at virtual address 00000010
pgd = c0004000
[00000010] *pgd=00000000
Internal error: Oops: 17 [#1]
last sysfs file: /sys/devices/platform/ti81xxfb/graphics/fb0/bits_per_pixel
Modules linked in: ipv6 ti81xxhdmi ti81xxfb vpss syslink
CPU: 0 Not tainted (2.6.37 #1)
PC is at notify_shmdrv_isr_callback+0x1c/0xac
LR is at notify_shmdrv_dsp_isr+0x2c/0x3c
pc : [<c02a545c>] lr : [<c02a5518>] psr: 60000013
sp : c9165e88 ip : c9165ea8 fp : c9165ea4
r10: 00000004 r9 : c00617a8 r8 : 00000004
r7 : 00000000 r6 : 00000000 r5 : 00000000 r4 : 00000000
r3 : 00000004 r2 : 00000004 r1 : 00000004 r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: 10c5387d Table: 88350019 DAC: 00000017
Process kworker/0:1 (pid: 22, stack limit = 0xc91642e8)
Stack: (0xc9165e88 to 0xc9166000)
5e80: 00000004 00000000 fffffffe 00000000 c9165ebc c9165ea8
5ea0: c02a5518 c02a544c 00000000 00000000 c9165ee4 c9165ec0 c03690cc c02a54f8
5ec0: c04aaab8 c04aaaac 00000004 ffffffff 00000004 00000000 c9165f14 c9165ee8
5ee0: c0083c64 c03690a4 00000000 c04addc4 c9165f14 c9283580 00000004 c9165f34
5f00: c04addc4 c905e800 c9165f2c c9165f18 c0083c9c c0083c1c 00000000 c04ade7c
5f20: c9165f54 c9165f30 c00617f0 c0083c88 c036912c 00000004 00000000 c9283594
5f40: c04ade7c c9156340 c9165f8c c9165f58 c0079ec4 c00617b4 c9165f7c 00000000
5f60: c0078f5c c9156340 c04addc4 00000009 c04addc4 c04addc4 c9156350 c9164000
5f80: c9165fbc c9165f90 c007a81c c0079ce4 00000000 c9165fcc c902fee0 c9156340
5fa0: c007a668 00000000 00000000 00000000 c9165ff4 c9165fc0 c007eb1c c007a674
5fc0: c902fee0 00000000 c9156340 00000000 c9165fd0 c9165fd0 c902fee0 c007ea90
5fe0: c006aeec 00000013 00000000 c9165ff8 c006aeec c007ea9c 00004008 00000010
Backtrace:
[<c02a5440>] (notify_shmdrv_isr_callback+0x0/0xac) from [<c02a5518>] (notify_shmdrv_dsp_isr+0x2c/0x3c)
r7:00000000 r6:fffffffe r5:00000000 r4:00000004
[<c02a54ec>] (notify_shmdrv_dsp_isr+0x0/0x3c) from [<c03690cc>] (notifier_call_chain+0x34/0x78)
r5:00000000 r4:00000000
[<c0369098>] (notifier_call_chain+0x0/0x78) from [<c0083c64>] (__blocking_notifier_call_chain+0x54/0x6c)
[<c0083c10>] (__blocking_notifier_call_chain+0x0/0x6c) from [<c0083c9c>] (blocking_notifier_call_chain+0x20/0x28)
r8:c905e800 r7:c04addc4 r6:c9165f34 r5:00000004 r4:c9283580
[<c0083c7c>] (blocking_notifier_call_chain+0x0/0x28) from [<c00617f0>] (mbox_rx_work+0x48/0xec)
[<c00617a8>] (mbox_rx_work+0x0/0xec) from [<c0079ec4>] (process_one_work+0x1ec/0x318)
r6:c9156340 r5:c04ade7c r4:c9283594
[<c0079cd8>] (process_one_work+0x0/0x318) from [<c007a81c>] (worker_thread+0x1b4/0x2d0)
[<c007a668>] (worker_thread+0x0/0x2d0) from [<c007eb1c>] (kthread+0x8c/0x94)
[<c007ea90>] (kthread+0x0/0x94) from [<c006aeec>] (do_exit+0x0/0x5e4)
r7:00000013 r6:c006aeec r5:c007ea90 r4:c902fee0
Code: e1a06000 f57ff04f e3a04000 e2843004 (e7960103)
---[ end trace d8470b2128c7c716 ]---
Unable to handle kernel paging request at virtual address fffffffc
pgd = c0004000
[fffffffc] *pgd=895fe021, *pte=00000000, *ppte=00000000
Internal error: Oops: 17 [#2]
last sysfs file: /sys/devices/platform/ti81xxfb/graphics/fb0/bits_per_pixel
Modules linked in: ipv6 ti81xxhdmi ti81xxfb vpss syslink
CPU: 0 Tainted: G D (2.6.37 #1)
PC is at kthread_data+0x10/0x18
LR is at wq_worker_sleeping+0x14/0x88
pc : [<c007e644>] lr : [<c007b700>] psr: 00000193
sp : c9165c40 ip : c9165c50 fp : c9165c4c
r10: c907bc68 r9 : c907bb78 r8 : c9164000
r7 : c9020000 r6 : c907bce4 r5 : c907bb80 r4 : 00000000
r3 : 00000000 r2 : 00000040 r1 : 00000000 r0 : c907bb80
Flags: nzcv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c5387d Table: 88350019 DAC: 00000015
Process kworker/0:1 (pid: 22, stack limit = 0xc91642e8)
Stack: (0xc9165c40 to 0xc9166000)
5c40: c9165c64 c9165c50 c007b700 c007e640 ffffffff c907bb80 c9165c8c c9165c68
5c60: c0365628 c007b6f8 ffffffff c907bb78 c907bb80 c9020000 c907bc68 c907bb78
5c80: c9165cb4 c9165c90 c006b49c c0365584 00000008 00000001 c9165cb4 c9165c9c
5ca0: c9165c9c c907bcb0 c9165d2c c9165cb8 c0046ef0 c006aef8 c91642e8 0000000b
5cc0: 00000000 00000000 65000017 36306131 20303030 66373566 66343066 61336520
5ce0: 30303430 32652030 30333438 28203430 36393765 33303130 c0002029 c0365134
5d00: c0462bf6 00000010 c9165e40 00000000 00000017 00000000 00000017 00000010
5d20: c9165d54 c9165d30 c00499c4 c0046c60 c0498738 c9165e40 c907bb80 00000000
5d40: 00000010 00000017 c9165d8c c9165d58 c0368fd4 c0049964 00000000 00000000
5d60: 00000000 c0498738 c04987a8 00000017 c9165e40 00000010 20000113 00000004
5d80: c9165e3c c9165d90 c00382a4 c0368df0 00000000 00000000 00000000 00000000
5da0: 00000000 00000000 00000000 00000000 c8230000 c8230000 00000003 c8230000
5dc0: c9165de4 c9165dd0 c02dbd90 c00bc4b4 c8230000 00000000 00000000 60000013
5de0: 00000000 00000003 c8230000 00000000 00000000 00000000 c9165e24 c9165e08
5e00: c00633b4 c0063320 00000000 c9165e18 c02dbba4 c8230000 c9165e7c ffffffff
5e20: c9165e74 00000000 00000000 00000004 c9165ea4 c9165e40 c0366fac c0038274
5e40: 00000000 00000004 00000004 00000004 00000000 00000000 00000000 00000000
5e60: 00000004 c00617a8 00000004 c9165ea4 c9165ea8 c9165e88 c02a5518 c02a545c
5e80: 60000013 ffffffff 00000004 00000000 fffffffe 00000000 c9165ebc c9165ea8
5ea0: c02a5518 c02a544c 00000000 00000000 c9165ee4 c9165ec0 c03690cc c02a54f8
5ec0: c04aaab8 c04aaaac 00000004 ffffffff 00000004 00000000 c9165f14 c9165ee8
5ee0: c0083c64 c03690a4 00000000 c04addc4 c9165f14 c9283580 00000004 c9165f34
5f00: c04addc4 c905e800 c9165f2c c9165f18 c0083c9c c0083c1c 00000000 c04ade7c
5f20: c9165f54 c9165f30 c00617f0 c0083c88 c036912c 00000004 00000000 c9283594
5f40: c04ade7c c9156340 c9165f8c c9165f58 c0079ec4 c00617b4 c9165f7c 00000000
5f60: c0078f5c c9156340 c04addc4 00000009 c04addc4 c04addc4 c9156350 c9164000
5f80: c9165fbc c9165f90 c007a81c c0079ce4 00000000 c9165fcc c902fee0 c9156340
5fa0: c007a668 00000000 00000000 00000000 c9165ff4 c9165fc0 c007eb1c c007a674
5fc0: c902fee0 00000000 c9156340 00000001 c9165fd0 c9165fd0 c902fee0 c007ea90
5fe0: c006aeec 00000013 00000000 c9165ff8 c006aeec c007ea9c 00004008 00000010
Backtrace:
[<c007e634>] (kthread_data+0x0/0x18) from [<c007b700>] (wq_worker_sleeping+0x14/0x88)
[<c007b6ec>] (wq_worker_sleeping+0x0/0x88) from [<c0365628>] (schedule+0xb0/0x324)
r5:c907bb80 r4:ffffffff
[<c0365578>] (schedule+0x0/0x324) from [<c006b49c>] (do_exit+0x5b0/0x5e4)
r9:c907bb78 r8:c907bc68 r7:c9020000 r6:c907bb80 r5:c907bb78
r4:ffffffff
[<c006aeec>] (do_exit+0x0/0x5e4) from [<c0046ef0>] (die+0x29c/0x2d8)
[<c0046c54>] (die+0x0/0x2d8) from [<c00499c4>] (__do_kernel_fault+0x6c/0x8c)
[<c0049958>] (__do_kernel_fault+0x0/0x8c) from [<c0368fd4>] (do_page_fault+0x1f0/0x20c)
r9:00000017 r8:00000010 r7:00000000 r6:c907bb80 r5:c9165e40
r4:c0498738
[<c0368de4>] (do_page_fault+0x0/0x20c) from [<c00382a4>] (do_DataAbort+0x3c/0x9c)
[<c0038268>] (do_DataAbort+0x0/0x9c) from [<c0366fac>] (__dabt_svc+0x4c/0x60)
Exception stack(0xc9165e40 to 0xc9165e88)
5e40: 00000000 00000004 00000004 00000004 00000000 00000000 00000000 00000000
5e60: 00000004 c00617a8 00000004 c9165ea4 c9165ea8 c9165e88 c02a5518 c02a545c
5e80: 60000013 ffffffff
r8:00000004 r7:00000000 r6:00000000 r5:c9165e74 r4:ffffffff
[<c02a5440>] (notify_shmdrv_isr_callback+0x0/0xac) from [<c02a5518>] (notify_shmdrv_dsp_isr+0x2c/0x3c)
r7:00000000 r6:fffffffe r5:00000000 r4:00000004
[<c02a54ec>] (notify_shmdrv_dsp_isr+0x0/0x3c) from [<c03690cc>] (notifier_call_chain+0x34/0x78)
r5:00000000 r4:00000000
[<c0369098>] (notifier_call_chain+0x0/0x78) from [<c0083c64>] (__blocking_notifier_call_chain+0x54/0x6c)
[<c0083c10>] (__blocking_notifier_call_chain+0x0/0x6c) from [<c0083c9c>] (blocking_notifier_call_chain+0x20/0x28)
r8:c905e800 r7:c04addc4 r6:c9165f34 r5:00000004 r4:c9283580
[<c0083c7c>] (blocking_notifier_call_chain+0x0/0x28) from [<c00617f0>] (mbox_rx_work+0x48/0xec)
[<c00617a8>] (mbox_rx_work+0x0/0xec) from [<c0079ec4>] (process_one_work+0x1ec/0x318)
r6:c9156340 r5:c04ade7c r4:c9283594
[<c0079cd8>] (process_one_work+0x0/0x318) from [<c007a81c>] (worker_thread+0x1b4/0x2d0)
[<c007a668>] (worker_thread+0x0/0x2d0) from [<c007eb1c>] (kthread+0x8c/0x94)
[<c007ea90>] (kthread+0x0/0x94) from [<c006aeec>] (do_exit+0x0/0x5e4)
r7:00000013 r6:c006aeec r5:c007ea90 r4:c902fee0
Code: e1a0c00d e92dd800 e24cb004 e5903138 (e5130004)
---[ end trace d8470b2128c7c717 ]---
Fixing recursive fault but reboot is needed!
Unable to handle kernel paging request at virtual address fffffffc