From 6c06760547d093268d9d9d778b1d91f24b63269e Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Sat, 14 Jan 2023 15:24:51 -0500 Subject: [PATCH] [HIVESYS] Move ndis to the "NDIS Wrapper" group. CORE-18790 Miniport drivers import from NDIS, but NDIS does not support being loaded as a dependent driver (it does not have DllInitialize). Instead, NDIS needs to load before all possible miniport drivers, even boot-start ones. We achieve this by placing it in its own service order group, which loads before the NDIS group. All our miniport drivers are demand-start, so would automatically start later. The ndisprot driver from the ticket is likely the first boot-start miniport we've encountered. Since DriverEntry did not run, AdapterListHead was NULL, resulting in the crash. --- boot/bootdata/hivesys.inf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/boot/bootdata/hivesys.inf b/boot/bootdata/hivesys.inf index 45c3d6e6446..b22c8a7abba 100644 --- a/boot/bootdata/hivesys.inf +++ b/boot/bootdata/hivesys.inf @@ -1694,9 +1694,9 @@ HKLM,"SYSTEM\CurrentControlSet\Services\Mup","ImagePath",0x00020000,"system32\dr HKLM,"SYSTEM\CurrentControlSet\Services\Mup","Start",0x00010001,0x00000000 HKLM,"SYSTEM\CurrentControlSet\Services\Mup","Type",0x00010001,0x00000002 -; NDIS driver - the only boot-start network driver +; NDIS driver - needs to load before any drivers in the NDIS group HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","ErrorControl",0x00010001,0x00000001 -HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","Group",0x00000000,"NDIS" +HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","Group",0x00000000,"NDIS Wrapper" HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","ImagePath",0x00020000,"system32\drivers\ndis.sys" HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","Start",0x00010001,0x00000000 HKLM,"SYSTEM\CurrentControlSet\Services\Ndis","Type",0x00010001,0x00000001