Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 354045 - media-plugins/vdr-xineliboutput vdr-fbfe segfaults when not compiled with -O1 and when playing wmv avi...
Summary: media-plugins/vdr-xineliboutput vdr-fbfe segfaults when not compiled with -O1...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Christian Ruppert (idl0r)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-08 00:25 UTC by Jochen Buchholz
Modified: 2014-02-14 17:17 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge_info.txt,21.59 KB, text/plain)
2011-02-08 00:30 UTC, Jochen Buchholz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jochen Buchholz 2011-02-08 00:25:07 UTC
After my last systemupgrade last week, vdr-fbfe segfault's with -O2. When it is compiled with -O1 the integrated media player segfault's when I try to play wmv avi mp4. Only mpg2 like dvb recorded streams are played (before my update last week I, could play the most streams) Debugging in gdb is also impossibe, because vdr-fbfe compiled with -g segfault's also. I use normaly CFLAGS="-O2 -march=core2  -pipe -fomit-frame-pointer", but vdr-xineliboutput must compiled with CFLAGS="-O1 -pipe -ggdb" 

Reproducible: Always

Steps to Reproduce:
1. emerge --sync; emerge -NDu world ;  lafilefixer ... redev-rebuild and so on
2. restart vdr
3. gdb /usr/bin/vdr-fbfe
4. run -f

Actual Results:  
.
.
.
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=0, output_height=0, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=0, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=768, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=768, output_aspect=0.000, no_downscaling=1
post_warp: warp_get_parameters
post_warp: dispose
post_warp: detected frame format change: 0x0 -> 720x576, interlaced 0->1, aspect 0.000->1.778, yuy2->yv12
post_warp: aspect ratio matches, no warp
post_warp: factor_x = 1.000 factor_y = 1.000  output ratio = 1.778
post_warp: init_yv12: 720x576->1024x768 hWarp 1.000 vWarp 1.000

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb30fab70 (LWP 24360)]
0xb7c78f3d in ?? () from /usr/lib/xine/plugins/1.29/post/xineplug_post_swscale.so
(gdb) 


Expected Results:  
ew Thread 0xb30fab70 (LWP 26855)]
[New Thread 0xb272cb70 (LWP 26856)]
[New Thread 0xb1f2bb70 (LWP 26857)]
[26847] [vdr-fe]    Detected 4 CPUs
[26847] [vdr-fe]    Enabling multithreaded video decoding


Press Esc to exit

[New Thread 0xb172ab70 (LWP 26858)]
[26847] [input_vdr] Connecting (control) to tcp://10.1.1.128:37890 ...
[26847] [input_vdr] Server greeting: VDR-1.6.0-2 xineliboutput-1.0.5 READY
[26847] [input_vdr] Connected (control) to tcp://10.1.1.128:37890
[26847] [input_vdr] Connecting (data) to pipe:///etc/vdr/plugins/xineliboutput/pipes.1367/pipe.0
[26847] [input_vdr] Data stream connected (PIPE)
[New Thread 0xb095ab70 (LWP 26862)]
[New Thread 0xb0159b70 (LWP 26863)]
[New Thread 0xaf953b70 (LWP 26864)]
[26847] [input_vdr] WARNING: Video output driver reports it does not support unscaled overlays !
[New Thread 0xaef70b70 (LWP 26865)]
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=0, output_height=0, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=0, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=768, output_aspect=0.000, no_downscaling=0
post_warp: warp_get_parameters
post_warp: warp_set_parameters: output_width=1024, output_height=768, output_aspect=0.000, no_downscaling=1
post_warp: warp_get_parameters
post_warp: dispose
post_warp: detected frame format change: 0x0 -> 720x576, interlaced 0->1, aspect 0.000->1.778, yuy2->yv12
post_warp: aspect ratio matches, no warp
post_warp: factor_x = 1.000 factor_y = 1.000  output ratio = 1.778
post_warp: init_yv12: 720x576->1024x768 hWarp 1.000 vWarp 1.000



When I chose in the OSD media and select a wmv or avi I got:
post_warp: init_yv12: 720x576->1024x768 hWarp 1.000 vWarp 1.000
[26863] [input_vdr] PLAYFILE  (Loop: 0, Offset: 0s, File: goom:fps:25,width:720,height:576 file:/home/Movies/CEVedit2.mov)
[New Thread 0xad3cdb70 (LWP 26867)]
[New Thread 0xac9ffb70 (LWP 26868)]
[New Thread 0xac1feb70 (LWP 26869)]
[New Thread 0xab6f4b70 (LWP 26870)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xad3cdb70 (LWP 26867)]
0xb735aec0 in ?? () from /usr/lib/libavcodec.so.52
(gdb)

