sys: FspIopDispatchRetryComplete()

This commit is contained in:
Bill Zissimopoulos 2016-01-26 20:03:56 -08:00
parent af5745d5fc
commit 79a6539caa
4 changed files with 9 additions and 10 deletions

View File

@ -714,7 +714,7 @@ VOID FspFsvolCreateComplete(
}
NTSTATUS FspFsvolCreateRetryComplete(
PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request)
PIRP Irp)
{
PAGED_CODE();

View File

@ -228,7 +228,7 @@ typedef VOID FSP_IOCMPL_DISPATCH(
_IRQL_requires_max_(APC_LEVEL)
_IRQL_requires_same_
typedef NTSTATUS FSP_IORETR_DISPATCH(
_Inout_ PIRP Irp, _Inout_ FSP_FSCTL_TRANSACT_REQ *Request);
_Inout_ PIRP Irp);
FSP_IOCMPL_DISPATCH FspFsvolCleanupComplete;
FSP_IOCMPL_DISPATCH FspFsvolCloseComplete;
FSP_IOPREP_DISPATCH FspFsvolCreatePrepare;
@ -423,7 +423,7 @@ VOID FspIopCompleteIrpEx(PIRP Irp, NTSTATUS Result, BOOLEAN DeviceDereference);
VOID FspIopCompleteCanceledIrp(PIRP Irp);
NTSTATUS FspIopDispatchPrepare(PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request);
VOID FspIopDispatchComplete(PIRP Irp, const FSP_FSCTL_TRANSACT_RSP *Response);
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request);
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp);
/* device management */
#define FSP_DEVICE_VOLUME_NAME_LENMAX (FSP_FSCTL_VOLUME_NAME_SIZEMAX - sizeof(WCHAR))

View File

@ -19,7 +19,7 @@ VOID FspIopCompleteIrpEx(PIRP Irp, NTSTATUS Result, BOOLEAN DeviceDereference);
VOID FspIopCompleteCanceledIrp(PIRP Irp);
NTSTATUS FspIopDispatchPrepare(PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request);
VOID FspIopDispatchComplete(PIRP Irp, const FSP_FSCTL_TRANSACT_RSP *Response);
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request);
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp);
#ifdef ALLOC_PRAGMA
#pragma alloc_text(PAGE, FspIopCreateRequestFunnel)
@ -270,17 +270,16 @@ VOID FspIopDispatchComplete(PIRP Irp, const FSP_FSCTL_TRANSACT_RSP *Response)
FspIopCompleteFunction[IrpSp->MajorFunction](Irp, Response);
}
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp, FSP_FSCTL_TRANSACT_REQ *Request)
NTSTATUS FspIopDispatchRetryComplete(PIRP Irp)
{
PAGED_CODE();
PIO_STACK_LOCATION IrpSp = IoGetCurrentIrpStackLocation(Irp);
ASSERT(IRP_MJ_MAXIMUM_FUNCTION >= IrpSp->MajorFunction);
if (0 != FspIopRetryCompleteFunction[IrpSp->MajorFunction])
return FspIopRetryCompleteFunction[IrpSp->MajorFunction](Irp, Request);
else
return STATUS_SUCCESS;
ASSERT(0 != FspIopRetryCompleteFunction[IrpSp->MajorFunction]);
return FspIopRetryCompleteFunction[IrpSp->MajorFunction](Irp);
}
FSP_IOPREP_DISPATCH *FspIopPrepareFunction[IRP_MJ_MAXIMUM_FUNCTION + 1];

View File

@ -548,7 +548,7 @@ NTSTATUS FspVolumeTransact(
if (0 == RetriedIrp)
break;
Result = FspIopDispatchRetryComplete(RetriedIrp, FspIrpRequest(RetriedIrp));
Result = FspIopDispatchRetryComplete(RetriedIrp);
if (STATUS_PENDING == Result)
{
/*