Re: Beagleboard xM - play video file : BUG: scheduling while atomic: queue1:src/92/0x0000008e , then kernel panic

277 views
Skip to first unread message

Felipe Contreras

unread,
Oct 9, 2012, 1:50:56 PM10/9/12
to Selso Liberado, gst...@googlegroups.com
Hi,

On Mon, Oct 8, 2012 at 10:53 AM, Selso Liberado
<selso.l...@gmail.com> wrote:

> So I have taken the git repository and switch to the next branche. It has
> code for the decode plugin.
> So now I had h264 vidéo playing : they are some flashes and it is instable
> as we can see in the logs below :

I don't think the 'next' branch has anything considerably different.
But the kernel messages are worrying. It seems you are using a
tickless kernel, have you tried a normal kernel? Also, I haven't tried
the 3.6 kernel, have you tried with older ones?

Cheers.

--
Felipe Contreras

Felipe Contreras

unread,
Oct 24, 2012, 11:34:51 AM10/24/12
to Selso Liberado, gst...@googlegroups.com, linux...@vger.kernel.org, Omar Ramirez Luna
Hi,

Selso, hopefully you don't mind, but I'll forward this to the
linux-omap mailing list, as this seems to be an interesting kernel
problem in tidspbridge.

Omar, any ideas?

