Enumerating threads and processes on some dumps causes MemoryException in PyKD 0.0.20
Test environment:
KD 6.2.9200.20512 x86
PyKD 0.0.20
Steps:
1. Create kernelmode hang on Windows 7 VM with the attached "osrlock" driver
- load the kernel module from osrlock\src\km_ioctl\bin\amd64\osrlock.sys
- run the command "osrlock\src\um\bin\amd64\ioctl.exe m m"
- force a crash with Ctrl+scrl+scrl (must add a registry key) or suspend the VM and extract the dump (VMware workstation comes with vmss2core, not sure about other products)
2. Load dump in KD
3. Execute the attached script with the !py command
Expected result:
Creates and prints a whole bunch of pykd.TypedVar objects
Observed result:
If no try/catch, throws MemoryException. If exception is caught, catches an exception for every single process. If caught by name, get the error "'finally' pops bad exception."
Comments: not reproduced on the current release
Test environment:
KD 6.2.9200.20512 x86
PyKD 0.0.20
Steps:
1. Create kernelmode hang on Windows 7 VM with the attached "osrlock" driver
- load the kernel module from osrlock\src\km_ioctl\bin\amd64\osrlock.sys
- run the command "osrlock\src\um\bin\amd64\ioctl.exe m m"
- force a crash with Ctrl+scrl+scrl (must add a registry key) or suspend the VM and extract the dump (VMware workstation comes with vmss2core, not sure about other products)
2. Load dump in KD
3. Execute the attached script with the !py command
Expected result:
Creates and prints a whole bunch of pykd.TypedVar objects
Observed result:
If no try/catch, throws MemoryException. If exception is caught, catches an exception for every single process. If caught by name, get the error "'finally' pops bad exception."
Comments: not reproduced on the current release