** Description changed: + SRU Justification: + + [Impact] + + * A segfault in libx264-123 has caused major regressions in vlc, kazam, + avidemux, and avconv among others. Nearly any program that encodes video + in H264 is probably affected. + + [Test Case] + + * As this impacts many packages, there are a number of possible test + cases. A simple one is to use kazam, the screen recording app: + + 1) Install the kazam package. + 2) Run kazam + 3) Make sure "file > preferences > screencast > record with" is set to H264/MP4 + 4) Attempt to record a screencast. + + With 2:0.123.2189+git35cf912-1ubuntu1 from saucy install, you will + experience a segfault. With the version in saucy-proposed, a screencast + will be correctly recorded and encoded. + + [Regression Potential] + + * There is little chance of regression. In order to make the most + minimal change possible, the package is just simply built with -fno- + aggressive-loop-optimizations rather than attempting to backport any + code changes from upstream. The most likely regression would be a typo + causing a FTBFS (though I have built and tested the package on saucy). + + [Other Info] + + This had not been rebuilt with gcc 4.8 until one day before release when + a rebuilt was triggered to fix the arm64 build. + + http://gcc.gnu.org/gcc-4.8/changes.html + + "GCC now uses a more aggressive analysis to derive an upper bound for + the number of iterations of loops using constraints imposed by language + standards. This may cause non-conforming programs to no longer work as + expected, such as SPEC CPU 2006 464.h264ref and 416.gamess. A new + option, -fno-aggressive-loop-optimizations, was added to disable this + aggressive analysis. In some loops that have known constant number of + iterations, but undefined behavior is known to occur in the loop before + reaching or during the last iteration, GCC will warn about the undefined + behavior in the loop instead of deriving lower upper bound of the number + of iterations for the loop. The warning can be disabled with -Wno- + aggressive-loop-optimizations." + + The fix has already been uploaded to trusty. + + + ----------------------- + Original bug: + Vlc crashes when encoding h264: Thread 9 (Thread 0x7fffd9712700 (LWP 3034)): #0 __memcmp_sse2 () at ../sysdeps/x86_64/multiarch/../memcmp.S:74 #1 0x00007fffc9ec9d9e in x264_cqm_init () from /usr/lib/x86_64-linux-gnu/libx264.so.123 #2 0x00007fffc9f34374 in x264_encoder_open_123 () from /usr/lib/x86_64-linux-gnu/libx264.so.123 #3 0x00007fffca1fef34 in Open (p_this=0x7fffd0000e08) at x264.c:1254 - #4 0x00007ffff795ed00 in vlc_module_load (p_this=p_this@entry=0x7fffd0000e08, - psz_capability=psz_capability@entry=0x7fffe8ceaa31 "encoder", psz_name=<optimized out>, b_strict=b_strict@entry=true, - probe=probe@entry=0x7ffff795e5d0 <generic_start>) at modules/modules.c:347 - #5 0x00007ffff795f1a4 in module_need (obj=obj@entry=0x7fffd0000e08, cap=cap@entry=0x7fffe8ceaa31 "encoder", name=<optimized out>, - strict=strict@entry=true) at modules/modules.c:437 + #4 0x00007ffff795ed00 in vlc_module_load (p_this=p_this@entry=0x7fffd0000e08, + psz_capability=psz_capability@entry=0x7fffe8ceaa31 "encoder", psz_name=<optimized out>, b_strict=b_strict@entry=true, + probe=probe@entry=0x7ffff795e5d0 <generic_start>) at modules/modules.c:347 + #5 0x00007ffff795f1a4 in module_need (obj=obj@entry=0x7fffd0000e08, cap=cap@entry=0x7fffe8ceaa31 "encoder", name=<optimized out>, + strict=strict@entry=true) at modules/modules.c:437 #6 0x00007fffe8ce8a34 in transcode_video_new (p_stream=p_stream@entry=0x7fffe00059d8, id=id@entry=0x7fffd00008e0) at video.c:241 - #7 0x00007fffe8ce9c28 in transcode_video_add (p_stream=p_stream@entry=0x7fffe00059d8, p_fmt=p_fmt@entry=0x7fffe0526990, - id=id@entry=0x7fffd00008e0) at video.c:832 + #7 0x00007fffe8ce9c28 in transcode_video_add (p_stream=p_stream@entry=0x7fffe00059d8, p_fmt=p_fmt@entry=0x7fffe0526990, + id=id@entry=0x7fffd00008e0) at video.c:832 #8 0x00007fffe8ce54a8 in Add (p_stream=0x7fffe00059d8, p_fmt=0x7fffe0526990) at transcode.c:553 #9 0x00007ffff797f64f in sout_InputNew (p_sout=0x7fffe000a6d8, p_fmt=p_fmt@entry=0x7fffe0526990) - at stream_output/stream_output.c:184 + at stream_output/stream_output.c:184 #10 0x00007ffff791b6e6 in DecoderProcessSout (p_block=0x0, p_dec=0x7fffe0523ea8) at input/decoder.c:1812 #11 DecoderProcess (p_dec=p_dec@entry=0x7fffe0523ea8, p_block=p_block@entry=0x7fffe052e9d0) at input/decoder.c:2040 #12 0x00007ffff791bde4 in DecoderThread (p_data=0x7fffe0523ea8) at input/decoder.c:938 #13 0x00007ffff76c8f6e in start_thread (arg=0x7fffd9712700) at pthread_create.c:311 #14 0x00007ffff71ef9cd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 - http://forum.doom9.org/showthread.php?p=1623567: Configure x264 with "--extra-cflags=-fno-aggressive-loop-optimizations" solves this problem. Also seems that problem solved in trunk - http://git.videolan.org/?p=x264.git;a=commit;h=89aecb440e2939be7fb72d8362eb12504711b94f
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1241772 Title: Miscompilation with gcc 4.8 (segfault in x264_cqm_init) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/x264/+bug/1241772/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs