Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 343055 - app-emulation/wine: apps crash with USE=fontconfig
Summary: app-emulation/wine: apps crash with USE=fontconfig
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Wine Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-10-28 12:03 UTC by Thorsten Kampe
Modified: 2014-11-27 15:02 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thorsten Kampe 2010-10-28 12:03:02 UTC
All wine applications are crashing when USE flag "fontconfig" is enabled. Wine compiles fine but when trying to start any Windows executable, the app crashes with a generic error .

Reproducible: Always

Steps to Reproduce:
1. Install Wine (> 1.1.44) with USE flag fontconfig enabled
2. try to run any Windows application


Actual Results:  
The application crashes with multiple Windows "crash reports"

Expected Results:  
The application runs normally (under Wine)

Portage 2.2_rc98 (default/linux/x86/10.0/desktop, gcc-4.4.5, glibc-2.12.1-r1, 2.6.36-gentoo i686)
=================================================================
System uname: Linux-2.6.36-gentoo-i686-Intel-R-_Core-TM-2_Duo_CPU_E6750_@_2.66GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 28 Oct 2010 04:45:03 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11
dev-lang/python:     2.6.6-r1
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.6.3
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.5
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.82
virtual/os-headers:  2.6.35 (sys-kernel/linux-headers)
Repositories: gentoo n4g n4g-experimental 389-ds
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="*"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=core2 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O3 -march=core2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs ccache distlocks fail-clean fixlafiles fixpackages news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://localhost/install/ http://gentoo.osuosl.org/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en cs de fr pl"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/n4g /usr/local/portage/layman/n4g-experimental /usr/local/portage/layman/389-ds"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X aac alsa arts bash-completion bindist cups dbus fam firefox gnome gtk hal handbook ipod ipv6 kde ldap logrotate ncurses nls nptl nptlonly nsplugin offensive opengl oss pam pcre pic png python qt3 qt4 rdesktop readline samba sasl slang slp spell sqlite sqlite3 ssl svg syslog tcpd threads tk truetype unicode vim-syntax vnc webdav wxwindows x86 xcomposite xinetd xml xscreensaver zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard vmmouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en cs de fr pl" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nouveau nv r128 radeon savage sis tdfx trident vesa via vmware voodoo" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 SpanKY gentoo-dev 2010-11-10 10:48:13 UTC
i guess you're saying that wine runs fine when you have USE=-fontconfig ?
Comment 2 Thorsten Kampe 2010-11-10 10:53:52 UTC
yes, wine runs fine with USE=-fontconfig
Comment 3 Garik Zaskoruzlov 2010-12-02 14:43:35 UTC
I have the same thing. If the USE flag fontconfig is enabled, wine cannot run any application. It appears in all the versions after 1.1.44


