http://bugs.winehq.org/show_bug.cgi?id=19456
Summary: Mount Manager crashes with optical discs since commit 15acd35 Product: Wine Version: 1.1.26 Platform: PC OS/Version: Mac OS X 10.5 Status: UNCONFIRMED Severity: normal Priority: P2 Component: ntdll AssignedTo: wine-bugs@winehq.org ReportedBy: cdavis@mines.edu
Created an attachment (id=22602) --> (http://bugs.winehq.org/attachment.cgi?id=22602) Wine Log with backtrace showing problem
Recently, the Mount Manager driver (mountmgr.sys) has been crashing on Mac OS. (Good thing it's not a real ring 0 driver...). I've attached a log showing what happens. From the log, it looks like there's some heap corruption going on here.
It only crashes when there's a disc in the optical disc drive. And even then, it doesn't crash the first time it sees the disc. The SECOND time and subsequent times, when Wine already knows about the disc, it crashes.
I did a regression test and found that this is the offending commit:
commit 15acd35fa27d09af01698083af21ef3772edcae1 Author: Alexandre Julliard julliard@winehq.org Date: Wed Jul 22 20:56:04 2009 +0200
mountmgr: Try to match and reuse volumes when creating/updating a drive.
For some reason, reusing volumes fails spectacularly on Mac OS (at least on my system), leading to possible heap corruption and a crash.
Even worse, the driver goes down while holding its critical section. Somehow the CS isn't released. Then, programs that try to use Mount Manager end up deadlocking:
err:ntdll:RtlpWaitForCriticalSection section 0x4040e500 "device.c: device_section" wait timed out in thread 0017, blocked by 0018, retrying (60 sec)
Eventually, Wine gives up on the CS, but then weird things start happening to programs that rely on Mount Manager. For example, winecfg shows no drives on the Drives tab (because Mount Manager is down and can't handle IOCTL requests).
Any help on this would be appreciated.