Bug#728928: libavcodec53: libavcodec for i586 is miscompiled - it crashes on K6-3+ processor

Mikulas Patocka mikulas at artax.karlin.mff.cuni.cz
Wed Nov 6 22:43:03 UTC 2013


Package: libavcodec53
Version: 6:0.8.6-1
Severity: normal

Dear Maintainer,
*** Please consider answering these questions, where appropriate ***

   * What led up to the situation?

Using mplayer or vlc from Debian Wheezy package

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

I played flv file downloaded from youtube with mplayer or vlc on a computer
with K6-3+ processor.

   * What was the outcome of this action?

both mplayer and vlc crash with illegal instruction signal. The instruction
that causes the crash is
=> 0xb34563b0:  pminsw %mm5,%mm6
The instruction is contained in the file /usr/lib/i386-linux-
gnu/i686/cmov/libavcodec.so.53.35.0


   * What outcome did you expect instead?

The file should be playable.


There are two versions of libavcodec.so.53.35.0 shipped in Debian - one in the
directory /usr/lib/i386-linux-gnu/i686/cmov/ (that is for i686 processors) and
the other in /usr/lib/i386-linux-gnu/ (that is for i586 and lower processors).

The version for i586 is miscompiled - it contains the instruction pminsw.

Note that the instruction pminsw is only present in i686-class processors - its
support starts with Pentium 3 (with SSE instruction set) and Athlon (with
MMXEXT instruction set) processors.
This instruction shouldn't be used for i586-class processors because no
i586-class processor supports it.

When I compile mplayer and ffmpeg from upstream on my own, it plays the file
correctly. Debian incorrectly compiled the package.



-- System Information:
Debian Release: 7.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: i386 (i586)

Kernel: Linux 3.11.7 (PREEMPT)
Locale: LANG=cs_CZ.UTF-8, LC_CTYPE=cs_CZ.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libavcodec53 depends on:
ii  libavutil51            6:0.8.6-1
ii  libc6                  2.13-38
ii  libdirac-encoder0      1.0.2-6
ii  libgsm1                1.0.13-4
ii  libmp3lame0            3.99.5+repack1-3
ii  libopenjpeg2           1.3+dfsg-4.6
ii  libschroedinger-1.0-0  1.0.11-2
ii  libspeex1              1.2~rc1-7
ii  libtheora0             1.1.1+dfsg.1-3.1
ii  libva1                 1.0.15-4
ii  libvorbis0a            1.3.2-1.3
ii  libvorbisenc2          1.3.2-1.3
ii  libvpx1                1.1.0-1
ii  libx264-123            2:0.123.2189+git35cf912-1
ii  libxvidcore4           2:1.3.2-9
ii  multiarch-support      2.13-38
ii  zlib1g                 1:1.2.7.dfsg-13

libavcodec53 recommends no packages.

libavcodec53 suggests no packages.

-- no debconf information



More information about the pkg-multimedia-maintainers mailing list