diff --git a/reactos/drivers/filesystems/udfs/Include/phys_lib.h b/reactos/drivers/filesystems/udfs/Include/phys_lib.h index ec7c76fa8d9..1ec4fe36ed8 100644 --- a/reactos/drivers/filesystems/udfs/Include/phys_lib.h +++ b/reactos/drivers/filesystems/udfs/Include/phys_lib.h @@ -96,7 +96,7 @@ extern OSSTATUS UDFGetBlockSize(PDEVICE_OBJECT DeviceObject, // the target devic extern OSSTATUS UDFGetDiskInfo(IN PDEVICE_OBJECT DeviceObject, // the target device object IN PVCB Vcb); // Volume control block from this DevObj -extern VOID UDFEjectReqWaiter(IN PVOID Context); +extern VOID NTAPI UDFEjectReqWaiter(IN PVOID Context); extern VOID UDFStopEjectWaiter(PVCB Vcb); @@ -182,4 +182,4 @@ OSSTATUS UDFResetDeviceDriver(IN PVCB Vcb, IN BOOLEAN Unlock); -#endif //__UDF_PHYS_LIB__H__ \ No newline at end of file +#endif //__UDF_PHYS_LIB__H__ diff --git a/reactos/drivers/filesystems/udfs/close.cpp b/reactos/drivers/filesystems/udfs/close.cpp index 89176feb596..a75954e143c 100644 --- a/reactos/drivers/filesystems/udfs/close.cpp +++ b/reactos/drivers/filesystems/udfs/close.cpp @@ -686,6 +686,7 @@ UDFDoDelayedClose( It operates until reach lower threshold */ VOID +NTAPI UDFDelayedClose( PVOID unused ) diff --git a/reactos/drivers/filesystems/udfs/fscntrl.cpp b/reactos/drivers/filesystems/udfs/fscntrl.cpp index 02dbd947df8..2dd3e5d4be1 100644 --- a/reactos/drivers/filesystems/udfs/fscntrl.cpp +++ b/reactos/drivers/filesystems/udfs/fscntrl.cpp @@ -900,7 +900,7 @@ UDFStartEjectWaiter( // terminates automatically ASSERT(!(Vcb->VCBFlags & UDF_VCB_FLAGS_STOP_WAITER_EVENT)); Vcb->VCBFlags |= UDF_VCB_FLAGS_STOP_WAITER_EVENT; - ExInitializeWorkItem(&(Vcb->EjectWaiter->EjectReqWorkQueueItem), (PWORKER_THREAD_ROUTINE)UDFEjectReqWaiter, Vcb->EjectWaiter); + ExInitializeWorkItem(&(Vcb->EjectWaiter->EjectReqWorkQueueItem), UDFEjectReqWaiter, Vcb->EjectWaiter); UDFPrint(("UDFStartEjectWaiter: create thread\n")); ExQueueWorkItem(&(Vcb->EjectWaiter->EjectReqWorkQueueItem), DelayedWorkQueue); } else { diff --git a/reactos/drivers/filesystems/udfs/misc.cpp b/reactos/drivers/filesystems/udfs/misc.cpp index b4a84479d0b..8aad9e79a82 100644 --- a/reactos/drivers/filesystems/udfs/misc.cpp +++ b/reactos/drivers/filesystems/udfs/misc.cpp @@ -1174,7 +1174,7 @@ UDFPostRequest( KeReleaseSpinLock( &(Vcb->OverflowQueueSpinLock), SavedIrql ); // queue up the request - ExInitializeWorkItem(&(PtrIrpContext->WorkQueueItem), (PWORKER_THREAD_ROUTINE)UDFCommonDispatch, PtrIrpContext); + ExInitializeWorkItem(&(PtrIrpContext->WorkQueueItem), UDFCommonDispatch, PtrIrpContext); ExQueueWorkItem(&(PtrIrpContext->WorkQueueItem), CriticalWorkQueue); // ExQueueWorkItem(&(PtrIrpContext->WorkQueueItem), DelayedWorkQueue); @@ -1204,6 +1204,7 @@ UDFPostRequest( * *************************************************************************/ VOID +NTAPI UDFCommonDispatch( IN PVOID Context // actually is a pointer to IRPContext structure ) diff --git a/reactos/drivers/filesystems/udfs/protos.h b/reactos/drivers/filesystems/udfs/protos.h index 6bf5e4e1304..f118b741d62 100644 --- a/reactos/drivers/filesystems/udfs/protos.h +++ b/reactos/drivers/filesystems/udfs/protos.h @@ -87,7 +87,7 @@ extern ULONG UDFCleanUpFcbChain(IN PVCB Vcb, extern VOID UDFCloseAllDelayed(PVCB Vcb); -extern VOID UDFDelayedClose(PVOID unused = NULL); +extern VOID NTAPI UDFDelayedClose(PVOID unused = NULL); extern NTSTATUS UDFCloseAllXXXDelayedInDir(IN PVCB Vcb, IN PUDF_FILE_INFO FileInfo, @@ -642,7 +642,7 @@ extern NTSTATUS UDFPostRequest( PtrUDFIrpContext PtrIrpContext, PIRP Irp); -extern VOID UDFCommonDispatch( +extern VOID NTAPI UDFCommonDispatch( VOID *Context); // actually an IRPContext structure extern NTSTATUS UDFInitializeVCB( @@ -756,7 +756,7 @@ extern OSSTATUS UDFGetBlockSize(PDEVICE_OBJECT DeviceObject, // the target devic extern OSSTATUS UDFGetDiskInfo(IN PDEVICE_OBJECT DeviceObject, // the target device object IN PVCB Vcb); // Volume control block from this DevObj -extern VOID UDFEjectReqWaiter(IN PVOID Context); +extern VOID NTAPI UDFEjectReqWaiter(IN PVOID Context); extern VOID UDFStopEjectWaiter(PVCB Vcb); diff --git a/reactos/drivers/filesystems/udfs/udf_info/phys_eject.cpp b/reactos/drivers/filesystems/udfs/udf_info/phys_eject.cpp index 42806331ea5..ac4ca0a99cb 100644 --- a/reactos/drivers/filesystems/udfs/udf_info/phys_eject.cpp +++ b/reactos/drivers/filesystems/udfs/udf_info/phys_eject.cpp @@ -26,6 +26,7 @@ UDFKeyWaiter( This routine checks for User Eject request & initiates Dismount */ void +NTAPI UDFEjectReqWaiter( IN void* Context ) diff --git a/reactos/drivers/filesystems/udfs/udf_info/remap.cpp b/reactos/drivers/filesystems/udfs/udf_info/remap.cpp index 2ca76b20035..646f7eb6063 100644 --- a/reactos/drivers/filesystems/udfs/udf_info/remap.cpp +++ b/reactos/drivers/filesystems/udfs/udf_info/remap.cpp @@ -537,10 +537,12 @@ UDFVForget( } // end UDFVForget() VOID +NTAPI UDFVWorkItem( - PUDF_VERIFY_REQ VerifyReq + PVOID Context ) { + PUDF_VERIFY_REQ VerifyReq = (PUDF_VERIFY_REQ)Context; PVCB Vcb = VerifyReq->Vcb; ULONG ReadBytes; // OSSTATUS RC; @@ -703,7 +705,7 @@ UDFVVerify( InterlockedIncrement((PLONG)&(VerifyCtx->QueuedCount)); #ifndef _CONSOLE ExInitializeWorkItem( &(VerifyReq->VerifyItem), - (PWORKER_THREAD_ROUTINE) UDFVWorkItem, + UDFVWorkItem, VerifyReq ); ExQueueWorkItem( &(VerifyReq->VerifyItem), CriticalWorkQueue ); #else diff --git a/reactos/drivers/filesystems/udfs/udfinit.cpp b/reactos/drivers/filesystems/udfs/udfinit.cpp index ca943875508..c5f664fc385 100644 --- a/reactos/drivers/filesystems/udfs/udfinit.cpp +++ b/reactos/drivers/filesystems/udfs/udfinit.cpp @@ -179,7 +179,7 @@ DriverEntry( InitializeListHead( &UDFGlobalData.DirDelayedCloseQueue ); ExInitializeWorkItem( &UDFGlobalData.CloseItem, - (PWORKER_THREAD_ROUTINE) UDFDelayedClose, + UDFDelayedClose, NULL ); UDFGlobalData.DelayedCloseCount = 0; @@ -312,7 +312,7 @@ DriverEntry( FsRegistered = TRUE; UDFPrint(("UDF: IoRegisterFsRegistrationChange()\n")); - IoRegisterFsRegistrationChange( DriverObject, (PDRIVER_FS_NOTIFICATION)UDFFsNotification ); + IoRegisterFsRegistrationChange( DriverObject, UDFFsNotification ); // delay.QuadPart = -10000000; // KeDelayExecutionThread(KernelMode, FALSE, &delay); //10 microseconds