mountmgr.sys: Move dhcp lookup to a worker thread.
commit715edfb0b2c42ae79a60300b87eca000c6e59cd2
authorHuw Davies <huw@codeweavers.com>
Tue, 6 Jul 2021 09:11:47 +0000 (6 10:11 +0100)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 6 Jul 2021 14:06:51 +0000 (6 16:06 +0200)
tree2f086147676bbefcbc92246c3cd87a0eb9d0e21a
parent34a9d3e40f71ddc2f03c976830bf8b9f6a35ea25
mountmgr.sys: Move dhcp lookup to a worker thread.

While this is a reasonable change per se, the motivation is to avoid a
deadlock when mountmgr.sys calls into iphlpapi and further into
nsiproxy.sys via the nsi device.  nsiproxy.sys is hosted by the same
process as mountmgr.sys so is unable to handle the request while
it is also waiting for that same request to return.

The correct long-term solution is for mountmgr.sys to call the
netio.sys versions of the iphlpapi functions.  These will call the
kernel-side versions of the nsi functions without going through the
nsi device.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
dlls/mountmgr.sys/mountmgr.c