1 /* COPYRIGHT: See COPYING in the top level directory
2 * PROJECT: ReactOS kernel
3 * FILE: ntoskrnl/cc/fs.c
4 * PURPOSE: Implements MDL Cache Manager Functions
5 * PROGRAMMER: Alex Ionescu
10 /* INCLUDES ******************************************************************/
12 #include <ddk/ntddk.h>
13 #include <ddk/ntifs.h>
14 #include <internal/mm.h>
15 #include <internal/cc.h>
16 #include <internal/pool.h>
17 #include <internal/io.h>
18 #include <ntos/minmax.h>
21 #include <internal/debug.h>
23 /* FUNCTIONS *****************************************************************/
31 IN PFILE_OBJECT FileObject
,
32 IN PLARGE_INTEGER FileOffset
,
35 OUT PIO_STATUS_BLOCK IoStatus
41 /**********************************************************************
43 * CcMdlReadCompleteDev@8
55 * Used by CcMdlReadComplete@8 and FsRtl
59 CcMdlReadCompleteDev (IN PMDL MdlChain
,
60 IN PDEVICE_OBJECT DeviceObject
)
66 /**********************************************************************
78 * From Bo Branten's ntifs.h v13.
83 CcMdlReadComplete (IN PFILE_OBJECT FileObject
,
86 PDEVICE_OBJECT DeviceObject
= NULL
;
88 DeviceObject
= IoGetRelatedDeviceObject (FileObject
);
89 /* FIXME: try fast I/O first */
90 CcMdlReadCompleteDev (MdlChain
,
100 IN PFILE_OBJECT FileObject
,
101 IN PLARGE_INTEGER FileOffset
,
114 IN PFILE_OBJECT FileObject
,
127 IN PFILE_OBJECT FileObject
,
128 IN PLARGE_INTEGER FileOffset
,
131 OUT PIO_STATUS_BLOCK IoStatus