Bug 965368 - segfault in OsLookupColor whenever I try to launch Starcraft or Starcraft 2 (nvidia glx module problem)
segfault in OsLookupColor whenever I try to launch Starcraft or Starcraft 2 (...
Product: Fedora
Classification: Fedora
Component: wine (Show other bugs)
x86_64 Linux
unspecified Severity medium
: ---
: ---
Assigned To: Andreas Bierfert
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2013-05-20 23:36 EDT by Joseph Shraibman
Modified: 2013-05-29 00:10 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-05-29 00:10:50 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Xorg log (20.49 KB, text/plain)
2013-05-20 23:36 EDT, Joseph Shraibman
no flags Details

  None (edit)
Description Joseph Shraibman 2013-05-20 23:36:43 EDT
Created attachment 750827 [details]
Xorg log

Description of problem:
Whenever I try to play Starcraft 2 the lanucher starts up, but when I hit the play button X crashes.  This appears in the X log:

[   186.406] (EE) 
[   186.406] (EE) Backtrace:
[   186.409] (EE) 0: /usr/bin/X (OsLookupColor+0x139) [0x472509]
[   186.409] (EE) 1: /lib64/libpthread.so.0 (__restore_rt+0x0) [0x32cfa0efff]
[   186.409] (EE) 
[   186.409] (EE) Segmentation fault at address 0x0
[   186.409] 
Fatal server error:
[   186.409] Caught signal 11 (Segmentation fault). Server aborting

KDE used to crash on me all the time with the same backtrace until a kde package upgrade fixed the problem.  While it is clearly a bug in X in that it allows itself to be killed by a bad call to OsLookupColor something is calling OsLookupColor with bad arguments (it takes pointers of addresses to set to RGB values and the pointers must be bad).

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Launch Starcraft 2
2. Hit Play button

Actual results:
X server crashes

Expected results:
X server doesn't crash

Additional info:
If you search for OsLookupColor you find a few bugs similar to this one.
Comment 1 Michael Cronenworth 2013-05-21 00:35:31 EDT
Starcraft 2 is running fine for me.

This is probably related to a graphics driver or bad Wine prefix.

Can you list your video card and driver?

Can you try a clean wine prefix? (mv .wine .wine-save)
Comment 2 Joseph Shraibman 2013-05-21 00:44:02 EDT
Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"

[jks@jks-desktop /tmp]{f18}$ rpm -qa | grep nvidia

In order to try a clean wine prefix I'll have to reinstall Starcraft 2 which will takes hours.  I'll try tomorrow with Starcaft 1 if I have time.
Comment 3 Joseph Shraibman 2013-05-21 00:44:55 EDT
My video card from lspci:

02:00.0 VGA compatible controller: NVIDIA Corporation C77 [GeForce 8200] (rev a2)
Comment 4 Michael Cronenworth 2013-05-21 01:07:02 EDT
I am running Starcraft (1 & 2) on NVIDIA cards on multuple machines without a problem. I have been running Starcraft 2 since it was released and I also have the HOTS expansion.

I can only suspect you have a driver installation or wine prefix problem. There's a slight chance your video card is so old and doesn't contain a feature set well enough for Wine to play the game.

In any case, you will have better luck creating or attaching to an upstream bug at winehq.org.
Comment 5 Joseph Shraibman 2013-05-21 22:23:58 EDT
I just installed Starcraft 1 on a fresh prefix and X still crashes when I try to launch it.

What Nvidia chips do you have it working on?

I notice that I have wine-cms.i686 installed but not the x86_64 version.  Do you think that has anything to do with my problem?
Comment 6 Joseph Shraibman 2013-05-21 22:32:21 EDT
Installing wine-cms.x86_64 did not solve the problem :(
Comment 7 Michael Cronenworth 2013-05-22 10:46:03 EDT
(In reply to Joseph Shraibman from comment #5)
> What Nvidia chips do you have it working on?

A mobile 9650 and a desktop 9800 GTX+.
Comment 8 Joseph Shraibman 2013-05-28 22:08:05 EDT
I just got a new GeForce GT 630 and both Starcrafts are still crashing.
Comment 9 Joseph Shraibman 2013-05-29 00:10:50 EDT
After blowing away my xorg.conf and regenerating and fiddling I finally got the starcrafts working.  I think the problem was this:

[    98.381] (II) LoadModule: "glx"
[    98.384] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
[    98.390] (II) Module glx: vendor="X.Org Foundation"
[    98.390] 	compiled for 1.13.3, module version = 1.0.0
[    98.390] 	ABI class: X.Org Server Extension, version 7.0
[    98.390] (**) AIGLX enabled
[    98.393] Loading extension GLX
[    98.393] (II) LoadModule: "nvidia"
[    98.393] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[    98.408] (II) Module nvidia: vendor="NVIDIA Corporation"

It was loading the wrong glx driver for some reason.  Now it looks like this:

[  3213.832] (II) LoadModule: "glx"
[  3213.832] (II) Loading /usr/lib64/nvidia/xorg/libglx.so
[  3213.838] (II) Module glx: vendor="NVIDIA Corporation"
[  3213.838] 	compiled for 4.0.2, module version = 1.0.0
[  3213.838] 	Module class: X.Org Server Extension
[  3213.838] (II) NVIDIA GLX Module  304.88  Wed Mar 27 14:46:57 PDT 2013
[  3213.841] Loading extension GLX
[  3213.841] (II) LoadModule: "nvidia"
[  3213.841] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
[  3213.842] (II) Module nvidia: vendor="NVIDIA Corporation"
[  3213.842] 	compiled for 4.0.2, module version = 1.0.0
[  3213.842] 	Module class: X.Org Video Driver
[  3213.842] (II) NVIDIA dlloader X Driver  304.88  Wed Mar 27 14:28:14 PDT 2013
[  3213.842] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[  3213.842] (++) using VT number 2

There is probably a bug in the nvidia installer which didn't generate xorg.conf properly.

Note You need to log in before you can comment on or make changes to this bug.