Hi All
I am currently debugging a USB driver and I am getting a error when I try to
free the pool memory.
I allocate the memory by calling
pUrb = (PURB) ExAllocatePoolWithTag(NonPagedPool,
sizeof(struct
_URB_CONTROL_DESCRIPTOR_REQUEST),
(ULONG) “UrtS”);
I then format the urb to get a device descriptor back by calling
UsbBuildGetDescriptorRequest(pUrb,
(USHORT) sizeof(struct
_URB_CONTROL_DESCRIPTOR_REQUEST),
USB_DEVICE_DESCRIPTOR_TYPE,
0,
0,
pDeviceDescriptor,
NULL,
sizeof(USB_DEVICE_DESCRIPTOR),
NULL);
later on I free it with ExFreePool(pUrb);
I then get the error message “invalid attempt to free a protected pool
block”
Can any one give me pointer on what I am doing wrong?
Thanks,
Matthew Tse
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com