Bug#390560: libgl1-mesa-swx11: opengl applications die with Illegal instruction after upgrade

Ben Hutchings ben at decadent.org.uk
Fri Oct 13 21:12:33 UTC 2006


Steve Langasek wrote:
> On Thu, Oct 12, 2006 at 04:17:01AM +0100, Ben Hutchings wrote:
> > diff -u mesa-6.5.1/debian/changelog mesa-6.5.1/debian/changelog
> > --- mesa-6.5.1/debian/changelog
> > +++ mesa-6.5.1/debian/changelog
> > @@ -1,3 +1,11 @@
> > +mesa (6.5.1-0.2) unstable; urgency=low
> > +
> > +  * Non-maintainer upload
> > +  * Disable generation of SSE instructions (closes: #390560)
> > +  * Remove duplicate build configurations
> 
> How did you determine that these build configurations were duplicates?

They contained the same options.

> > diff -u mesa-6.5.1/configs/debian-debug_i386 mesa-6.5.1/configs/debian-debug_i386
> > --- mesa-6.5.1/configs/debian-debug_i386
> > +++ mesa-6.5.1/configs/debian-debug_i386
> > @@ -3,5 +3,5 @@
> >  CONFIG_NAME = debian-debug-i386
> >  
> > -DEBIAN_OPT_CFLAGS = -march=i686 -msse -mfpmath=sse -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
> > +DEBIAN_OPT_CFLAGS = -march=i686 -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
> >  
> >  ASM_SOURCES = $(X86_SOURCES) $(X86_API)
> 
> This is still targetting the wrong instruction set; the baseline CPU for the
> i386 port is i486, not i686.
>
> So your patch may work just fine for you, but it's not a fix for the root
> problem.

The name of this file is misleading.  The architecture-independent
configs yield libraries compiled for the baseline CPU that are installed
in /usr/lib; when compiling for i386 the configs ending in "_i386" yield
additional libraries that are installed in /usr/lib/i686/cmov:

$ for deb in *mesa*_6.5.1-0.2_i386.deb; do dpkg-deb --extract $deb $(basename $deb .deb); done
$ find *mesa*_6.5.1-0.2_i386 -type f \( -name '*.so.*' -o -name '*.a' \) | while read lib; do objdump -d $lib | tail +3 | grep -q cmov && echo $lib; done
libgl1-mesa-swx11_6.5.1-0.2_i386/usr/lib/i686/cmov/libOSMesa.so.6.5.060501
libgl1-mesa-swx11_6.5.1-0.2_i386/usr/lib/i686/cmov/libGL.so.1.5.060501
libgl1-mesa-swx11-dbg_6.5.1-0.2_i386/usr/lib/debug/i686/cmov/libOSMesa.so.6.5.060501
libgl1-mesa-swx11-dbg_6.5.1-0.2_i386/usr/lib/debug/i686/cmov/libGL.so.1.5.060501
libgl1-mesa-swx11-dev_6.5.1-0.2_i386/usr/lib/i686/cmov/libOSMesa.a
libgl1-mesa-swx11-dev_6.5.1-0.2_i386/usr/lib/i686/cmov/libGL.a

Ben.

-- 
Ben Hutchings -- ben at decadentplace.org.uk shortened to ben at decadent.org.uk
If you've signed my GPG key, please send a signature on and to the new uid.
Anthony's Law of Force: Don't force it, get a larger hammer.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.alioth.debian.org/pipermail/pkg-mesa-devel/attachments/20061013/7c5eb50f/attachment.pgp


More information about the Pkg-mesa-devel mailing list