https://bugs.winehq.org/show_bug.cgi?id=46979
Bug ID: 46979 Summary: Winecfg hangs (winedevice.exe 100% CPU usage) when removing an assigned drive Product: Wine Version: 4.5 Hardware: x86 OS: Linux Status: NEW Keywords: download, regression, source Severity: normal Priority: P2 Component: wineserver Assignee: wine-bugs@winehq.org Reporter: gyebro69@gmail.com CC: jacek@codeweavers.com Regression SHA1: b4f78d6896a7fc85b3ec29d3db30d5d8e9b790e8 Distribution: ArchLinux
Steps to reproduce:
1. create a new wineprefix by running winecfg. Go to the <Drives> tab and add a new drive pointing to any existing directory on your filesystem e.g. your home directory. Click <Apply> then <OK> to accept the changes and quit winecfg. 2. re-run winecfg, visit the <Drives> tab and remove the previously created drive from the list then click <Apply>....winecfg hangs (no visible terminal output, winedevice consumes 100% CPU).
Another scenario (an external USB hard drive was mounted then unmounted between those 2 steps). When the external hdd is mounted on my system, existing partitions on the drive are automatically added to the drive list in winecfg. Exit winecfg and unmount the partition(s) from your system then re-run winecfg and try to open the <Drives> tab: Wine hangs again, now something like this is present in the terminal: 0017:err:ntdll:RtlpWaitForCriticalSection section 0xf7d67700 "../../../dlls/mountmgr.sys/device.c: device_section" wait timed out in thread 0017, blocked by 0019, retrying (60 sec)
Reverting commit b4f78d6896a7fc85b3ec29d3db30d5d8e9b790e8 fixes the problem for me.
Tested and reproduced in wine-4.5-222-g8ee1e3453e.