2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Kernel
4 * FILE: ntoskrnl/cache/logsup.c
5 * PURPOSE: Logging and configuration routines
6 * PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
9 /* INCLUDES *******************************************************************/
16 /* GLOBALS ********************************************************************/
18 /* FUNCTIONS ******************************************************************/
22 CcpBuildCacheMdl(PFILE_OBJECT FileObject
,
23 PLARGE_INTEGER FileOffset
,
25 PIO_STATUS_BLOCK IOSB
)
30 BOOLEAN Result
= CcMapData(FileObject
,
39 IOSB
->Information
= 0;
40 IOSB
->Status
= STATUS_UNSUCCESSFUL
;
44 IOSB
->Information
= Length
;
45 IOSB
->Status
= STATUS_SUCCESS
;
47 Mdl
= IoAllocateMdl(Buffer
, Length
, FALSE
, FALSE
, NULL
);
51 IOSB
->Information
= 0;
52 IOSB
->Status
= STATUS_NO_MEMORY
;
56 IOSB
->Information
= Length
;
57 IOSB
->Status
= STATUS_SUCCESS
;
64 CcMdlRead(IN PFILE_OBJECT FileObject
,
65 IN PLARGE_INTEGER FileOffset
,
68 OUT PIO_STATUS_BLOCK IoStatus
)
70 *MdlChain
= CcpBuildCacheMdl(FileObject
, FileOffset
, Length
, IoStatus
);
75 CcMdlReadComplete(IN PFILE_OBJECT FileObject
,
83 CcMdlReadComplete2(IN PMDL MdlChain
,
84 IN PFILE_OBJECT FileObject
)
91 CcPrepareMdlWrite(IN PFILE_OBJECT FileObject
,
92 IN PLARGE_INTEGER FileOffset
,
95 OUT PIO_STATUS_BLOCK IoStatus
)
97 *MdlChain
= CcpBuildCacheMdl(FileObject
, FileOffset
, Length
, IoStatus
);
102 CcMdlWriteComplete(IN PFILE_OBJECT FileObject
,
103 IN PLARGE_INTEGER FileOffset
,
111 CcMdlWriteComplete2(IN PFILE_OBJECT FileObject
,
112 IN PLARGE_INTEGER FileOffset
,
120 CcMdlWriteAbort(IN PFILE_OBJECT FileObject
,