GStreamer TIViddec2 element is hanging during decoding h264 stream in unpredictable moment. It can happen in start of stream or after several minutes after start of stream.
There is trace:
0:00:06.538635253 82 0x6db6b8 LOG TIViddec2 gsttividdec2.c:1520:gst_tividdec2_decode_thread: invoking the video decoder
@5,391,267us: [+0 T:0x480ff460 S:0x480fe264] ti.sdo.ce.video2.VIDDEC2 - VIDDEC2_process> Enter (handle=0x6e87c8, inBufs=0x480fe3b4, outBufs=0x480fe3a8, inArgs=0x480fec18, outArgs=0x480fe478)
@5,391,359us: [+4 T:0x480ff460 S:0x480fe1dc] CV - VISA_getMaxMsgSize(0x6e87c8): returning 0x1000
@5,391,420us: [+5 T:0x480ff460 S:0x480fe1e4] CV - VISA_allocMsg> Allocating message for messageId=0x000267a2
@5,391,512us: [+0 T:0x480ff460 S:0x480fe1b4] OM - Memory_getBufferPhysicalAddress> Enter(virtAddr=0x489b2c7e, size=100000)
@5,391,603us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> Enter(virtAddr=0x489b2c7e, size=100000)
@5,391,664us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> found in cb(Sc=0x48971000, Ec=0x48a95f80, Ss=0x489b2c7e, Es=0x489cb31e, PSc=0x8f100000)
@5,391,725us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> returning physAddr=0x8f141c7e
@5,391,786us: [+0 T:0x480ff460 S:0x480fe1b4] OM - Memory_getBufferPhysicalAddress> return (0x8f141c7e)
@5,391,847us: [+0 T:0x480ff460 S:0x480fe1b4] OM - Memory_getBufferPhysicalAddress> Enter(virtAddr=0x48b61000, size=202752)
@5,391,908us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> Enter(virtAddr=0x48b61000, size=202752)
@5,391,969us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> found in cb(Sc=0x48b61000, Ec=0x48c2b800, Ss=0x48b61000, Es=0x48b92800, PSc=0x8f2f0000)
@5,392,061us: [+1 T:0x480ff460 S:0x480fe1b4] OM - Memory__getPhysicalAddress> returning physAddr=0x8f2f0000
@5,392,122us: [+0 T:0x480ff460 S:0x480fe1b4] OM - Memory_getBufferPhysicalAddress> return (0x8f2f0000)
@5,392,183us: [+0 T:0x480ff460 S:0x480fe204] CV - VISA_call(visa=0x6e87c8, msg=0x48901880): messageId=0x000267a2, command=0x0
@5,392,244us: [+0 T:0x480ff460 S:0x480fe1cc] OC - Comm_put> Enter(queue=0x2, msg=0x48901880)
@5,392,366us: [+0 T:0x480ff460 S:0x480fe1cc] OC - Comm_put> return (0)
@5,392,427us: [+0 T:0x480ff460 S:0x480fe1c4] OC - Comm_get> Enter(queue=0x10001, msg=0x480fe27c, timeout=-1)
0:00:06.573211671 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 115
0:00:06.579620363 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 7063
0:00:06.650024414 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 115
0:00:06.653411866 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 7311
0:00:06.685272217 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 115
0:00:06.688751221 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 6860
0:00:06.734161377 82 0x6ce0c0 DEBUG TIViddec2 gsttividdec2.c:891:gst_tividdec2_chain: Received new data of size 160
If I press <Ctrl+C> sometimes application doesn't exit, but sometimes exits with kernel message:
[ 5133.188507] Unable to handle kernel paging request at virtual address cfa34010
[ 5133.188537] pgd = ca2c0000
[ 5133.188537] [cfa34010] *pgd=8b750011, *pte=00000000, *ppte=00000000
[ 5133.188568] Internal error: Oops: 7 [#1]
[ 5133.188598] last sysfs file: /sys/devices/platform/omapdss/overlay1/position
[ 5133.188598] Modules linked in: sdmak lpm_omap3530 dsplinkk cmemk omaplfb pvrsrvkm
[ 5133.188659] CPU: 0 Not tainted (2.6.32-jsc-byte #215)
[ 5133.188842] PC is at SYNC_WaitSEM+0x17c/0x220 [dsplinkk]
[ 5133.188873] LR is at flush_signals+0x10/0x18
[ 5133.188903] pc : [<bf05ab28>] lr : [<c007f084>] psr: 600f0013
[ 5133.188903] sp : ca045e58 ip : 00000000 fp : c0072b9c
[ 5133.188934] r10: ffffffff r9 : cfa34008 r8 : 00008000
[ 5133.188934] r7 : ca045e5c r6 : ca044000 r5 : cfa34000 r4 : ca3ae4c0
[ 5133.188964] r3 : 00000001 r2 : ca3ae4c0 r1 : cd750154 r0 : cd750154
[ 5133.188964] Flags: nZCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 5133.188995] Control: 10c5387d Table: 8a2c0019 DAC: 00000015
[ 5133.189025] Process rtpjitterbuffer (pid: 102, stack limit = 0xca0442f0)
[ 5133.189025] Stack: (0xca045e58 to 0xca046000)
[ 5133.189056] 5e40: 0097696a 00000001
[ 5133.189086] 5e60: ca3ae4c0 c0072b9c cfa34008 cfa34008 cd01d390 00000000 00008000 ca045efc
[ 5133.189117] 5e80: cfa2e000 bf0619b4 ca044000 ffffffff 480fe1c4 bf050ed8 c018e03a 480fe1dc
[ 5133.189147] 5ea0: c018e03a 480fe1dc 480fe1dc ca044000 432010ac bf05dc7c 00000000 00000001
[ 5133.189178] 5ec0: ffffffff cb5af440 00000000 00000000 00000000 00000000 ca3ae4c0 00000000
[ 5133.189208] 5ee0: 00000000 00008000 43202578 00010001 ffffffff 00000000 480fe3a8 00000000
[ 5133.189239] 5f00: 009765a4 ca337dc0 480fe1dc c018e03a ca337dc0 c00cd99c 0000003f ca337dc0
[ 5133.189239] 5f20: 0000003f c00ce09c c04651ec 00000000 00000002 cd01d390 00000001 00000002
[ 5133.189270] 5f40: 00000000 cd01b418 cd01d390 0000006e ca044000 480fe184 00000001 c00c2ae0
[ 5133.189300] 5f60: 00000000 00000000 0000003f 480fe1dc c018e03a ca337dc0 c0052044 ca044000
[ 5133.189331] 5f80: 432010ac c00ce114 0000003f 00000001 480fe1dc 432002f4 ffffffff 480fe27c
[ 5133.189361] 5fa0: 00000036 c0051ec0 432002f4 ffffffff 0000003f c018e03a 480fe1dc 0000003f
[ 5133.189392] 5fc0: 432002f4 ffffffff 480fe27c 00000036 00010001 00002284 432010ac 480fe1c4
[ 5133.189422] 5fe0: 432004d0 480fe0ac 431c4cd0 41804c1c 800e0010 0000003f 00000000 00000000
[ 5133.189636] [<bf05ab28>] (SYNC_WaitSEM+0x17c/0x220 [dsplinkk]) from [<bf050ed8>] (LDRV_MSGQ_get+0x7c/0xc4 [dsplinkk])
[ 5133.189849] [<bf050ed8>] (LDRV_MSGQ_get+0x7c/0xc4 [dsplinkk]) from [<bf05dc7c>] (DRV_Ioctl+0x1cc/0x7c0 [dsplinkk])
[ 5133.190002] [<bf05dc7c>] (DRV_Ioctl+0x1cc/0x7c0 [dsplinkk]) from [<c00cd99c>] (vfs_ioctl+0x60/0x70)
[ 5133.190063] [<c00cd99c>] (vfs_ioctl+0x60/0x70) from [<c00ce09c>] (do_vfs_ioctl+0x518/0x55c)
[ 5133.190093] [<c00ce09c>] (do_vfs_ioctl+0x518/0x55c) from [<c00ce114>] (sys_ioctl+0x34/0x54)
[ 5133.190124] [<c00ce114>] (sys_ioctl+0x34/0x54) from [<c0051ec0>] (ret_fast_syscall+0x0/0x2c)
[ 5133.190155] Code: eb40b00d e596200c e3a03001 e5823000 (e5953010)
[ 5133.190185] ---[ end trace ed33c433c96267e2 ]---