NDIS Drivers Debugging Help

Hello guys,
before I worked with NDIS drivers I used to debug drivers using a host computer and a target computer through network cable. I was told it is not possible to debug network drivers using this method of host to target computer.
I had read a bit more about it and somewhere I was told it could be done using a virtual machine. However, I could not find decent documentation on that. Can somebody give me a quick explanation or point me some good materials to study?
Thanks guys!

KM debugging over the network works just fine for network drivers,
especially ‘software’ drivers like protocols, LWFs, etc.

The only degenerate case which you are most surely not going to hit is
debugging the Miniport driver for the NIC that you have given over the KDNET
to use since that Miniport will not be used. But if you were the vendor
providing that Miniport (Intel, Broadcom, etc.) you would not be asking this
question :slight_smile:

In a VM just connect with the serial transport via named pipe.

IIRC there is quite a bit of ‘how to get going’ in the WDK docs, VS2013, and
Windbg.

Good Luck,
Dave Cattley

>computer through network cable. I was told it is not possible to debug network drivers using this

method of host to target computer.

Possible. The Ethernet debugger uses the separate NIC instance, you can debug other ones.

BTW - for software-only kernel modules, just use the VM (Hyper-V is totally fine, it is free in any WinSrv SKU except Web Edition) and serial KD transport via VM’s named pipe.

You will still need to test on real hardware, surely. For network SW-only stuff, you will need to test with a range of hardware NICs and Wi-Fi chips, including I think USB->Ethernet and USB->Wi-Fi dongles.


Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.com
http://www.storagecraft.com