mirror of
https://github.com/reactos/reactos.git
synced 2025-01-01 03:54:02 +00:00
[NTOSKRNL] Misc fixes to !irpfind
This commit is contained in:
parent
36f90e7e46
commit
e6a1851684
1 changed files with 14 additions and 4 deletions
|
@ -444,9 +444,10 @@ ExpKdbgExtIrpFindPrint(
|
||||||
PVOID Context)
|
PVOID Context)
|
||||||
{
|
{
|
||||||
PIRP Irp;
|
PIRP Irp;
|
||||||
|
BOOLEAN IsComplete = FALSE;
|
||||||
PIRP_FIND_CTXT FindCtxt = Context;
|
PIRP_FIND_CTXT FindCtxt = Context;
|
||||||
PIO_STACK_LOCATION IoStack = NULL;
|
PIO_STACK_LOCATION IoStack = NULL;
|
||||||
PUNICODE_STRING DriverName;
|
PUNICODE_STRING DriverName = NULL;
|
||||||
ULONG_PTR SData = FindCtxt->SData;
|
ULONG_PTR SData = FindCtxt->SData;
|
||||||
ULONG Criteria = FindCtxt->Criteria;
|
ULONG Criteria = FindCtxt->Criteria;
|
||||||
|
|
||||||
|
@ -473,8 +474,10 @@ ExpKdbgExtIrpFindPrint(
|
||||||
/* Get associated driver */
|
/* Get associated driver */
|
||||||
if (IoStack->DeviceObject && IoStack->DeviceObject->DriverObject)
|
if (IoStack->DeviceObject && IoStack->DeviceObject->DriverObject)
|
||||||
DriverName = &IoStack->DeviceObject->DriverObject->DriverName;
|
DriverName = &IoStack->DeviceObject->DriverObject->DriverName;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
DriverName = NULL;
|
{
|
||||||
|
IsComplete = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Display if: no data, no criteria or if criteria matches data */
|
/* Display if: no data, no criteria or if criteria matches data */
|
||||||
|
@ -484,9 +487,16 @@ ExpKdbgExtIrpFindPrint(
|
||||||
(Criteria & 0x4 && Irp->MdlAddress && SData == (ULONG_PTR)Irp->MdlAddress->Process) ||
|
(Criteria & 0x4 && Irp->MdlAddress && SData == (ULONG_PTR)Irp->MdlAddress->Process) ||
|
||||||
(Criteria & 0x8 && SData == (ULONG_PTR)Irp->Tail.Overlay.Thread) ||
|
(Criteria & 0x8 && SData == (ULONG_PTR)Irp->Tail.Overlay.Thread) ||
|
||||||
(Criteria & 0x10 && SData == (ULONG_PTR)Irp->UserEvent))
|
(Criteria & 0x10 && SData == (ULONG_PTR)Irp->UserEvent))
|
||||||
|
{
|
||||||
|
if (!IsComplete)
|
||||||
{
|
{
|
||||||
KdbpPrint("%p Thread %p current stack belongs to %wZ\n", Irp, Irp->Tail.Overlay.Thread, DriverName);
|
KdbpPrint("%p Thread %p current stack belongs to %wZ\n", Irp, Irp->Tail.Overlay.Thread, DriverName);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
KdbpPrint("%p Thread %p is complete (CurrentLocation %d > StackCount %d)\n", Irp, Irp->Tail.Overlay.Thread, Irp->CurrentLocation, Irp->StackCount + 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOLEAN
|
BOOLEAN
|
||||||
|
|
Loading…
Reference in a new issue