Portage 2.2.0_alpha6 (default/linux/x86/10.0/desktop/kde, gcc-4.4.4, glibc-2.11.2-r3, 2.6.36-gentoo-r3-sqee i686)
=================================================================
System uname: Linux-2.6.36-gentoo-r3-sqee-i686-Intel-R-_Pentium-R-_4_CPU_3.20GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 02 Dec 2010 06:45:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11-r1
dev-lang/python:     2.6.5-r3
dev-util/ccache:     2.4-r7
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.6.6
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.65-r1
sys-devel/automake:  1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
Repositories: gentoo sunrise qting-edge armagetron roslin zugaina arcon kde qutim berkano games gamerlay-stable x11 gnome rion multimedia addons
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1 skype-eula googleearth AdobeFlash-10.1"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O3 -march=native -mtune=native -mmmx -msse -msse2 -fomit-frame-pointer -mstackrealign -pipe -s"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"
CXXFLAGS="-O3 -march=native -mtune=native -mmmx -msse -msse2 -fomit-frame-pointer -mstackrealign -pipe -s"
DISTDIR="/home/distfiles"
FEATURES="assume-digests binpkg-logs buildpkg ccache distlocks fixlafiles fixpackages metadata-transfer news noinfo parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://mirror.yandex.ru/gentoo-distfiles/"
LANG="ru_RU.utf8"
LC_ALL="ru_RU.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"                                                                                     
LINGUAS="ru en"                                                                                                       
MAKEOPTS="-j3"                                                                                                        
PKGDIR="/usr/local/packages"                                                                                          
PORTAGE_CONFIGROOT="/"                                                                                                
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"                                              
PORTAGE_TMPDIR="/tmp"                                                                                                 
PORTDIR="/usr/local/portage"                                                                                          
PORTDIR_OVERLAY="/usr/local/overlays/layman/sunrise /usr/local/overlays/layman/qting-edge /usr/local/overlays/layman/armagetron /usr/local/overlays/layman/roslin /usr/local/overlays/layman/zugaina /usr/local/overlays/layman/arcon /usr/local/overlays/layman/kde /usr/local/overlays/layman/qutim /usr/local/overlays/layman/berkano /usr/local/overlays/layman/games /usr/local/overlays/layman/gamerlay /usr/local/overlays/layman/x11 /usr/local/overlays/layman/gnome /usr/local/overlays/layman/rion /usr/local/overlays/layman/multimedia /usr/local/overlays/addons"                               
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"                                                                 
USE="7zip X a52 aac acl acpi akonadi alsa animation-rtl archive artworkextra ass attica audiofile avahi babl bash-completion berkdb bfq bluetooth branding bzip2 cairo caps cdda cdio cdr cdrom cg chm cleartype cli clucene consolekit contrast cracklib css cue cups curl cvs cxx dbus designer-plugin devil dirac divx djvu dri dri2 dts dv dvd dvdr dvdread ebook enca encode eselect exif expat extensions extras faac faad fam fat fbcondecor fbsplash ffmpeg ffmpeg-mt fftw firefox fits flac fontconfig foomaticdb fortran fpx freetype ftp fts3 fuse gconf gdu geolocation gif gimp glade glib glitz gmp gnutls goocanvas gphoto2 gpm gps graphviz gs gstreamer gtksourceview gzip hal handbook hdri histman hotpixels hpn iconv icq icu idn ieee1394 imagemagick indi inotify iphone ipod jabber java6 joystick jpeg jpeg2k kde kerberos kipi kontact lame laptop lcms ldap lensfun libgda libmpeg2 libnl libnotify libsamplerate libsexy libsoup libwnck lm_sensors lzma lzo mad md5sum mdnsresponder-compat mikmod mjpeg mmap mms mmx mmxext mng modules monochrome mp3 mp4 mpeg mpfr mplayer mpx mtp mudflap multimedia musicbrainz nano-syntax ncurses network nls nntp nokia nopie nossp nouveau nptl nptlonly nsplugin nss nvidia offensive ogg okular openexr opengl openmp optimization optimized-qmake pam pango parentless-dialog-fix pcre pdf phonon plasma playlist png pnm policykit poppler postproc ppds pppd projectm pvr q32 qalculate qimageblitz qt qt3support qt4 quicktime quotas qwt randr raptor rar raw rdesktop-vrdp rdp readline redeyes redland rss samba sane sasl scanner schroedinger scim sdl semantic-desktop session slang slp smbkrb5passwd smp sndfile sox speex spell sqlite sqlite3 sse sse2 ssl startup-notification suid svg sysfs syslog taglib theora threads thumbnail tiff timezone tools track-src-odirect transparency truetype udev unicode unlock-notify upnp urandom usb utils v4l v4l2 vala vcd vdpau video virtuoso vorbis vpx vte wavpack webkit windeco wma wmf x264 x86 xattr xcb xcomposite xface xft xinerama xml xmp xorg xpm xscreensaver xv xvid xvmc youtube zip zlib" ALSA_CARDS="hda-intel usb-audio hpet" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="adc65 agfa_cl20 aox barbie canon casio_qv clicksmart310 digigr8 digita dimagev dimera3500 directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 jl2005a kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica konica_qm150 largan lg_gsm mars mustek panasonic_coolshot panasonic_dc1000 panasonic_dc1580 panasonic_l859 pccam300 pccam600 polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ptp2 ricoh ricoh_g3 samsung sierra sipix_blink sipix_blink2 sipix_web2 smal sonix sony_dscf1 sony_dscf55 soundvision spca50x sq905 stv0674 stv0680 sx330z template topfield toshiba_pdrm11 ax203 st2205 jl2005c" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" FOO2ZJS_DEVICES="hpp1005 hpp1006 oki3300" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru en" PHP_TARGETS="php5-2" RUBY_TARGETS="ruby18" SANE_BACKENDS="abaton agfafocus apple artec artec_eplus48u as6e avision bh canon canon630u canon_dr canon_pp cardscan coolscan coolscan2 coolscan3 dc210 dc240 dc25 dell1600n_net dmc epjitsu epson epson2 fujitsu genesys gt68xx hp hp3500 hp3900 hp4200 hp5400 hp5590 hpljm1005 hpsj5s hs2p ibm kodak kvs1025 leo lexmark ma1509 matsushita microtek microtek2 mustek mustek_pp mustek_usb nec net niash p5 pie pixma plustek plustek_pp qcam ricoh rts8891 s9036 sceptre sharp sm3600 sm3840 snapscan sp15c st400 stv680 tamarack teco1 teco2 teco3 test u12 umax umax1220u umax_pp xerox_mfp" USERLAND="GNU" VIDEO_CARDS="fbdev vesa intel i915 nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 4 Ed Catmur 2011-07-09 14:33:39 UTC
Seeing this backtrace:


wine: Unhandled page fault on read access to 0xffffffff at address 0x7e9b5894 (thread 001a), starting debugger...
wine: Unhandled page fault on read access to 0xffffffff at address 0x0000:0x7e220894 (thread 0009), starting debugger...
WineDbg starting on pid 0008
First chance exception: page fault on read access to 0xffffffff in 32-bit code (0x7e220894).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:7e220894 ESP:0032edf8 EBP:0032ef70 EFLAGS:00210212(  R- --  I   -A- - )
 EAX:00000000 EBX:7e23cff4 ECX:0032f130 EDX:0032ef90
 ESI:7e030100 EDI:7de93fa0
