The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.
Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/
a) I installed a 40Gb ethernet card from a major vendor in my server and installed their drivers (NDIS miniport).
They also have a iSCSI crash dump driver that I installed into the registry (in the iSCSIInitiator\Parameters\DumpMiniport type REG_SZ with the name of the driver
The server boots from a local hard disk, pagefile is from the local hard disk.
I mapped a LUN from a NetApp ISCSI server to this server (reachable through the Ethernet port) and mapped it to z: using the iSCSI initiator built into windows
I have configured the session to be persistent across reboot
Then I configured crashdump (for now small memory dump) to be in a folder in z: say z:\foo. I have created z:\foo and rebooted.
Then I ran NotMyFault64 to create a bugcheck but I do not see the crashdump being written to z:\foo.
But if I hook up a wire capture (not wireshark but physical wire capture), I do see SCSI login followed by SCSI writes going out of the Ethernet port.
The MAC address and IP address in the wire capture are correct.
If I configure the crashdump to be the local disk, obviously I have no problems. It gets written to the local disk.
In the debugger, I do not see the iSCSI crash dump driver being loaded at all (I set breakpoints on driver load). When the bugcheck happens, when I do lm to list the drivers, I do not see the driver loaded
a) What is the purpose of the iSCSI crash dump driver? When will that be loaded?. Do I also need to have iSCSI boot on this server?
I also am looking for clarification on my understanding of the crash dump process. I derived this from reading Windows Internals edition 6 volume 2 but I have to say I just gleaned it.
This is what I understand happens during crashdump. I am looking for input on my understanding of this process
a) When bugcheck happens, crashdump data gets written to the pagefile
b) The system is rebooted
c) During reboot, while the system is being initialized, the pagefile is copied to the crashdump file
My question is in step (c), if the crashdump is on a iSCSI LUN, does the system use the filesystem to copy the file?. FileSystem internally uses iSCSI protocol.
This assumes that the file system and iSCSI are all initialized and all LUNs are mounted.
How does the pagefile get copied to the crashdump file?
|Upcoming OSR Seminars|
|OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!|
|Writing WDF Drivers||7 Dec 2020||LIVE ONLINE|
|Internals & Software Drivers||25 Jan 2021||LIVE ONLINE|
|Developing Minifilters||8 March 2021||LIVE ONLINE|