http://bugs.winehq.org/show_bug.cgi?id=22629
Summary: Far Cry: segfault upon execution Product: Wine Version: 1.1.44 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: plr.vincent@gmail.com
Far Cry segfaults upon execution, almost instantaneously.
Version: as of GOG.com
How to reproduce: - install game (recommended: "wisotool far_cry_gog", see http://wiki.winehq.org/wisotool) - cd "$WINEPREFIX/drive_c/Program Files/GOG.com/Far Cry" - wine Bin32/FarCry.exe
Result (terminal output): $ wine Bin32/FarCry.exe Segmentation fault
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #1 from Vincent Pelletier plr.vincent@gmail.com 2010-05-08 14:33:56 --- Created an attachment (id=27812) --> (http://bugs.winehq.org/attachment.cgi?id=27812) gdb output
gdb output is interesting in that it shows threads being created, but there is no debug symbol. I couldn't see anything useful out of valgrind either (though I'm not used to it when used this way, so I might have missed The Interesting Option).
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #2 from Vitaliy Margolen vitaliy@kievinfo.com 2010-05-08 17:34:16 --- What video card and drivers? Have you tried reinstalling video drivers?
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #3 from Vincent Pelletier plr.vincent@gmail.com 2010-05-08 18:06:54 --- (In reply to comment #2)
What video card and drivers? Have you tried reinstalling video drivers?
Card: Nvidia GTX280 Driver: nvidia-kernel-2.6.32-3-amd64 190.53-4+2.6.32-9
Debian sid, installed by package built with module-assistant with source package comming from sid non-free repository. There is no update as far as I can see... Do you think it's worth rebuilding and/or reinstalling that package ? (current kernel version matches too: 2.6.32-9)
Should it matter, I build wine in a sid 32bits chroot (remain from time where 32bits builds were broken in Debian amd64...) which *should* be always updated around the same time I update the 64bits part. But I guess that if there was a problem at this level, I would get failures with all d3d apps.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #4 from Vincent Pelletier plr.vincent@gmail.com 2010-05-09 01:21:29 --- BTW, just so it doesn't get marked as duplicate of 9252: that other bug is about segfaults later in game, when entering a map.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #5 from Vitaliy Margolen vitaliy@kievinfo.com 2010-05-09 14:14:17 --- Every time I've seen this sort of segfault it was not-matching/broken 32-bit liopengl (which is part of the driver). Compiling in chroot points more in that direction.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #6 from Vincent Pelletier plr.vincent@gmail.com 2010-05-10 16:50:42 --- (In reply to comment #5)
not-matching/broken 32-bit liopengl (which is part of the driver)
I searched for potentially problematic files (especially remains from installing nvidia driver from their .run, which already caused problems in the past), and deleted some of them (if anyone knows the entire list to check, I'm much interested). I ran debsums against all packages containing "*nvidia*" files (case ignored), and all match, and checked which package each file came from (in case more file remained from .run install). I compared driver version inside/outside the chroot, they are identical (whole package version string). I discovered nvidia-glx-dev wasn't installed in my chroot, so I installed it. I git "clean -fx"'ed my wine copy, and rebuilt it. I also rebooted, as I rarely do (suspend to ram) in case of some side effect of that.
Still the same result.
Also, I tried running wine from source directory, with same result.
So besides the undeniable possibility that some more files remain from my .run install, I'm quite short on ideas.
For completeness I must also say that: - from the "ia32 libs broken in debian" era, I not only kept the chroot, but also the ld.so.conf pointing at chroot's lib dirs - and I don't have any 32bits libs installed outside of the chroot (unless, again, some package left some over). - I run "make install" from wine tree, and from time to time I clean /usr/local by hand, looking for files older than my last wine update (note: I bind-mount host /usr/local onto chroot /usr/local to do so).
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #7 from Vincent Pelletier plr.vincent@gmail.com 2010-05-10 17:02:55 --- Created an attachment (id=27867) --> (http://bugs.winehq.org/attachment.cgi?id=27867) "strace -F" excerpt
Actually, I just had one more idea: the answer to my problem might not be at strace output end, so I "-o"'ed it to a file. Attached except show the life line of the process getting sigsegv, interleaved with other processes.
It might ring a bell to people knowing how wine spawns a process, to tell if it might be one cause, or if it can be excluded.
http://bugs.winehq.org/show_bug.cgi?id=22629
qaridarium@googlemail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #8 from qaridarium@googlemail.com 2010-05-12 18:50:09 --- *** This bug has been confirmed by popular vote. ***
http://bugs.winehq.org/show_bug.cgi?id=22629
qaridarium@googlemail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |qaridarium@googlemail.com
--- Comment #9 from qaridarium@googlemail.com 2010-05-12 19:55:17 --- i have the same problem on ubuntu 10.04 +catalyst 10-4 this bug isn't exist in wine 1.1.37 1.1.38 first brings this bug i test it up to 1.1.44 and 1.1.45 git tree
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #10 from Vincent Pelletier plr.vincent@gmail.com 2010-05-13 05:38:12 --- (In reply to comment #9)
this bug isn't exist in wine 1.1.37 1.1.38 first brings this bug
Could you please run a bissect search between .37 and .38 ( http://wiki.winehq.org/RegressionTesting ) ? I'm currently (and for 2 weeks) away from the machine on which I had the problem, so I cannot confirm it worked in .37, nor do the bissect search.
Also, please try to produce the same trace files as I did (especially the strace one) to check if the symptoms are really identical.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #11 from qaridarium@googlemail.com 2010-05-13 09:42:01 --- (In reply to comment #10)
(In reply to comment #9)
this bug isn't exist in wine 1.1.37 1.1.38 first brings this bug
Could you please run a bissect search between .37 and .38 ( http://wiki.winehq.org/RegressionTesting ) ? I'm currently (and for 2 weeks) away from the machine on which I had the problem, so I cannot confirm it worked in .37, nor do the bissect search.
Also, please try to produce the same trace files as I did (especially the strace one) to check if the symptoms are really identical.
ass@ass:~/wine-git$ git bisect start Already on 'master' ass@ass:~/wine-git$ git bisect good wine-1.1.37 ass@ass:~/wine-git$ git bisect bad wine-1.1.38 Bisecting: 255 revisions left to test after this (roughly 8 steps) [246f9305e9f8eb18e54018746143d95afed887be] msi: Don't fail if the service to start is already running.
i think this will take a long long long time to test..
http://bugs.winehq.org/show_bug.cgi?id=22629
Wylda wylda@volny.cz changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wylda@volny.cz
--- Comment #12 from Wylda wylda@volny.cz 2010-05-13 09:54:04 --- (In reply to comment #11)
Bisecting: 255 revisions left to test after this (roughly 8 steps)
i think this will take a long long long time to test..
Don't worry, it won't take 255 rounds, but as it states cca 8x recompile and each recompile is usually faster then previous.
Also if you have multicore CPU, for example 4, use them all, i.e. run:
make -j 8
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #13 from qaridarium@googlemail.com 2010-05-13 10:54:15 --- (In reply to comment #12)
(In reply to comment #11)
Bisecting: 255 revisions left to test after this (roughly 8 steps)
i think this will take a long long long time to test..
Don't worry, it won't take 255 rounds, but as it states cca 8x recompile and each recompile is usually faster then previous.
Also if you have multicore CPU, for example 4, use them all, i.e. run:
make -j 8
i have a quatcore opteron 8gb ram system thx i use -j 3 because i need 1 core for chat and music
i think i do something wrong because i compile it and install it and them:
"wine: configuration in '/home/ass/.wine' has been updated. Segmentation fault"
but yes i think i do it wrong
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #14 from qaridarium@googlemail.com 2010-05-13 11:54:29 --- ok now im on the right way the result is:
ass@ass:~/wine-git$ git bisect good Bisecting: 0 revisions left to test after this (roughly 0 steps) [d7069b61f4006d0949456684bc58954bcadc8fdf] wine.inf: Add a 16bit fake dll for ddeml.dll.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #15 from Wylda wylda@volny.cz 2010-05-13 11:59:09 --- (In reply to comment #14)
ok now im on the right way the result is:
ass@ass:~/wine-git$ git bisect good Bisecting: 0 revisions left to test after this (roughly 0 steps) [d7069b61f4006d0949456684bc58954bcadc8fdf] wine.inf: Add a 16bit fake dll for ddeml.dll.
You did not finish... Another good/bad is needed.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #16 from qaridarium@googlemail.com 2010-05-13 12:08:07 --- (In reply to comment #15)
(In reply to comment #14)
ok now im on the right way the result is:
ass@ass:~/wine-git$ git bisect good Bisecting: 0 revisions left to test after this (roughly 0 steps) [d7069b61f4006d0949456684bc58954bcadc8fdf] wine.inf: Add a 16bit fake dll for ddeml.dll.
You did not finish... Another good/bad is needed.
ass@ass:~/wine-git$ git bisect good 246f9305e9f8eb18e54018746143d95afed887be is the first bad commit commit 246f9305e9f8eb18e54018746143d95afed887be Author: Hans Leidekker hans@codeweavers.com Date: Mon Feb 1 09:55:08 2010 +0100
msi: Don't fail if the service to start is already running.
:040000 040000 da5f5521f50798ba0abe4dd9a00797093cface78 d28a7fdae69f50da82303ca4e536f364bb036195 M dlls
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #17 from Dmitry Timoshkov dmitry@codeweavers.com 2010-05-13 23:22:49 --- Does reverting that patch help?
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #18 from qaridarium@googlemail.com 2010-05-14 01:09:58 --- (In reply to comment #17)
Does reverting that patch help?
sorry i don't know how to revert the patch in the gittree i try to read this: http://wiki.winehq.org/GitWine
but i still 'learning' but for now i can't... any help for me to check this?
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #19 from Wylda wylda@volny.cz 2010-05-14 01:42:34 ---
but i still 'learning' but for now i can't... any help for me to check this?
This should give you yours segfault: git checkout -f 246f9305e9f8eb18e54018746143d95afed887be compile wine & test your game (should segfault)
If you bisect it correctly reverting should make the segfault go a way: git show 246f9305e9f8eb18e54018746143d95afed887be | patch -p1 -R compile wine & test your game (should run OK)
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #20 from qaridarium@googlemail.com 2010-05-14 02:17:32 --- "This should give you yours segfault: git checkout -f 246f9305e9f8eb18e54018746143d95afed887be compile wine & test your game (should segfault)"
this does not segfault :-( Fu.k ....
i really should redo the Regression Testing
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #21 from Wylda wylda@volny.cz 2010-05-14 02:32:36 --- (In reply to comment #20)
"This should give you yours segfault: git checkout -f 246f9305e9f8eb18e54018746143d95afed887be compile wine & test your game (should segfault)"
this does not segfault :-( Fu.k ....
i really should redo the Regression Testing
Hmmm... that mean you slip somewhere with good/bad marking.
But it also mean, that commit 246f9305e9f8eb18e54018746143d95afed887be is good. Then narrow the commit space. So instead of doing:
git bisect reset git bisect start git bisect good wine-1.1.37 git bisect bad wine-1.1.38
do:
git bisect reset git bisect start git bisect good 246f9305e9f8eb18e54018746143d95afed887be git bisect bad wine-1.1.38
And you hopefully save time and few compile rounds.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #22 from qaridarium@googlemail.com 2010-05-14 02:51:16 --- (In reply to comment #20)
"This should give you yours segfault: git checkout -f 246f9305e9f8eb18e54018746143d95afed887be compile wine & test your game (should segfault)"
this does not segfault :-( Fu.k ....
i really should redo the Regression Testing
i retest it my new regression testing result:
ass@ass:~/wine-git$ git bisect bad 2f3fa8596bc6410a3b535e2f12bf551841334ad7 is the first bad commit commit 2f3fa8596bc6410a3b535e2f12bf551841334ad7 Author: Alexandre Julliard julliard@winehq.org Date: Tue Feb 2 15:58:02 2010 +0100
server: Allow changing a thread affinity before it is initialized.
:040000 040000 ab45f9c4877812d1a70110f1280dd75d34ff9487 279e2ccf7470e8c19254a739a903ad88971d4e26 M server
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #23 from Wylda wylda@volny.cz 2010-05-14 02:54:44 ---
ass@ass:~/wine-git$ git bisect bad 2f3fa8596bc6410a3b535e2f12bf551841334ad7 is the first bad commit commit 2f3fa8596bc6410a3b535e2f12bf551841334ad7 Author: Alexandre Julliard julliard@winehq.org Date: Tue Feb 2 15:58:02 2010 +0100
server: Allow changing a thread affinity before it is initialized.
:040000 040000 ab45f9c4877812d1a70110f1280dd75d34ff9487 279e2ccf7470e8c19254a739a903ad88971d4e26 M server
Looks better than "msi: ...". And reverting helps or not? Indicates, that you did that correctly, so it's good to mention status of revert.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #24 from qaridarium@googlemail.com 2010-05-14 11:06:04 --- (In reply to comment #23)
ass@ass:~/wine-git$ git bisect bad 2f3fa8596bc6410a3b535e2f12bf551841334ad7 is the first bad commit commit 2f3fa8596bc6410a3b535e2f12bf551841334ad7 Author: Alexandre Julliard julliard@winehq.org Date: Tue Feb 2 15:58:02 2010 +0100
server: Allow changing a thread affinity before it is initialized.
:040000 040000 ab45f9c4877812d1a70110f1280dd75d34ff9487 279e2ccf7470e8c19254a739a903ad88971d4e26 M server
Looks better than "msi: ...". And reverting helps or not? Indicates, that you did that correctly, so it's good to mention status of revert.
i now recheck this:
This should give you yours segfault:
git checkout -f 2f3fa8596bc6410a3b535e2f12bf551841334ad7
compile wine & test your game (should segfault)
"Checkt" Right this "2f3fa8596bc6410a3b535e2f12bf551841334ad7" segfault
If you bisect it correctly reverting should make the segfault go a way:
git show 2f3fa8596bc6410a3b535e2f12bf551841334ad7 | patch -p1 -R
compile wine & test your game (should run OK)
"Check" Right this runs well!
2f3fa8596bc6410a3b535e2f12bf551841334ad7 is the problem!
http://bugs.winehq.org/show_bug.cgi?id=22629
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jskartman@gmail.com, | |julliard@winehq.org
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #25 from Jaime jskartman@gmail.com 2010-05-14 11:13:08 --- You should update the CC list including the mail regression test blames.
It's done now. ;)
http://bugs.winehq.org/show_bug.cgi?id=22629
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #26 from qaridarium@googlemail.com 2010-05-14 13:45:15 --- (In reply to comment #25)
You should update the CC list including the mail regression test blames.
It's done now. ;)
ok i ad julliard@winehq.org to the cc list he sould fix or remove his 2f3fa8596bc6410a3b535e2f12bf551841334ad7 patch
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #27 from Vincent Pelletier plr.vincent@gmail.com 2010-05-14 17:33:16 --- (In reply to comment #26)
ok i ad julliard@winehq.org to the cc list he sould fix or remove his 2f3fa8596bc6410a3b535e2f12bf551841334ad7 patch
Thanks a lot for running this regression test and identifying the "bad" commit. I just read the diff (and the file to get a bit more context) and I don't see where the problem could be. So I tend to think this is in fact a kernel (or libc ?) bug: - gcc doesn't identify segfault source, stack itself seems broken after the segfault - it works for some people, not for others (I guess we need more details, as kernel version & distro patches, libc & distro patches, multi/single core, etc to find a common denominator).
Personally, I use Debian Sid kernel (2.6.32-based) and their libc (eglibc IIRC) on AMD64 dual core on one socket.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #28 from qaridarium@googlemail.com 2010-05-14 19:44:32 --- (In reply to comment #27)
(In reply to comment #26)
ok i ad julliard@winehq.org to the cc list he sould fix or remove his 2f3fa8596bc6410a3b535e2f12bf551841334ad7 patch
Thanks a lot for running this regression test and identifying the "bad" commit. I just read the diff (and the file to get a bit more context) and I don't see where the problem could be. So I tend to think this is in fact a kernel (or libc ?) bug:
- gcc doesn't identify segfault source, stack itself seems broken after the
segfault
- it works for some people, not for others (I guess we need more details, as
kernel version & distro patches, libc & distro patches, multi/single core, etc to find a common denominator).
Personally, I use Debian Sid kernel (2.6.32-based) and their libc (eglibc IIRC) on AMD64 dual core on one socket.
i use a dualsocket f numa zwo opteron 2218 system and i use a standart ubuntu 10.04
http://bugs.winehq.org/show_bug.cgi?id=22629
zil zilforever@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zilforever@gmail.com
--- Comment #29 from zil zilforever@gmail.com 2010-05-16 10:25:22 --- confirm Tropico 3 work with wine 1.1.44 in Ubuntu 9.10(32 bit) but not in Ubuntu 10.04(32 bit) with wine 1.1.44
git checkout -f 2f3fa8596bc6410a3b535e2f12bf551841334ad7 and compile solve problem
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #30 from Vitaliy Margolen vitaliy@kievinfo.com 2010-05-16 10:47:27 --- Then it's most likely the kernel bug.
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #31 from qaridarium@googlemail.com 2010-05-16 12:05:45 --- (In reply to comment #29)
confirm Tropico 3 work with wine 1.1.44 in Ubuntu 9.10(32 bit) but not in Ubuntu 10.04(32 bit) with wine 1.1.44
git checkout -f 2f3fa8596bc6410a3b535e2f12bf551841334ad7 and compile solve problem
do you use intel or amd cpu ?
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #32 from zil zilforever@gmail.com 2010-05-16 14:28:48 --- Yup kernel, somewhere between 2.6.31->2.6.32 or how Wine work with it.
i use intel and u use AMD so common denominator currently is multi core.
Intel(R) Pentium(R) Dual CPU E2220 @ 2.40GHz Linux 2.6.32-22-generic i686 2399MHz MMX SSE SSE2 SSE3 SSSE3 HTT GeForce 9600 GT PCI Express 195.36.15 512Mb
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #33 from qaridarium@googlemail.com 2010-05-17 00:06:19 --- someone sould test this linus wine kernel fix : https://bugzilla.kernel.org/show_bug.cgi?id=15395#c34
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #34 from qaridarium@googlemail.com 2010-05-17 00:10:24 --- http://bugs.winehq.org/show_bug.cgi?id=21996
i think this is the same bug
http://bugs.winehq.org/show_bug.cgi?id=22629
--- Comment #35 from Wylda wylda@volny.cz 2010-05-17 04:00:55 --- (In reply to comment #33)
someone sould test this linus wine kernel fix : https://bugzilla.kernel.org/show_bug.cgi?id=15395#c34
Not needed. Kernel 2.6.34 is out since yesterday and include this patch. I just verify, that the patch is included.
Also if you have kernel 2.6.33 or maybe older, you can pickup the patch from bug 20380 and comment #91.
If kernel 2.6.34 or older, but patched helps, then this should be marked as duplicate of bug 20380, which is kept open for this purpose.
http://bugs.winehq.org/show_bug.cgi?id=22629
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |DUPLICATE
--- Comment #36 from Juan Lang juan_lang@yahoo.com 2010-05-17 12:50:45 --- (In reply to comment #34)
http://bugs.winehq.org/show_bug.cgi?id=21996
i think this is the same bug
Agreed, dup.
*** This bug has been marked as a duplicate of bug 21996 ***
http://bugs.winehq.org/show_bug.cgi?id=22629
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #37 from Juan Lang juan_lang@yahoo.com 2010-05-17 12:51:02 --- Closing dup.
http://bugs.winehq.org/show_bug.cgi?id=22629
Jeremy Drake wine@jdrake.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wine@jdrake.com
--- Comment #38 from Jeremy Drake wine@jdrake.com 2013-02-08 00:45:37 CST --- I am seeing this bug exactly with wine 1.5.23, complete with reverting 2f3fa8596bc6410a3b535e2f12bf551841334ad7 fixing the issue (incredibly, it still reverts cleanly after all this time).
I am running kernel 3.6.11, GeForce 8800GT 512MB with NVidia driver 313.18. 2xXeon 5130 (4 cores total), 32GB RAM.
http://bugs.winehq.org/show_bug.cgi?id=22629
auxsvr@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |auxsvr@yahoo.com