Stack dump:
0x0032edf8:  00000089 00000018 b765f3a0 b765dff4
0x0032ee08:  7def9370 7df5e750 0032ee3c b7575369
0x0032ee18:  7df5e750 7def9378 00000084 0032ef90
0x0032ee28:  7df5e750 00000021 b765dff4 b765f3a0
0x0032ee38:  7def9370 0032ee70 b7575814 0032ee58
0x0032ee48:  00000108 00000003 00000014 00000003
Backtrace:
=>0 0x7e220894 FcFontSetMatchInternal+0x34(config=<is not available>, sets=0x32ef90, nsets=0x1, p=0x7de93fa0, result=0x32f130) [/usr/src/debug/media-libs/fontconfig-2.8.0-r1/fontconfig-2.8.0/src/fcmatch.c:448] in libfontconfig.so.1 (0x0032ef70)
  1 0x7e22124c IA__FcFontMatch+0x4b(config=0x7e030100, p=0x7de93fa0, result=0x32f130) [/usr/src/debug/media-libs/fontconfig-2.8.0-r1/fontconfig-2.8.0/src/fcmatch.c:551] in libfontconfig.so.1 (0x0032efa0)
  2 0x7de55d27 X11DRV_XRender_SelectFont+0xc06(physDev=0x19d2f0, hfont=0x1810) [/usr/src/debug/app-emulation/wine-1.3.23/wine-1.3.23/dlls/winex11.drv/xrender.c:937] in winex11 (0x0032f150)
  3 0x7de4d13f X11DRV_SelectFont+0xdce(physDev=0x19d2f0, hfont=0x1810, gdiFont=0x1dead0) [/usr/src/debug/app-emulation/wine-1.3.23/wine-1.3.23/dlls/winex11.drv/xfont.c:3241] in winex11 (0x0032f550)
  4 0x7ebf65cf FONT_SelectObject+0x9e(handle=0x1810, hdc=0x11c8) [/usr/src/debug/app-emulation/wine-1.3.23/wine-1.3.23/dlls/gdi32/font.c:546] in gdi32 (0x0032f5c0)
  5 0x7ec0d1cb SelectObject+0xba(hdc=0x11c8, hObj=0x1810) [/usr/src/debug/app-emulation/wine-1.3.23/wine-1.3.23/dlls/gdi32/gdiobj.c:1112] in gdi32 (0x0032f610)
Comment 5 Ed Catmur 2011-07-09 14:34:21 UTC
I assume this is a stack alignment issue with SSE,  Will try rebuilding wine with -mstackrealign.
Comment 6 Ed Catmur 2011-07-09 15:17:36 UTC
Recompiling with -mstackrealign fixes issue.  Could we add this to the ebuild?
Comment 7 SpanKY gentoo-dev 2011-07-11 02:54:55 UTC
that's merely a symptom.  if you're going to force sse flags globally, you should use -mstackrealign too.

i dont think this is relevant to the OP's report though.  unless he can say the same flag fixes things for him too.
Comment 8 Ed Catmur 2011-07-11 07:42:08 UTC
Stack realignment is unnecessary on an untainted system as gcc will keep the stack aligned itself.  It's only required when unfixable binary blobs call back into optimised code.

Should I open a new bug to request -mstackrealign?
Comment 9 SpanKY gentoo-dev 2011-07-11 15:36:02 UTC
if by "binary blobs" you're talking about the windows apps you're executing, then feel free to open a bug in the upstream winehq.org.  if that's the case of how it's crashing, then this is something upstream should handle.
Comment 10 Ed Catmur 2011-07-11 22:10:27 UTC
(In reply to comment #9)
Yeah.  Problem is wine devs are of the opinion that the Linux ABI is 4-byte alignment[1]; they're open to 16-byte alignment but only on platforms where that is explicitly required e.g. MacOS/x86[2].  IMHO it may well be OK to assume 4-byte alignment for least-common-denominator binary distros, but for Gentoo if we're encouraging users to enable SSE etc.[3] we should stand up for a 16-byte alignment ABI or at least make the necessary adjustments a little easier to action (maybe another USE flag?)

1. http://bugs.winehq.org/show_bug.cgi?id=22316
2. http://wine.1045685.n5.nabble.com/Mac-OSX-x86-stack-fixing-patch-td1724948.html
3. http://en.gentoo-wiki.com/wiki/Safe_Cflags
Comment 11 SpanKY gentoo-dev 2011-07-12 06:09:38 UTC
random wiki sites cannot be considered official Gentoo encouragement

ive followed up on the winehq site
Comment 12 Alex Xu (Hello71) 2014-11-27 14:46:38 UTC
this was worked around upstream.
Comment 13 Ed Catmur 2014-11-27 15:01:06 UTC
ref: https://bugs.winehq.org/show_bug.cgi?id=22316#c22

Anssi Hannula 2014-06-13 14:27:43 CDT
I don't think this was fixed upstream, but this workaround was applied to wine:
http://source.winehq.org/git/wine.git/commitdiff/4adfb787f4e8c36a37ce1d53a7e6df16d03ecd8a