On Wed, Oct 24, 2012 at 5:24 PM, Selso Liberado
<selso.l...@gmail.com> wrote:
> Hi !
>
> So I did have the best result with the beagleboard kernel community on 3.6.
> I'am a planning to test their older kernel (ie 3.0).
> Attached is a captured video file of a playback to see what is happenning on
> the screen.
>
> A the end of the playback I always get a kernel panic event with TI samples.
>
> Got EOS from element "pipeline0".
>
> Execution ended after 100096570255 ns.
>
> Setting pipeline to PAUSED ...
>
> Setting pipeline to READY ...
>
> Setting pipeline to NULL ...
>
> Freeing pipeline ...
>
> [ 503.568176] Kernel panic - not syncing: Aiee, killing interrupt handler!
>
> [ 503.581512] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b941c>]
> (panic+0x84/0x1e0)
>
> [ 503.596252] [<c05b941c>] (panic+0x84/0x1e0) from [<c003bac0>]
> (do_exit+0x9c/0x7d0)
>
> [ 503.610412] [<c003bac0>] (do_exit+0x9c/0x7d0) from [<c003c4ec>]
> (do_group_exit+0xa8/0xd4)
>
> [ 503.625274] [<c003c4ec>] (do_group_exit+0xa8/0xd4) from [<c0049c64>]
> (get_signal_to_deliver+0x5ac/0x624)
>
> [ 503.641601] [<c0049c64>] (get_signal_to_deliver+0x5ac/0x624) from
> [<c000fd5c>] (do_signal+0x88/0x450)
>
> [ 503.657775] [<c000fd5c>] (do_signal+0x88/0x450) from [<c001055c>]
> (do_work_pending+0x40/0xa0)
>
> [ 503.673217] [<c001055c>] (do_work_pending+0x40/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
>
>
> If I don't disable kernel prink to the minimum I get these errors looping on
> playback :
> [ 143.113586] BUG: scheduling while atomic: queue0:src/88/0x0000008e
> [ 143.126251] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 143.138916] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 143.154449] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 143.169616] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 143.184936] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> [ 143.200561] BUG: scheduling while atomic: queue0:src/88/0x0000008e
> [ 143.213409] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 143.226470] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 143.242401] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 143.257995] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 143.273742] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> [ 143.290374] BUG: scheduling while atomic: queue0:src/88/0x0000011b
>
>
>
> Here are the cmds for loading dsp and initializing gstreamer env :
> modprobe mailbox_mach
> sleep 1
> modprobe tidspbridge base_img=/lib/dsp/baseimage.dof dsp_test_sleepstate=1
> shm_size=0x500000
>
> Here is the config for tidspbrige driver :
> CONFIG_TIDSPBRIDGE=m
> CONFIG_TIDSPBRIDGE_MEMPOOL_SIZE=0x600000
> CONFIG_TIDSPBRIDGE_RECOVERY=y
> CONFIG_TIDSPBRIDGE_CACHE_LINE_CHECK=y
> # CONFIG_TIDSPBRIDGE_NTFY_PWRERR is not set
> # CONFIG_TIDSPBRIDGE_BACKTRACE is not set
>
>
> Notice that even with the dvsdk from ti (old kernel) I manage to have by
> chance the "scheduling while atomic"
>
> Is there any way to trace the bug ? I can't event say where it is happening
> (gst plugins, glib, gstreamer plugins, tidspbridge) !
> Is there another way to test video decode ?
>
> I also tested another pipeline with quite the same result :
> root@maia:~# gst-launch -v filesrc
> location=/home/mntfat/video_720x400_avc1_low_
> profile_noaudio.mp4 ! qtdemux ! queue ! dspvdec ! omapfbsink
> Setting pipeline to PAUSED ...
> Pipeline is PREROLLING ...
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps = video/x-h264,
> stream-format=(string)avc, alignment=(string)au, level=(string)3,
> profile=(string)constrained-baseline,
> codec_data=(buffer)0142c01effe100186742c01e9a720168676022000003005200000fa51e2c5c9001000468ce32c8,
> width=(int)720, height=(int)400, framerate=(fraction)143/6,
> pixel-aspect-ratio=(fraction)1/1
> /GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps = video/x-h264,
> stream-format=(string)avc, alignment=(string)au, level=(string)3,
> profile=(string)constrained-baseline,
> codec_data=(buffer)0142c01effe100186742c01e9a720168676022000003005200000fa51e2c5c9001000468ce32c8,
> width=(int)720, height=(int)400, framerate=(fraction)143/6,
> pixel-aspect-ratio=(fraction)1/1
> /GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:sink: caps = video/x-h264,
> stream-format=(string)avc, alignment=(string)au, level=(string)3,
> profile=(string)constrained-baseline,
> codec_data=(buffer)0142c01effe100186742c01e9a720168676022000003005200000fa51e2c5c9001000468ce32c8,
> width=(int)720, height=(int)400, framerate=(fraction)143/6,
> pixel-aspect-ratio=(fraction)1/1
>
> (gst-launch-0.10:90): GStreamer-CRITICAL **: gst_mini_object_unref:
> assertion `GST_IS_MINI_OBJECT (mini_object)' failed
> /GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:sink: caps = video/x-h264,
> stream-format=(string)avc, alignment=(string)au, level=(string)3,
> profile=(string)constrained-baseline,
> codec_data=(buffer)0142c01effe100186742c01e9a720168676022000003005200000fa51e2c5c9001000468ce32c8,
> width=(int)720, height=(int)400, framerate=(fraction)143/6,
> pixel-aspect-ratio=(fraction)1/1
> /GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:src: caps =
> video/x-raw-yuv, format=(fourcc)UYVY, width=(int)720, height=(int)400,
> pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)143/6
> [ 466.704742] BUG: scheduling while atomic: queue0:src/91/0x0000008e
> [ 466.717407] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 466.730072] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 466.745574] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 466.760742] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 466.776123] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> [ 466.792510] BUG: scheduling while atomic: queue0:src/91/0x0000011b
> [ 466.805511] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 466.818572] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 466.834472] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 466.850097] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 466.865844] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> [ 466.882415] BUG: scheduling while atomic: queue0:src/91/0x0000011b
> [ 466.896087] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 466.909881] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 466.926361] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 466.942474] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c007d67c>]
> (futex_wait_queue_me+0xf8/0x114)
> [ 466.959167] [<c007d67c>] (futex_wait_queue_me+0xf8/0x114) from
> [<c007d7cc>] (futex_wait+0xd4/0x210)
> [ 466.975982] [<c007d7cc>] (futex_wait+0xd4/0x210) from [<c007f67c>]
> (do_futex+0xc0/0xab4)
> [ 466.991821] [<c007f67c>] (do_futex+0xc0/0xab4) from [<c0080194>]
> (sys_futex+0x124/0x168)
> [ 467.007781] [<c0080194>] (sys_futex+0x124/0x168) from [<c000d4c0>]
> (ret_fast_syscall+0x0/0x30)
> [ 467.025115] BUG: scheduling while atomic: queue0:src/91/0x0000011b
> [ 467.039276] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 467.053588] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 467.070709] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 467.087554] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c007d67c>]
> (futex_wait_queue_me+0xf8/0x114)
> [ 467.105041] [<c007d67c>] (futex_wait_queue_me+0xf8/0x114) from
> [<c007d7cc>] (futex_wait+0xd4/0x210)
> [ 467.122589] [<c007d7cc>] (futex_wait+0xd4/0x210) from [<c007f67c>]
> (do_futex+0xc0/0xab4)
> [ 467.139068] [<c007f67c>] (do_futex+0xc0/0xab4) from [<c0080194>]
> (sys_futex+0x124/0x168)
> [ 467.155548] [<c0080194>] (sys_futex+0x124/0x168) from [<c000d4c0>]
> (ret_fast_syscall+0x0/0x30)
> [ 467.173309] NOHZ: local_softirq_pending 42
> gstdsp_map_buffer: buffer not aligned: 0xb36f4008(8)-0xb3780a08(8): from
> device
> /GstPipeline:pipeline0/GstOmapFbSink:omapfbsink0.GstPad:sink: caps =
> video/x-ra[ 467.201110] BUG: scheduling while atomic:
> queue0:src/91/0x0000011b
> [ 467.216552] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 467.231262] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 467.248840] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 467.265991] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 467.283172] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> w-yuv, format=(fourcc)UYVY, widt[ 467.302276] BUG: scheduling while atomic:
> dspvdec0:src/94/0x0000008d
> [ 467.318664] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 467.333587] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 467.351348] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 467.368774] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
> (do_work_pending+0x18/0xa0)
> [ 467.386230] [<c0010534>] (do_work_pending+0x18/0xa0) from [<c000d500>]
> (work_pending+0xc/0x20)
> h=(int)720, heig[ 467.404663] BUG: scheduling while atomic:
> dspvdec0:src/94/0x0000008d
> ht=(int)400, pix[ 467.420623] Modules linked in:el-aspect-ratio=
> tidspbridge(C)(fraction)1/1, f mailbox_machramerate=(fracti mailboxon)143/6
> Pipeli
> ne is PREROLLED [ 467.442810] [<c001369c>] (unwind_backtrace+0x0/0xe0) from
> [<c05b99e4>] (__schedule_bug+0x48/0x5c)
> ...
> Setting pip[ 467.462066] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from
> [<c05c2d1c>] (__schedule+0x60/0x798)
> eline to PLAYING[ 467.480987] [<c05c2d1c>] (__schedule+0x60/0x798) from
> [<c05c183c>] (schedule_timeout+0x1dc/0x218)
> ...
> New clock:[ 467.500213] [<c05c183c>] (schedule_timeout+0x1dc/0x218) from
> [<c05c2a34>] (wait_for_common+0x104/0x1bc)
> [ 467.520050] [<c05c2a34>] (wait_for_common+0x104/0x1bc) from [<c0362f00>]
> (omap_dispc_wait_for_irq_interruptible_timeout+0x4c/0x84)
>
> [ 467.542510] [<c0362f00>]
> (omap_dispc_wait_for_irq_interruptible_timeout+0x4c/0x84) from [<c0364158>]
> (dss_mgr_wait_for_vsync+0x50/0x60)
> [ 467.564208] [<c0364158>] (dss_mgr_wait_for_vsync+0x50/0x60) from
> [<c03773fc>] (omapfb_ioctl+0x9cc/0xed0)
> [ 467.583099] [<c03773fc>] (omapfb_ioctl+0x9cc/0xed0) from [<c0345e9c>]
> (do_fb_ioctl+0x56c/0x5a8)
> [ 467.601196] [<c0345e9c>] (do_fb_ioctl+0x56c/0x5a8) from [<c011ffa4>]
> (vfs_ioctl+0x24/0x40)
> [ 467.618804] [<c011ffa4>] (vfs_ioctl+0x24/0x40) from [<c0120ab4>]
> (do_vfs_ioctl+0x560/0x5a8)
> [ 467.636535] [<c0120ab4>] (do_vfs_ioctl+0x560/0x5a8) from [<c0120b48>]
> (sys_ioctl+0x4c/0x6c)
> [ 467.654205] [<c0120b48>] (sys_ioctl+0x4c/0x6c) from [<c000d4c0>]
> (ret_fast_syscall+0x0/0x30)
> [ 467.672943] BUG: scheduling while atomic: queue0:src/91/0x0000011b
> [ 467.688415] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 467.704132] [<c001369c>] (unwind_backtrace+0x0/0xe0) from [<c05b99e4>]
> (__schedule_bug+0x48/0x5c)
> [ 467.722412] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from [<c05c2d1c>]
> (__schedule+0x60/0x798)
> [ 467.740325] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c007d67c>]
> (futex_wait_queue_me+0xf8/0x114)
> [ 467.758819] [<c007d67c>] (futex_wait_queue_me+0xf8/0x114) from
> [<c007d7cc>] (futex_wait+0xd4/0x210)
> [ 467.777252] [<c007d7cc>] (futex_wait+0xd4/0x210) from [<c007f67c>]
> (do_futex+0xc0/0xab4)
> [ 467.794647] [<c007f67c>] (do_futex+0xc0/0xab4) from [<c0080194>]
> (sys_futex+0x124/0x168)
> [ 467.812042] [<c0080194>] (sys_futex+0x124/0x168) from [<c000d4c0>]
> (ret_fast_syscall+0x0/0x30)
> [ 467.830200] Unable to handle kernel paging request at virtual address
> b380da00
> [ 467.846893] pgd = dc44c000
> [ 467.858581] [b380da00] *pgd=9c457831, *pte=9f88c307, *ppte=9f88ca37
> [ 467.874267] Internal error: Oops: 81f [#1] SMP ARM
> [ 467.887908] Modules linked in: tidspbridge(C) mailbox_mach mailbox
> [ 467.903106] CPU: 0 Tainted: G WC (3.6.0+ #1)
> [ 467.917388] PC is at 0xb6b7ec50
> [ 467.929077] LR is at 0xb66f21e8
> [ 467.940643] pc : [<b6b7ec50>] lr : [<b66f21e8>] psr: 20000010
> [ 467.940643] sp : b4125ca8 ip : b36670e0 fp : 80808080
> [ 467.969177] r10: 80808080 r9 : 80808080 r8 : 80808080
> [ 467.982696] r7 : 80808080 r6 : 80808080 r5 : 80808080 r4 : 80808080
> [ 467.997558] r3 : 80808080 r2 : 0008c9c0 r1 : b36670a0 r0 : b380da00
> [ 468.012237] Flags: nzCv IRQs on FIQs on Mode USER_32 ISA ARM Segment
> user
> [ 468.027648] Control: 10c5387d Table: 9c44c019 DAC: 00000015
> [ 468.041473] Process dspvdec0:src (pid: 94, stack limit = 0xdc4742f8)
> [ 468.056091] ---[ end trace 7346e43bee93ae33 ]---
> [ 468.068725] note: dspvdec0:src[94] exited with preempt_count 141
> [ 468.084838] NOHZ: local_softirq_pending 40

--
Felipe Contreras

Felipe Contreras

unread,
Oct 24, 2012, 11:52:56 AM10/24/12
to Selso Liberado, gst...@googlegroups.com, linux...@vger.kernel.org, Omar Ramirez Luna
On Wed, Oct 24, 2012 at 5:49 PM, Selso Liberado
<selso.l...@gmail.com> wrote:

> I wished that someone agreed to mail him about this.
> Is the mailing list your talking about is located with this url ?
> http://linux.omap.com/mailman/listinfo

Yes, they are in CC now.

> I did also work with the linux-omap tree repo, and may repeat the test with
> this one.

It should work with a vanilla kernel. I think you might have better
luck with older kernels, 3.2, or maybe even 3.0. I don't recall the
last one I tried, but it was working fine.

Cheers.

--
Felipe Contreras

Omar Ramirez Luna

unread,
Oct 24, 2012, 6:49:47 PM10/24/12
to Felipe Contreras, Selso Liberado, gst...@googlegroups.com, linux...@vger.kernel.org, Omar Ramirez Luna
Hi,

On Wed, Oct 24, 2012 at 10:34 AM, Felipe Contreras
<felipe.c...@gmail.com> wrote:
> Hi,
>
> Selso, hopefully you don't mind, but I'll forward this to the
> linux-omap mailing list, as this seems to be an interesting kernel
> problem in tidspbridge.
>
> Omar, any ideas?

I don't see tidspbridge trace paths (but I don't discard something
wrong either ;)), however I do see a framebuffer, dss, dispc trace,
might be a good point to start checking:
...
>> CONFIG_TIDSPBRIDGE_CACHE_LINE_CHECK=y

I wasn't aware that now gst-dsp supported this, might be time to update mine.

Anyway, right now I have lots of debugging enabled and specifically
the one that spits "scheduling while atomic" with kernel 3.7-rc2, and
I'm not seeing this with the fakesink decode, and the encoder to a
file, I don't have framebuffer nor display though.

What kernel is this? If non-mainline, I might try it out of curiosity.

Regards,

Omar

SelsoLiberado

unread,
Oct 25, 2012, 8:42:29 AM10/25/12
to Omar Ramirez Luna, Felipe Contreras, Selso Liberado, gst...@googlegroups.com, linux...@vger.kernel.org, Omar Ramirez Luna
Hi Omar,

Thanks for reply.

-----------------------------------------------------------------------------------------------------------
U : "What kernel is this? If non-mainline, I might try it out of
curiosity."
ME :
* code sourcery arm-2012.03-57-lite
* beaglboard xM rev C
* beagleboard kernel 3.6 (Beagleabord 3.6 branch) :
https://github.com/beagleboard/kernel/branches
* gstreamer 0.10.36 with plugins base, good
* custom FS (busybox only and base libs)
* ti LI23.8
* package gst-dsp 0.10.2 and the branch "next" for gst-dsp plugin

I did also make test with a "stable 3.2.30" and got the bug "scheduling
while atomic".

-----------------------------------------------------------------------------------------------------------
U : " CONFIG_TIDSPBRIDGE_CACHE_LINE_CHECK=y : I wasn't aware that now
gst-dsp supported this, might be time to update mine"
ME : I may repeat tests without this option. Can it cause troubles ?

Also here is how I load the module driver :
modprobe tidspbridge base_img=/lib/dsp/baseimage.dof
dsp_test_sleepstate=1
I did also tried with higher shm memory size (as seen in nokia luma
dspbridge package) : shm_size=0x500000

About kernel cmd : kernel cmd : console=tty0 console=ttyO2,115200n8
root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait consoleblank=0
mpurate=800 buddy=none camera=lbcm3m1 vram=16M omapfb.mode=dvi:hd720
omapfb.vram=0:8M,1:4M,2:4M omapdss.def_disp=dvi

-----------------------------------------------------------------------------------------------------------
U : "I'm not seeing this with the fakesink decode"
ME : Well I repeat those tests with a fakesink and got this :
root@maia:~# gst-launch -v filesrc
location=/home/mntfat/davincieffect_480p30.mp4 ! qtdemux ! dspvdec !
queue ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:sink: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
level=(string)3, profile=(string)constrained-baseline,
codec_data=(buffer)0142c01effe100196742c01e9a7201687b6022000003000200000300781e2c5c9001000468cb8cb2,
width=(int)720, height=(int)480, framerate=(fraction)30/1,
pixel-aspect-ratio=(fraction)1/1

(gst-launch-0.10:81): GStreamer-CRITICAL **: gst_mini_object_unref:
assertion `GST_IS_MINI_OBJECT (mini_object)' failed
/GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:sink: caps =
video/x-h264, stream-format=(string)avc, alignment=(string)au,
level=(string)3, profile=(string)constrained-baseline,
codec_data=(buffer)0142c01effe100196742c01e9a7201687b6022000003000200000300781e2c5c9001000468cb8cb2,
width=(int)720, height=(int)480, framerate=(fraction)30/1,
pixel-aspect-ratio=(fraction)1/1
/GstPipeline:pipeline0/GstDspVDec:dspvdec0.GstPad:src: caps =
video/x-raw-yuv, format=(fourcc)UYVY, width=(int)720, height=(int)480,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1
gstdsp_map_buffer: buffer not aligned: 0xb3a93008(8)-0xb3b3bc08(8):
from device
gstdsp_map_buffer: buffer not aligned: 0xb3a93008(8)-0xb3b3bc08(8):
from device
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:sink: caps =
video/x-raw-yuv, format=(fourcc)UYVY, width=(int)720, height=(int)480,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstQueue:queue0.GstPad:src: caps =
video/x-raw-yuv, format=(fourcc)UYVY, width=(int)720, height=(int)480,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstFakeSink:fakesink0.GstPad:sink: caps =
video/x-raw-yuv, format=(fourcc)UYVY, width=(int)720, height=(int)480,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)30/1
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "preroll
******* "
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "event
******* (fakesink0:sink) E (type: 118, taglist,
video-codec=(string)\"H.264\\ /\\ AVC\", language-code=(string)en,
bitrate=(uint)1484773;) 0x14584c8"
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "event
******* (fakesink0:sink) E (type: 118, taglist,
encoder=(string)Lavf52.68.0, container-format=(string)\"ISO\\
MP4/M4A\";) 0x1458500"
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "event
******* (fakesink0:sink) E (type: 102, GstEventNewsegment,
update=(boolean)false, rate=(double)1, applied-rate=(double)1,
format=(GstFormat)GST_FORMAT_TIME, start=(gint64)0,
stop=(gint64)100100000000, position=(gint64)0;) 0x1458490"
New clock: GstSystemClock
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain
******* (fakesink0:sink) (691200 bytes, timestamp: 0:00:00.000000000,
duration: 0:00:00.033333333, offset: -1, offset_end: -1, flags: 256
delta_unit ) 0xb5402a80"
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain
******* (fakesink0:sink) (691200 bytes, timestamp: 0:00:00.033333333,
duration: 0:00:00.033333333, offset: -1, offset_end: -1, flags: 256
delta_unit ) 0xb5402ae8"
/GstPipeline:pipeline0/GstFakeSink:fakesink0: last-message = "chain
******* (fakesink0:sink) (691200 bytes, timestamp: 0:00:00.066666666,
duration: 0:00:00.033333334, offset: -1, offset_end: -1, flags: 256
delta_unit ) 0xb5402b50"

There are no "scheduling while atomic" traces, so you may be right
about it is about omapfbsink.

I did also get those kernel logs :
[ 179.181701] proc_end_dma: InValid address parameters b4c02c00 680
[ 179.231018] memory_regain_ownership: dma info doesn't match given
params
[ 179.246459] proc_end_dma: InValid address parameters b4c02c00 680
[ 179.292816] memory_regain_ownership: dma info doesn't match given
params
[ 179.308197] proc_end_dma: InValid address parameters b4c02c00 680
[ 179.358123] memory_regain_ownership: dma info doesn't match given
params
[ 179.373687] proc_end_dma: InValid address parameters b4c02c00 680
[ 179.428131] memory_regain_ownership: dma info doesn't match given
params
[ 179.444274] proc_end_dma: InValid address parameters b4c02c00 680
[ 179.512237] procwrap_detach: deprecated dspbridge ioctl

Well I don't really understand them;

I can repeat the test without having kernel crashes.

-----------------------------------------------------------------------------------------------------------

Test on the omapfbsink with fakesrc gives no error and displays
correctly : gst-launch -v videotestsrc ! omapfbsink


-----------------------------------------------------------------------------------------------------------
With the following pipeline video starts and system blocks on the first
frames :
gst-launch -v filesrc
location=/home/mntfat/video_720x400_avc1_low_profile_aac.mp4 ! qtdemux !
queue ! dspvdec ! queue max-size-buffers=3 max-size-bytes=0
max-size-time=0 ! omapfbsink


But I get at the end theses logs :
[ 42.131927] BUG: scheduling while atomic: dspvdec0:src/85/0x0000008d
[ 42.148376] Modules linked in: tidspbridge(C) mailbox_mach mailbox
[ 42.170623] [<c001369c>] (unwind_backtrace+0x0/0xe0) from
[<c05b99e4>] (__schedule_bug+0x48/0x5c)
[ 42.189605] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from
[<c05c2d1c>] (__schedule+0x60/0x798)
[ 42.207092] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c007d67c>]
(futex_wait_queue_me+0xf8/0x114)
[ 42.225158] [<c007d67c>] (futex_wait_queue_me+0xf8/0x114) from
[<c007d7cc>] (futex_wait+0xd4/0x210)
[ 42.243255] [<c007d7cc>] (futex_wait+0xd4/0x210) from [<c007f67c>]
(do_futex+0xc0/0xab4)
[ 42.260314] [<c007f67c>] (do_futex+0xc0/0xab4) from [<c0080194>]
(sys_futex+0x124/0x168)
[ 42.277374] [<c0080194>] (sys_futex+0x124/0x168) from [<c000d4c0>]
(ret_fast_syscall+0x0/0x30)
[ 42.296630] BUG: scheduling while atomic: queue0:src/82/0x0000011b
[ 42.311614] Modules linked in: tidspbridge(C) mailbox_mach mailbox
[ 42.326568] [<c001369c>] (unwind_backtrace+0x0/0xe0) from
[<c05b99e4>] (__schedule_bug+0x48/0x5c)
[ 42.344360] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from
[<c05c2d1c>] (__schedule+0x60/0x798)
[ 42.361785] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c0010534>]
(do_work_pending+0x18/0xa0)
[ 42.379272] [<c0010534>] (do_work_pending+0x18/0xa0) from
[<c000d500>] (work_pending+0xc/0x20)
[ 42.397735] BUG: scheduling while atomic: queue0:src/82/0x0000011b
[ 42.412872] Modules linked in: tidspbridge(C) mailbox_mach mailbox
[ 42.428009] [<c001369c>] (unwind_backtrace+0x0/0xe0) from
[<c05b99e4>] (__schedule_bug+0x48/0x5c)
[ 42.445861] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from
[<c05c2d1c>] (__schedule+0x60/0x798)
[ 42.463378] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c007d67c>]
(futex_wait_queue_me+0xf8/0x114)
[ 42.481414] [<c007d67c>] (futex_wait_queue_me+0xf8/0x114) from
[<c007d7cc>] (futex_wait+0xd4/0x210)
[ 42.499511] [<c007d7cc>] (futex_wait+0xd4/0x210) from [<c007f67c>]
(do_futex+0xc0/0xab4)
[ 42.516571] [<c007f67c>] (do_futex+0xc0/0xab4) from [<c0080194>]
(sys_futex+0x124/0x168)
[ 42.533569] [<c0080194>] (sys_futex+0x124/0x168) from [<c000d4c0>]
(ret_fast_syscall+0x0/0x30)
[ 42.551300] BUG: scheduling while atomic: dspvdec0:src/85/0x0000008d
[ 42.566619] Modules linked in: tidspbridge(C) mailbox_mach mailbox
[ 42.581909] [<c001369c>] (unwind_backtrace+0x0/0xe0) from
[<c05b99e4>] (__schedule_bug+0x48/0x5c)
[ 42.599884] [<c05b99e4>] (__schedule_bug+0x48/0x5c) from
[<c05c2d1c>] (__schedule+0x60/0x798)
[ 42.617431] [<c05c2d1c>] (__schedule+0x60/0x798) from [<c05c183c>]
(schedule_timeout+0x1dc/0x218)
[ 42.635406] [<c05c183c>] (schedule_timeout+0x1dc/0x218) from
[<c05c2a34>] (wait_for_common+0x104/0x1bc)
[ 42.653991] [<c05c2a34>] (wait_for_common+0x104/0x1bc) from
[<c0362f00>] (omap_dispc_wait_for_irq_interruptible_timeout+0x4c/0x84)
[ 42.675140] [<c0362f00>]
(omap_dispc_wait_for_irq_interruptible_timeout+0x4c/0x84) from
[<c0364158>] (dss_mgr_wait_for_vsync+0x50/0x60)
[ 42.696868] [<c0364158>] (dss_mgr_wait_for_vsync+0x50/0x60) from
[<c03773fc>] (omapfb_ioctl+0x9cc/0xed0)
[ 42.715820] [<c03773fc>] (omapfb_ioctl+0x9cc/0xed0) from
[<c0345e9c>] (do_fb_ioctl+0x56c/0x5a8)
[ 42.733947] [<c0345e9c>] (do_fb_ioctl+0x56c/0x5a8) from [<c011ffa4>]
(vfs_ioctl+0x24/0x40)
[ 42.751586] [<c011ffa4>] (vfs_ioctl+0x24/0x40) from [<c0120ab4>]
(do_vfs_ioctl+0x560/0x5a8)
[ 42.769348] [<c0120ab4>] (do_vfs_ioctl+0x560/0x5a8) from
[<c0120b48>] (sys_ioctl+0x4c/0x6c)
[ 42.787078] [<c0120b48>] (sys_ioctl+0x4c/0x6c) from [<c000d4c0>]
(ret_fast_syscall+0x0/0x30)
[ 42.805236] Unable to handle kernel paging request at virtual
address b3122a00
[ 42.821838] pgd = dc460000
[ 42.833496] [b3122a00] *pgd=9c41b831, *pte=9f88c307, *ppte=9f88ca37
[ 42.849182] Internal error: Oops: 81f [#1] SMP ARM
[ 42.862854] Modules linked in: tidspbridge(C) mailbox_mach mailbox
[ 42.878082] CPU: 0 Tainted: G WC (3.6.0+ #1)
[ 42.892303] PC is at 0xb6b8ac50
[ 42.903991] LR is at 0xb66fe1e8
[ 42.915557] pc : [<b6b8ac50>] lr : [<b66fe1e8>] psr: 20000010
[ 42.915557] sp : b3a3aca8 ip : b2f7c0e0 fp : 10801080
[ 42.944061] r10: 10801080 r9 : 10801080 r8 : 10801080
[ 42.957641] r7 : 10801080 r6 : 10801080 r5 : 10801080 r4 :
10801080
[ 42.972473] r3 : 10801080 r2 : 0008c9c0 r1 : b2f7c0a0 r0 :
b3122a00
[ 42.987182] Flags: nzCv IRQs on FIQs on Mode USER_32 ISA ARM
Segment user
[ 43.002624] Control: 10c5387d Table: 9c460019 DAC: 00000015
[ 43.016448] Process dspvdec0:src (pid: 85, stack limit = 0xdc46e2f8)
[ 43.031097] ---[ end trace 85176fb01ea5ff4a ]---
[ 43.043792] note: dspvdec0:src[85] exited with preempt_count 141

So your right that is about omapdss, even if I don't understand why
this is the dspvdec0 that exits.


Felipe Contreras

unread,
Oct 25, 2012, 1:05:22 PM10/25/12
to Omar Ramirez Luna, Selso Liberado, gst...@googlegroups.com, linux...@vger.kernel.org, Omar Ramirez Luna
On Thu, Oct 25, 2012 at 12:49 AM, Omar Ramirez Luna
<omar.r...@copitl.com> wrote:

> On Wed, Oct 24, 2012 at 10:34 AM, Felipe Contreras
> <felipe.c...@gmail.com> wrote:

>> Selso, hopefully you don't mind, but I'll forward this to the
>> linux-omap mailing list, as this seems to be an interesting kernel
>> problem in tidspbridge.
>>
>> Omar, any ideas?
>
> I don't see tidspbridge trace paths (but I don't discard something
> wrong either ;)), however I do see a framebuffer, dss, dispc trace,
> might be a good point to start checking:

