https://bugs.winehq.org/show_bug.cgi?id=46675
Bug ID: 46675 Summary: Black Ops 2 zombies mode crashes with Too many open files after 30-35 minutes of gameplay Product: Wine Version: 4.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: troyb@us.ibm.com Distribution: ---
After about 35 minutes of game play, the program crashes with the following error logs :
0122:err:winediag:FILE_CreateFile Too many open files, ulimit -n probably needs 00f1:err:ntdll:RtlLeaveCriticalSection section 0x6340394 is not acquired 0009:err:ntdll:RtlLeaveCriticalSection section 0x20d0394 is not acquired
Examining wineserver open fds with ls /proc/WINEPD/fd | wc -l shows that the program continually adds fds as the game is played and eventually crashes when it hits a system limit of 4096 (on my machine). Example output of fd list :
These are opened fds when steam starts :
ls /proc/32562/fd | wc -l 502
These are opened fds after the zombie mode is started :
ls /proc/32562/fd | wc -l 640
As game is played the fds increase proportional to time :
ls /proc/32562/fd | wc -l 1022
ls /proc/32562/fd | wc -l 2027
ls /proc/32562/fd | wc -l 3196
Just prior to crash, about 35 minutes into game :
ls /proc/32562/fd | wc -l 4095
the crash log when 4096 was hit :
013e:err:winediag:FILE_CreateFile Too many open files, ulimit -n probably needs to be increased
post crash dialog :
bash-4.3$ ls /proc/32562/fd | wc -l 4066
The same behavior occurs with any version of wine from 3.12 through 4.2, with and without wine staging and with and without DXVK d3d backend. The window manager is xfce and video card nvidia gtx 1070, wine is compiled 64/32 bit. The game must be started on Linux <= 4.18 due to another issue with hardware breakpoints (i.e. it won't start at all on Linux 4.19+, a separate bug report was submitted for that problem).