2004-08-15 Casper S. Hornstrup <chorns@users.sourceforge.net>
[reactos.git] / reactos / ntoskrnl / cc / mdl.c
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
6 * UPDATE HISTORY:
7 * Created 20/06/04
8 */
9
10 /* INCLUDES ******************************************************************/
11
12 #include <ntoskrnl.h>
13 #define NDEBUG
14 #include <internal/debug.h>
15
16 /* FUNCTIONS *****************************************************************/
17
18 /*
19 * @unimplemented
20 */
21 VOID
22 STDCALL
23 CcMdlRead (
24 IN PFILE_OBJECT FileObject,
25 IN PLARGE_INTEGER FileOffset,
26 IN ULONG Length,
27 OUT PMDL * MdlChain,
28 OUT PIO_STATUS_BLOCK IoStatus
29 )
30 {
31 UNIMPLEMENTED;
32 }
33
34 /**********************************************************************
35 * NAME INTERNAL
36 * CcMdlReadCompleteDev@8
37 *
38 * DESCRIPTION
39 *
40 * ARGUMENTS
41 * MdlChain
42 * DeviceObject
43 *
44 * RETURN VALUE
45 * None.
46 *
47 * NOTE
48 * Used by CcMdlReadComplete@8 and FsRtl
49 *
50 */
51 VOID STDCALL
52 CcMdlReadCompleteDev (IN PMDL MdlChain,
53 IN PDEVICE_OBJECT DeviceObject)
54 {
55 UNIMPLEMENTED;
56 }
57
58
59 /**********************************************************************
60 * NAME EXPORTED
61 * CcMdlReadComplete@8
62 *
63 * DESCRIPTION
64 *
65 * ARGUMENTS
66 *
67 * RETURN VALUE
68 * None.
69 *
70 * NOTE
71 * From Bo Branten's ntifs.h v13.
72 *
73 * @unimplemented
74 */
75 VOID STDCALL
76 CcMdlReadComplete (IN PFILE_OBJECT FileObject,
77 IN PMDL MdlChain)
78 {
79 PDEVICE_OBJECT DeviceObject = NULL;
80
81 DeviceObject = IoGetRelatedDeviceObject (FileObject);
82 /* FIXME: try fast I/O first */
83 CcMdlReadCompleteDev (MdlChain,
84 DeviceObject);
85 }
86
87 /*
88 * @unimplemented
89 */
90 VOID
91 STDCALL
92 CcMdlWriteComplete (
93 IN PFILE_OBJECT FileObject,
94 IN PLARGE_INTEGER FileOffset,
95 IN PMDL MdlChain
96 )
97 {
98 UNIMPLEMENTED;
99 }
100
101 /*
102 * @unimplemented
103 */
104 VOID
105 STDCALL
106 CcMdlWriteAbort (
107 IN PFILE_OBJECT FileObject,
108 IN PMDL MdlChain
109 )
110 {
111 UNIMPLEMENTED;
112 }
113
114 /*
115 * @unimplemented
116 */
117 VOID
118 STDCALL
119 CcPrepareMdlWrite (
120 IN PFILE_OBJECT FileObject,
121 IN PLARGE_INTEGER FileOffset,
122 IN ULONG Length,
123 OUT PMDL * MdlChain,
124 OUT PIO_STATUS_BLOCK IoStatus
125 )
126 {
127 UNIMPLEMENTED;
128 }