Description of problem Attempting to run wine results in almost immediate 100% CPU use by wine-preloader, which must then be killed. Running wine <no argument> displays the help screen, as expected. There is no output when attempting to run any program. Version-Release number of selected component (if applicable): 0.99.10-2.fc5 [although the same behavior is noted with earlier versions, including a 2005 version from WineHQ which ran perfectly on FC4 x86_64. How reproducible: Run wine with or without arguments Steps to Reproduce: 1. type "wine" in a terminal. 2. 3. Actual results: Wine without arguments displays the help screen, but the attached strace output is abnormal. Wine with arguments hangs the command line. Wine-preloader must then be killed. Expected results: Wine executes the requested program. Additional info:
On current rawhide kernels, it is possible to completely kill the machine when running programs compiled for Win95. Prime example URL http://www.geocities.com/athens/academy/1974/nadsat.html - download the program and try and run.
I will try that tonight ... Joel: Could you attach your strace output? Thanks
Created attachment 127125 [details] Strace output with wine run without arguments. When run with arguments, there are many segfault lines. I can also send that file. Here is the requested strace output, which I thought a had attached yesterday.
Created attachment 127126 [details] This is strace output when wine is invoked with an argument.
In looking through the strace output, it appears that wine is expecting a number of files in the /lib directory that don't exist on my system and are not found with a "yum whatprovides" query on my enabled x86_64 repositories: access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) ... open("/usr/bin/../lib/tls/i686/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) How can I determine what RPMs I need from the i386 repository and why didn't wine fail the transaction check or test?
Ah... that actually gives me a clue :) I will work on it this weekend. Thanks for the information.
Hm seems like failing is ok as open("/etc/ld.so.cache", O_RDONLY) = 3 should do what wine wants. Please try to move your .wine directory out of the way and try with a fresh one (will be created on first run). That might do the trick (or try wineprefixcreate) as here it works just like a charm on x86_64 with autodeps
I had already tried this approach. It still fails. Running wine generates an input/output error when wine-preloader is called: [joel@alcibiades ~]$ strace wine execve("/usr/bin/wine", ["wine"], [/* 35 vars */]) = 0 [ Process PID=3670 runs in 32 bit mode. ] brk(0) = 0x804b000 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7ffd000 readlink("/proc/self/exe", "/usr/bin/wine", 4096) = 13 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libwine.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libwine.so.1", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\231"..., 512) = 512fstat64(0x3, 0xffffcc80) = 0 mmap2(0xb68000, 109120, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb68000 mmap2(0xb6f000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0xb6f000 mmap2(0xb70000, 76352, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb70000 close(3) = 0 open("/usr/bin/../lib/tls/i686/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(0x3, 0xffffcbe0) = 0 mmap2(NULL, 257294, PROT_READ, MAP_PRIVATE, 3, 0) = 0xfffffffff7fbe000 close(3) = 0 open("/lib/libpthread.so.0", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\232\271"..., 512) = 512 fstat64(0x3, 0xffffcc64) = 0 mmap2(0xb95000, 78268, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb95000 mmap2(0xba5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf) = 0xba5000 mmap2(0xba7000, 4540, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xba7000 close(3) = 0 open("/usr/bin/../lib/tls/i686/sse2/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\n\211\244"..., 512) = 512 fstat64(0x3, 0xffffcc48) = 0 mmap2(0xa33000, 1254780, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xa33000 mmap2(0xb5f000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12b) = 0xb5f000 mmap2(0xb63000, 9596, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb63000 close(3) = 0 open("/usr/bin/../lib/tls/i686/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/i686/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/tls/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/i686/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/sse2/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/bin/../lib/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\374\270"..., 512) = 512 fstat64(0x3, 0xffffcbac) = 0 mmap2(0xb8f000, 12412, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb8f000 mmap2(0xb91000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb91000 close(3) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7fbd000 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7fbc000 set_thread_area(0xffffd158) = 0 mprotect(0xba5000, 4096, PROT_READ) = 0 mprotect(0xb5f000, 12288, PROT_READ) = 0 mprotect(0xb91000, 4096, PROT_READ) = 0 mprotect(0x1bf000, 4096, PROT_READ) = 0 munmap(0xf7fbe000, 257294) = 0 set_tid_address(0xf7fbc6f8) = 3670 rt_sigaction(SIGRTMIN, {0x400b99686, [], 0}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x1000000400b995c0, [], 0}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=-4284481536, rlim_max=67108864*1024}) = 0 _sysctl({0x200ba1e04, -11600, (nil), (nil), (nil), 17869094388571463668}) = 0 mmap2(NULL, 10489856, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0xa01000) = 0xfffffffff75bb000 brk(0) = 0x804b000 brk(0x806c000) = 0x806c000 mprotect(0xf75bb000, 4096, PROT_NONE) = 0 clone(child_stack=0xf7fbb4d4, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0xf7fbbbe8, tls=0xf7fbbbe8, child_tidptr=0xffffd4ec) = 3671 futex(0xf7fbbbe8, FUTEX_WAIT, 3671, NULL) = 0 execve("/usr/bin/../lib/../bin/wine-preloader", [umovestr: Input/output error 0x804b1300804b158, umovestr: Input/output error 0x20e7100000000], [/* 35 vars */]) = 0 Running wineprefixcreate actually does create the .wine structure, but it hangs at line 205: "${WINELOADER:-wine}" rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 128 wine.inf I'm assuming that my problem relates in some way to doing an FC4->FC5 upgrade rather than a fresh install. Perhaps some files were not updated or some older files have been left behind, creating some sort of conflict. I'd appreciate it if you could suggest where I might look for the cause, but it does appear that this is not a wine bug. Thanks for your help.
FWIW, I managed to build wine-0.9.10 from source and it works! I still have no idea why the RPMs failed.
I have finally tracked down the root cause of these memory conflicts: the proprietary Nvidia driver. I recently came across a warning against using Nvidia's installer on the fedora-devel list: https://www.redhat.com/archives/fedora-devel-list/2006-February/msg01178.html I had tried -- and failed -- to run wine with the "nv" driver enabled, but hadn't realized that merely having the driver on my system could cause problems. After uninstalling the driver and installing the livna rpms, the problems have disappeared.
Nope. I'm not using the proprietary nv driver, just the bog standard xorg one (I've no need for 3D stuff so don't bother with it). Keep looking :-(