PiDqIrpCancel
VOID __stdcall PiDqIrpCancel(_DEVICE_OBJECT *DeviceObject, _IRP *Irp){
char v3;
_PI_DQ_QUERY *FsContext2;
v3 = 0;
FsContext2 = (_PI_DQ_QUERY *)Irp->Tail.CurrentStackLocation->FileObject->FsContext2;
KeReleaseQueuedSpinLock(LockQueueIoCancelLock, Irp->CancelIrql);
PiDqQueryLock(FsContext2);
if( *((_QWORD *)FsContext2 + 22) )
{
FsContext2[54] &= ~0x10u;
v3 = 1;
*((_QWORD *)FsContext2 + 22) = 0i64;
}
PiDqQueryUnlock(FsContext2);
if( v3 )
{
Irp->IoStatus.Information = 0i64;
Irp->IoStatus.Status = -1073741536;
IofCompleteRequest(Irp, 0);
}
}Referenced by:
No references.