I'm writing a function driver for a USB device running on Win2K and WinXP. I'm using the WinXP DDK (but have been building with the Win2K Free Build environment). The tests are being run on XP Pro SP1. The driver 'works', so now I am running the driver verification tools. The problem is that I get a blue screen from the "Remove Driver" test in the "PnP Driver Test Tool", and the code indicates a failure to free some allocated block in the non-paged pool. I thought I could figure out which block is not being freed by looking at the tags.
My question is: Why can't I see the allocations I've made in my driver using Poolmon or the Pooltag utility? I tried allocating a dummy block of memory in my DriverEntry routine (and never free this), but I still can't see it even though the driver is actually running
pTestBlock = ExAllocatePoolWithTag( NonPagedPool, 32, 'XXXX')
But the 'XXXX' tag never appears in the display