[Libva] Crashes in gpe pipeline with vpp sharpening
Gwenole Beauchesne
gb.devel at gmail.com
Fri Nov 28 01:21:52 PST 2014
Hi,
2014-11-28 8:55 GMT+01:00 Antti Seppälä <a.seppala at gmail.com>:
> Hello.
>
> I'm experiencing frequent crashes in libva-intel-driver when using vpp
> sharpening filter.
>
> I'm deinterlacing a surface with vpp and then trying to run vpp
> sharpening filter on to that surface. The sharpening process works for
> a while (approx 4-6 minutes ~ 13000 surfaces) but then an assert or
> segmentation fault occurs in libva-intel-driver.
>
> Here's my setup:
> libva-1.4.1
> libva-intel-driver-1.4.2.pre1 (from git)
> Intel D54250WYK NUC kit (Haswell i5)
Please use the driver version for git master, not from the 1.4 branch.
There was a known memory leak in the VEBOX code otherwise.
>
>
> Here is gdb backtrace of the assert:
>
> i965_gpe_utils.c:626: gen7_gpe_media_rw_surface_setup: Assertion
> `bo->virtual' failed.
>
> Program received signal SIGABRT, Aborted.
> [Switching to Thread 0x7fffc6ad1700 (LWP 15044)]
> 0x00007ffff62ef297 in raise () from /lib64/libc.so.6
> (gdb) bt
> #0 0x00007ffff62ef297 in raise () from /lib64/libc.so.6
> #1 0x00007ffff62f05b8 in abort () from /lib64/libc.so.6
> #2 0x00007ffff62e83c6 in __assert_fail_base () from /lib64/libc.so.6
> #3 0x00007ffff62e8472 in __assert_fail () from /lib64/libc.so.6
> #4 0x00007fffdd99782e in gen7_gpe_media_rw_surface_setup
> (ctx=ctx at entry=0x9c2fd0, gpe_context=gpe_context at entry=0x7fffbc2677e8,
> obj_surface=obj_surface at entry=0x9c96c8,
> binding_table_offset=binding_table_offset at entry=1088,
> surface_state_offset=surface_state_offset at entry=0) at i965_gpe_utils.c:626
> #5 0x00007fffdd97d67a in gen75_gpe_process_surfaces_setup
> (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at gen75_vpp_gpe.c:136
> #6 gen75_gpe_process_prepare (vpp_gpe_ctx=0x7fffbc2677e0,
> ctx=0x9c2fd0) at gen75_vpp_gpe.c:323
> #7 gen75_gpe_process (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at
> gen75_vpp_gpe.c:352
> #8 vpp_gpe_process (ctx=ctx at entry=0x9c2fd0,
> vpp_gpe_ctx=vpp_gpe_ctx at entry=0x7fffbc2677e0) at gen75_vpp_gpe.c:613
> #9 0x00007fffdd97e37f in vpp_gpe_process_sharpening
> (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at gen75_vpp_gpe.c:766
> #10 vpp_gpe_process_picture (ctx=ctx at entry=0x9c2fd0,
> vpp_gpe_ctx=0x7fffbc2677e0) at gen75_vpp_gpe.c:833
> #11 0x00007fffdd97c02a in gen75_vpp_gpe (proc_ctx=0x7fffbc256d80,
> ctx=0x9c2fd0) at gen75_picture_process.c:105
> #12 gen75_proc_picture (ctx=0x9c2fd0, profile=VAProfileNone,
> codec_state=0x9c6a18, hw_context=0x7fffbc256d80) at
> gen75_picture_process.c:201
> #13 0x00007ffff3d5adef in vaEndPicture () from /usr/lib64/libva.so.1
> (gdb) bt full
> #0 0x00007ffff62ef297 in raise () from /lib64/libc.so.6
> No symbol table info available.
> #1 0x00007ffff62f05b8 in abort () from /lib64/libc.so.6
> No symbol table info available.
> #2 0x00007ffff62e83c6 in __assert_fail_base () from /lib64/libc.so.6
> No symbol table info available.
> #3 0x00007ffff62e8472 in __assert_fail () from /lib64/libc.so.6
> No symbol table info available.
> #4 0x00007fffdd99782e in gen7_gpe_media_rw_surface_setup
> (ctx=ctx at entry=0x9c2fd0, gpe_context=gpe_context at entry=0x7fffbc2677e8,
> obj_surface=obj_surface at entry=0x9c96c8,
> binding_table_offset=binding_table_offset at entry=1088,
> surface_state_offset=surface_state_offset at entry=0) at i965_gpe_utils.c:626
> ss = <optimized out>
> bo = 0x7fffbd9e2500
> __PRETTY_FUNCTION__ = "gen7_gpe_media_rw_surface_setup"
> #5 0x00007fffdd97d67a in gen75_gpe_process_surfaces_setup
> (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at gen75_vpp_gpe.c:136
> obj_surface = 0x9c96c8
> i = 0
> input_surface_sum = 4 '\004'
> #6 gen75_gpe_process_prepare (vpp_gpe_ctx=0x7fffbc2677e0,
> ctx=0x9c2fd0) at gen75_vpp_gpe.c:323
> No locals.
> #7 gen75_gpe_process (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at
> gen75_vpp_gpe.c:352
> va_status = <optimized out>
> #8 vpp_gpe_process (ctx=ctx at entry=0x9c2fd0,
> vpp_gpe_ctx=vpp_gpe_ctx at entry=0x7fffbc2677e0) at gen75_vpp_gpe.c:613
> No locals.
> #9 0x00007fffdd97e37f in vpp_gpe_process_sharpening
> (vpp_gpe_ctx=0x7fffbc2677e0, ctx=0x9c2fd0) at gen75_vpp_gpe.c:766
> filter = <optimized out>
> thr_param_size = 24
> i = <optimized out>
> va_status = <optimized out>
> filter_ids = <optimized out>
> pipe = <optimized out>
> obj_buf = <optimized out>
> origin_in_obj_surface = <optimized out>
> origin_out_obj_surface = 0x7fffbc255c50
> sharpening_intensity = <optimized out>
> thr_param = {base = {pic_width = 720, pic_height = 576, v_pos
> = <optimized out>, h_pos = <optimized out>}, l_amount = <optimized
> out>,
> d_amount = <optimized out>}
> pos = <optimized out>
> #10 vpp_gpe_process_picture (ctx=ctx at entry=0x9c2fd0,
> vpp_gpe_ctx=0x7fffbc2677e0) at gen75_vpp_gpe.c:833
> va_status = 0
> pipe = <optimized out>
> filter = <optimized out>
> i = <optimized out>
> obj_surface = <optimized out>
> __PRETTY_FUNCTION__ = "vpp_gpe_process_picture"
> #11 0x00007fffdd97c02a in gen75_vpp_gpe (proc_ctx=0x7fffbc256d80,
> ctx=0x9c2fd0) at gen75_picture_process.c:105
> va_status = 0
> #12 gen75_proc_picture (ctx=0x9c2fd0, profile=VAProfileNone,
> codec_state=0x9c6a18, hw_context=0x7fffbc256d80) at
> gen75_picture_process.c:201
> obj_buf = <optimized out>
> filter = <optimized out>
> proc_st = 0x9c6a18
> proc_ctx = 0x7fffbc256d80
> pipeline_param = 0x7fffbd9e1b10
> obj_dst_surf = <optimized out>
> obj_src_surf = <optimized out>
> __PRETTY_FUNCTION__ = "gen75_proc_picture"
> filter_id = <optimized out>
> #13 0x00007ffff3d5adef in vaEndPicture () from /usr/lib64/libva.so.1
> No symbol table info available.
>
>
>
> Here is gdb backtrace of the segfault:
>
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7fffc6ad1700 (LWP 14872)]
> gen75_gpe_process_parameters_fill (ctx=<optimized out>,
> vpp_gpe_ctx=0x7fffb0266ba0) at gen75_vpp_gpe.c:238
> 238 *command_ptr++ = (CMD_MEDIA_OBJECT | (size/sizeof(int) + 6 - 2));
> (gdb) bt
> #0 gen75_gpe_process_parameters_fill (ctx=<optimized out>,
> vpp_gpe_ctx=0x7fffb0266ba0) at gen75_vpp_gpe.c:238
> #1 gen75_gpe_process_pipeline_setup (vpp_gpe_ctx=0x7fffb0266ba0,
> ctx=0x30) at gen75_vpp_gpe.c:268
> #2 gen75_gpe_process_prepare (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x30)
> at gen75_vpp_gpe.c:328
> #3 gen75_gpe_process (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x30) at
> gen75_vpp_gpe.c:352
> #4 vpp_gpe_process (ctx=ctx at entry=0x9c2ff0,
> vpp_gpe_ctx=vpp_gpe_ctx at entry=0x7fffb0266ba0) at gen75_vpp_gpe.c:613
> #5 0x00007fffdd97e37f in vpp_gpe_process_sharpening
> (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x9c2ff0) at gen75_vpp_gpe.c:766
> #6 vpp_gpe_process_picture (ctx=ctx at entry=0x9c2ff0,
> vpp_gpe_ctx=0x7fffb0266ba0) at gen75_vpp_gpe.c:833
> #7 0x00007fffdd97c02a in gen75_vpp_gpe (proc_ctx=0x7fffb0256c70,
> ctx=0x9c2ff0) at gen75_picture_process.c:105
> #8 gen75_proc_picture (ctx=0x9c2ff0, profile=VAProfileNone,
> codec_state=0x9c6a28, hw_context=0x7fffb0256c70) at
> gen75_picture_process.c:201
> #9 0x00007ffff3d5adef in vaEndPicture () from /usr/lib64/libva.so.1
> (gdb) bt full
> #0 gen75_gpe_process_parameters_fill (ctx=<optimized out>,
> vpp_gpe_ctx=0x7fffb0266ba0) at gen75_vpp_gpe.c:238
> command_ptr = 0x4
> i = 0
> size = 24
> position = <optimized out>
> #1 gen75_gpe_process_pipeline_setup (vpp_gpe_ctx=0x7fffb0266ba0,
> ctx=0x30) at gen75_vpp_gpe.c:268
> No locals.
> #2 gen75_gpe_process_prepare (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x30)
> at gen75_vpp_gpe.c:328
> No locals.
> #3 gen75_gpe_process (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x30) at
> gen75_vpp_gpe.c:352
> va_status = <optimized out>
> #4 vpp_gpe_process (ctx=ctx at entry=0x9c2ff0,
> vpp_gpe_ctx=vpp_gpe_ctx at entry=0x7fffb0266ba0) at gen75_vpp_gpe.c:613
> No locals.
> #5 0x00007fffdd97e37f in vpp_gpe_process_sharpening
> (vpp_gpe_ctx=0x7fffb0266ba0, ctx=0x9c2ff0) at gen75_vpp_gpe.c:766
> filter = <optimized out>
> thr_param_size = 24
> i = <optimized out>
> va_status = <optimized out>
> filter_ids = <optimized out>
> pipe = <optimized out>
> obj_buf = <optimized out>
> origin_in_obj_surface = <optimized out>
> origin_out_obj_surface = 0x9c9390
> sharpening_intensity = <optimized out>
> thr_param = {base = {pic_width = 720, pic_height = 576, v_pos
> = <optimized out>, h_pos = <optimized out>}, l_amount = <optimized
> out>,
> d_amount = <optimized out>}
> pos = <optimized out>
> #6 vpp_gpe_process_picture (ctx=ctx at entry=0x9c2ff0,
> vpp_gpe_ctx=0x7fffb0266ba0) at gen75_vpp_gpe.c:833
> va_status = 0
> pipe = <optimized out>
> filter = <optimized out>
> i = <optimized out>
> obj_surface = <optimized out>
> __PRETTY_FUNCTION__ = "vpp_gpe_process_picture"
> #7 0x00007fffdd97c02a in gen75_vpp_gpe (proc_ctx=0x7fffb0256c70,
> ctx=0x9c2ff0) at gen75_picture_process.c:105
> va_status = 0
> #8 gen75_proc_picture (ctx=0x9c2ff0, profile=VAProfileNone,
> codec_state=0x9c6a28, hw_context=0x7fffb0256c70) at
> gen75_picture_process.c:201
> obj_buf = <optimized out>
> filter = <optimized out>
> proc_st = 0x9c6a28
> proc_ctx = 0x7fffb0256c70
> pipeline_param = 0x7fffb19de600
> obj_dst_surf = <optimized out>
> obj_src_surf = <optimized out>
> __PRETTY_FUNCTION__ = "gen75_proc_picture"
> filter_id = <optimized out>
> #9 0x00007ffff3d5adef in vaEndPicture () from /usr/lib64/libva.so.1
> No symbol table info available.
>
>
> I don't have any idea how to proceed next. Any help would be appreciated.
>
> Br,
> --
> Antti Seppälä
> _______________________________________________
> Libva mailing list
> Libva at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libva
--
Gwenole Beauchesne
Intel Corporation SAS / 2 rue de Paris, 92196 Meudon Cedex, France
Registration Number (RCS): Nanterre B 302 456 199
More information about the Libva
mailing list