Oops, you are right.

>>> CONFIG_TIDSPBRIDGE_CACHE_LINE_CHECK=y
>
> I wasn't aware that now gst-dsp supported this, might be time to update mine.

Yes, it's supported now. Took me a lot of changes to manage to do it,
but it's there.

> Anyway, right now I have lots of debugging enabled and specifically
> the one that spits "scheduling while atomic" with kernel 3.7-rc2, and
> I'm not seeing this with the fakesink decode, and the encoder to a
> file, I don't have framebuffer nor display though.

It's probably a framebuffer problem =/

--
Felipe Contreras

Felipe Contreras

unread,
Nov 5, 2012, 5:37:30 PM11/5/12
to Selso Liberado, gst...@googlegroups.com
Hi,

On Wed, Oct 31, 2012 at 6:48 PM, Selso Liberado
<selso.l...@gmail.com> wrote:
> I got a gst-dsp working with 2.6.32 kernel (from always innovating demo). I
> still did not see where is the problem with the framebuffer. But as itself
> work great with a fakesrc. I feel like this is about the asyncqueue
> implémentation or glib implementation call in the asyncqueue that case the
> troubles.

I don't think so... asyncqueue is very very simple, and even if it
wasn't nothing from user-space should cause such issues in
kernel-space.

I'm thinking the framebuffer got a regression at some point. The way
the tidspbridge exercises the omap framebuffer is slightly different,
maybe that's why nobody has seen it.

What I would do is try with different kernels and see at which point
the bug was introduced.

Cheers.

--
Felipe Contreras

Felipe Contreras

unread,
Nov 9, 2012, 4:57:06 PM11/9/12
to Selso Liberado, gst...@googlegroups.com
Hi,

On Fri, Nov 9, 2012 at 8:02 PM, Selso Liberado <selso.l...@gmail.com> wrote:

> so I did retry the test on a "beagboard.org" 3.0.29 kernel. The video
> playback has still some corruption (like the video capture I posted before)
> but the system is stable.
> I wonder what dspbridge has to do with omapfrabuffer, can it also be the
> omapdss changes than corrupt the system.

It's possible. I think the difference is that tidspbridge writes
directly into the framebuffer memory, maybe some check is missing that
makes a further change in omapdss corrupt memory.

So 2.6.32 works fine, and 3.0.39 has some visual issues? If that is so
maybe I bisect the problem.

Cheers.

--
Felipe Contreras

Selso LIBERADO

unread,
Jan 15, 2013, 8:31:27 AM1/15/13
to Tuomas Kulve, gst...@googlegroups.com, Omar Ramirez Luna, Felipe Contreras, linux...@vger.kernel.org, Omar Ramirez Luna, selso.l...@cioinfoindus.com
As Felipe said, we should try older kernel to see from which one the error occured. From a diff on the dspbridge part we would see better what could be the pb.

ozka...@gmail.com

unread,
Nov 8, 2013, 11:21:54 AM11/8/13
to gst...@googlegroups.com, Tuomas Kulve, Omar Ramirez Luna, Felipe Contreras, linux...@vger.kernel.org, Omar Ramirez Luna, selso.l...@cioinfoindus.com
RE: memory_regain_ownership: dma info doesn't match given params

I have the same error given in proc.c during video encoding process in BB-xM. I have searched the discussions done in this topic but couldn't see information about root-cause or candidate solution for this error. Any feedback? Thanks in advance.

The work environment:
   BB-xM
   Kernel: 3.7.10-x13
   Ubuntu 12.10
   GST-DSP (GStreamer0.10)
   Encoder: dspmp4venc

Regards,
Ozkan.

Reply all
Reply to author
Forward
0 new messages