mplayer and vlc playing all streams fine and I am sure that mplayer uses also the libavcodec.so.52
Comment 1 Jochen Buchholz 2011-02-08 00:30:50 UTC
Created attachment 261767 [details]
emerge --info
Comment 2 Christian Ruppert (idl0r) gentoo-dev 2011-02-28 16:52:56 UTC
This has been fixed in vdr-xineliboutput-9999, please test if possible.
I'll try to fix 1.0.5 too ASAP.
Comment 3 Jochen Buchholz 2011-02-28 23:11:44 UTC
I can't emerge the cvs version  9999 anymore because the patch failed:


 * IMPORTANT: 1 config files in '/etc/portage' need updating.
 * See the CONFIGURATION FILES section of the emerge
 * man page to learn how to update config files.
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) media-plugins/vdr-xineliboutput-9999
 * Package:    media-plugins/vdr-xineliboutput-9999
 * Repository: gentoo
 * Maintainer: idl0r@gentoo.org media-tv@gentoo.org
 * USE:  X dbus elibc_glibc fbcon jpeg kernel_linux libextractor nls userland_GNU vdr x86 xine xinerama
 * Compiling against
 *      vdr-1.6.0-2 [API version 1.6.0]
>>> Unpacking source...
 * Fetching CVS module vdr-xineliboutput into /usr/portage/distfiles/cvs-src ...
 * Running  cvs -q -f -z1 -d ":pserver:anonymous:@xineliboutput.cvs.sourceforge.net:/cvsroot/xineliboutput" login
Logging in to :pserver:anonymous@xineliboutput.cvs.sourceforge.net:2401/cvsroot/xineliboutput
 * Running  cvs -q -f -z1 -d ":pserver:anonymous@xineliboutput.cvs.sourceforge.net:/cvsroot/xineliboutput" update -dP vdr-xineliboutput
 * Copying vdr-xineliboutput from /usr/portage/distfiles/cvs-src ...
 * CVS module vdr-xineliboutput is now in /var/tmp/portage/media-plugins/vdr-xineliboutput-9999/work
>>> Source unpacked in /var/tmp/portage/media-plugins/vdr-xineliboutput-9999/work
>>> Preparing source in /var/tmp/portage/media-plugins/vdr-xineliboutput-9999/work/vdr-xineliboutput ...
 * Applying vdr-xineliboutput-9999-build-system.patch ...

 * Failed Patch: vdr-xineliboutput-9999-build-system.patch !
 *  ( /usr/portage/media-plugins/vdr-xineliboutput/files/vdr-xineliboutput-9999-build-system.patch )
 * 
 * Include in your bugreport the contents of:
 * 
 *   /var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/vdr-xineliboutput-9999-build-system.patch.out

 * ERROR: media-plugins/vdr-xineliboutput-9999 failed:
 *   Failed Patch: vdr-xineliboutput-9999-build-system.patch!
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_prepare
 *   environment, line 3203:  Called epatch '/usr/portage/media-plugins/vdr-xineliboutput/files/vdr-xineliboutput-9999-build-system.patch'
 *   environment, line 1756:  Called die
 * The specific snippet of code:
 *               die "Failed Patch: ${patchname}!";
 * 
 * If you need support, post the output of 'emerge --info =media-plugins/vdr-xineliboutput-9999',
 * the complete build log and the output of 'emerge -pqv =media-plugins/vdr-xineliboutput-9999'.
 * The complete build log is located at '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/environment'.
 * S: '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/work/vdr-xineliboutput'

>>> Failed to emerge media-plugins/vdr-xineliboutput-9999, Log file:

>>>  '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/build.log'

 * Messages for package media-plugins/vdr-xineliboutput-9999:

 * Failed Patch: vdr-xineliboutput-9999-build-system.patch !
 *  ( /usr/portage/media-plugins/vdr-xineliboutput/files/vdr-xineliboutput-9999-build-system.patch )
 * 
 * Include in your bugreport the contents of:
 * 
 *   /var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/vdr-xineliboutput-9999-build-system.patch.out
 * ERROR: media-plugins/vdr-xineliboutput-9999 failed:
 *   Failed Patch: vdr-xineliboutput-9999-build-system.patch!
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_prepare
 *   environment, line 3203:  Called epatch '/usr/portage/media-plugins/vdr-xineliboutput/files/vdr-xineliboutput-9999-build-system.patch'
 *   environment, line 1756:  Called die
 * The specific snippet of code:
 *               die "Failed Patch: ${patchname}!";
 * 
 * If you need support, post the output of 'emerge --info =media-plugins/vdr-xineliboutput-9999',
 * the complete build log and the output of 'emerge -pqv =media-plugins/vdr-xineliboutput-9999'.
 * The complete build log is located at '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/temp/environment'.
 * S: '/var/tmp/portage/media-plugins/vdr-xineliboutput-9999/work/vdr-xineliboutput'

 * IMPORTANT: 14 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

Comment 4 Jochen Buchholz 2011-03-01 00:12:33 UTC
I copied your cvs ebuild to an own overlay and remove the failing patch. The compilation/installation runs fine, but the player chrashed again. Last Weekend I switched from gcc 4.4.4 to gcc 4.4.5. So I recompiled also ffmpeg before, with the same debug options like above. I started in gdb and play a Nasa quicktime:


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xad404b70 (LWP 30801)]
0xb7379100 in put_pixels16_sse2 (block=0xae46f008 "", pixels=0xae4a7008 "", line_size=512, h=16) at libavcodec/x86/dsputil_mmx.c:453
453     libavcodec/x86/dsputil_mmx.c: Datei oder Verzeichnis nicht gefunden.
        in libavcodec/x86/dsputil_mmx.c
(gdb) 
Comment 5 Christian Ruppert (idl0r) gentoo-dev 2014-02-14 17:17:03 UTC
Please test media-plugins/vdr-xineliboutput-1.1.0.