mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 18:15:11 +00:00
Revert "[CDFS_NEW] Use CdAcquireForCreateSection from the old driver in place of the newer CdFilterCallbackAcquireForCreateSection."
This reverts commit 8410d03275
.
This commit is contained in:
parent
ec26cde4a1
commit
6a3bbf24e0
3 changed files with 0 additions and 68 deletions
|
@ -191,9 +191,7 @@ Return Value:
|
||||||
sizeof(FS_FILTER_CALLBACKS) );
|
sizeof(FS_FILTER_CALLBACKS) );
|
||||||
|
|
||||||
FilterCallbacks.SizeOfFsFilterCallbacks = sizeof(FS_FILTER_CALLBACKS);
|
FilterCallbacks.SizeOfFsFilterCallbacks = sizeof(FS_FILTER_CALLBACKS);
|
||||||
#ifndef __REACTOS__
|
|
||||||
FilterCallbacks.PreAcquireForSectionSynchronization = CdFilterCallbackAcquireForCreateSection;
|
FilterCallbacks.PreAcquireForSectionSynchronization = CdFilterCallbackAcquireForCreateSection;
|
||||||
#endif
|
|
||||||
|
|
||||||
Status = FsRtlRegisterFileSystemFilterCallbacks( DriverObject,
|
Status = FsRtlRegisterFileSystemFilterCallbacks( DriverObject,
|
||||||
&FilterCallbacks );
|
&FilterCallbacks );
|
||||||
|
@ -359,15 +357,11 @@ Return Value:
|
||||||
CdFastIoDispatch.FastIoUnlockSingle = CdFastUnlockSingle; // UnlockSingle
|
CdFastIoDispatch.FastIoUnlockSingle = CdFastUnlockSingle; // UnlockSingle
|
||||||
CdFastIoDispatch.FastIoUnlockAll = CdFastUnlockAll; // UnlockAll
|
CdFastIoDispatch.FastIoUnlockAll = CdFastUnlockAll; // UnlockAll
|
||||||
CdFastIoDispatch.FastIoUnlockAllByKey = CdFastUnlockAllByKey; // UnlockAllByKey
|
CdFastIoDispatch.FastIoUnlockAllByKey = CdFastUnlockAllByKey; // UnlockAllByKey
|
||||||
#ifndef __REACTOS__
|
|
||||||
//
|
//
|
||||||
// This callback has been replaced by CdFilterCallbackAcquireForCreateSection.
|
// This callback has been replaced by CdFilterCallbackAcquireForCreateSection.
|
||||||
//
|
//
|
||||||
|
|
||||||
CdFastIoDispatch.AcquireFileForNtCreateSection = NULL;
|
CdFastIoDispatch.AcquireFileForNtCreateSection = NULL;
|
||||||
#else
|
|
||||||
CdFastIoDispatch.AcquireFileForNtCreateSection = CdAcquireForCreateSection;
|
|
||||||
#endif
|
|
||||||
CdFastIoDispatch.ReleaseFileForNtCreateSection = CdReleaseForCreateSection;
|
CdFastIoDispatch.ReleaseFileForNtCreateSection = CdReleaseForCreateSection;
|
||||||
CdFastIoDispatch.FastIoQueryNetworkOpenInfo = CdFastQueryNetworkInfo; // QueryNetworkInfo
|
CdFastIoDispatch.FastIoQueryNetworkOpenInfo = CdFastQueryNetworkInfo; // QueryNetworkInfo
|
||||||
|
|
||||||
|
|
|
@ -1121,7 +1121,6 @@ CdReleaseFromCache (
|
||||||
_Inout_ PFCB Fcb
|
_Inout_ PFCB Fcb
|
||||||
);
|
);
|
||||||
|
|
||||||
#ifndef __REACTOS__
|
|
||||||
_Requires_lock_held_(_Global_critical_region_)
|
_Requires_lock_held_(_Global_critical_region_)
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
||||||
|
@ -1129,13 +1128,6 @@ CdFilterCallbackAcquireForCreateSection (
|
||||||
_In_ PFS_FILTER_CALLBACK_DATA CallbackData,
|
_In_ PFS_FILTER_CALLBACK_DATA CallbackData,
|
||||||
_Unreferenced_parameter_ PVOID *CompletionContext
|
_Unreferenced_parameter_ PVOID *CompletionContext
|
||||||
);
|
);
|
||||||
#else
|
|
||||||
VOID
|
|
||||||
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
|
||||||
CdAcquireForCreateSection (
|
|
||||||
IN PFILE_OBJECT FileObject
|
|
||||||
);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
_Function_class_(FAST_IO_RELEASE_FILE)
|
_Function_class_(FAST_IO_RELEASE_FILE)
|
||||||
_Requires_lock_held_(_Global_critical_region_)
|
_Requires_lock_held_(_Global_critical_region_)
|
||||||
|
|
|
@ -23,11 +23,7 @@ Abstract:
|
||||||
|
|
||||||
#ifdef ALLOC_PRAGMA
|
#ifdef ALLOC_PRAGMA
|
||||||
#pragma alloc_text(PAGE, CdAcquireForCache)
|
#pragma alloc_text(PAGE, CdAcquireForCache)
|
||||||
#ifndef __REACTOS__
|
|
||||||
#pragma alloc_text(PAGE, CdFilterCallbackAcquireForCreateSection)
|
#pragma alloc_text(PAGE, CdFilterCallbackAcquireForCreateSection)
|
||||||
#else
|
|
||||||
#pragma alloc_text(PAGE, CdAcquireForCreateSection)
|
|
||||||
#endif
|
|
||||||
#pragma alloc_text(PAGE, CdAcquireResource)
|
#pragma alloc_text(PAGE, CdAcquireResource)
|
||||||
#pragma alloc_text(PAGE, CdNoopAcquire)
|
#pragma alloc_text(PAGE, CdNoopAcquire)
|
||||||
#pragma alloc_text(PAGE, CdNoopRelease)
|
#pragma alloc_text(PAGE, CdNoopRelease)
|
||||||
|
@ -278,7 +274,6 @@ Return Value:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifndef __REACTOS__
|
|
||||||
_Requires_lock_held_(_Global_critical_region_)
|
_Requires_lock_held_(_Global_critical_region_)
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
||||||
|
@ -361,55 +356,6 @@ Return Value:
|
||||||
|
|
||||||
UNREFERENCED_PARAMETER( CompletionContext );
|
UNREFERENCED_PARAMETER( CompletionContext );
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
VOID
|
|
||||||
NTAPI /* ReactOS Change: GCC Does not support STDCALL by default */
|
|
||||||
CdAcquireForCreateSection (
|
|
||||||
IN PFILE_OBJECT FileObject
|
|
||||||
)
|
|
||||||
|
|
||||||
/*++
|
|
||||||
|
|
||||||
Routine Description:
|
|
||||||
|
|
||||||
This is the callback routine for MM to use to acquire the file exclusively.
|
|
||||||
|
|
||||||
Arguments:
|
|
||||||
|
|
||||||
FileObject - File object for a Cdfs stream.
|
|
||||||
|
|
||||||
Return Value:
|
|
||||||
|
|
||||||
None
|
|
||||||
|
|
||||||
--*/
|
|
||||||
|
|
||||||
{
|
|
||||||
PAGED_CODE();
|
|
||||||
|
|
||||||
|
|
||||||
//
|
|
||||||
// Get the Fcb resource exclusively.
|
|
||||||
//
|
|
||||||
|
|
||||||
ExAcquireResourceExclusiveLite( &((PFCB) FileObject->FsContext)->FcbNonpaged->FcbResource,
|
|
||||||
TRUE );
|
|
||||||
|
|
||||||
//
|
|
||||||
// Take the File resource shared. We need this later on when MM calls
|
|
||||||
// QueryStandardInfo to get the file size.
|
|
||||||
//
|
|
||||||
// If we don't use StarveExclusive, then we can get wedged behind an
|
|
||||||
// exclusive waiter who is waiting on someone else holding it shared in the
|
|
||||||
// read->initializecachemap path (which calls createsection) who is in turn
|
|
||||||
// waiting on us to finish the create section.
|
|
||||||
//
|
|
||||||
|
|
||||||
ExAcquireSharedStarveExclusive( ((PFCB) FileObject->FsContext)->Resource,
|
|
||||||
TRUE );
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
_Function_class_(FAST_IO_RELEASE_FILE)
|
_Function_class_(FAST_IO_RELEASE_FILE)
|
||||||
|
|
Loading…
Reference in a new issue