[CMAKE]
[reactos.git] / ntoskrnl / cc / cacheman.c
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS kernel
4 * FILE: ntoskrnl/cc/cacheman.c
5 * PURPOSE: Cache manager
6 *
7 * PROGRAMMERS: David Welch (welch@cwcom.net)
8 */
9
10 /* INCLUDES *****************************************************************/
11
12 #include <ntoskrnl.h>
13 #define NDEBUG
14 #include <debug.h>
15
16 PFSN_PREFETCHER_GLOBALS CcPfGlobals;
17
18 /* FUNCTIONS *****************************************************************/
19
20 VOID
21 NTAPI
22 CcPfInitializePrefetcher(VOID)
23 {
24 /* Notify debugger */
25 DbgPrintEx(DPFLTR_PREFETCHER_ID,
26 DPFLTR_TRACE_LEVEL,
27 "CCPF: InitializePrefetecher()\n");
28
29 /* Setup the Prefetcher Data */
30 InitializeListHead(&CcPfGlobals.ActiveTraces);
31 InitializeListHead(&CcPfGlobals.CompletedTraces);
32 ExInitializeFastMutex(&CcPfGlobals.CompletedTracesLock);
33
34 /* FIXME: Setup the rest of the prefetecher */
35 }
36
37 BOOLEAN
38 NTAPI
39 CcInitializeCacheManager(VOID)
40 {
41 CcInitView();
42 return TRUE;
43 }
44
45 /*
46 * @unimplemented
47 */
48 LARGE_INTEGER
49 NTAPI
50 CcGetFlushedValidData (
51 IN PSECTION_OBJECT_POINTERS SectionObjectPointer,
52 IN BOOLEAN BcbListHeld
53 )
54 {
55 LARGE_INTEGER i;
56
57 UNIMPLEMENTED;
58
59 i.QuadPart = 0;
60 return i;
61 }
62
63 /*
64 * @unimplemented
65 */
66 PVOID
67 NTAPI
68 CcRemapBcb (
69 IN PVOID Bcb
70 )
71 {
72 UNIMPLEMENTED;
73
74 return 0;
75 }
76
77 /*
78 * @unimplemented
79 */
80 VOID
81 NTAPI
82 CcScheduleReadAhead (
83 IN PFILE_OBJECT FileObject,
84 IN PLARGE_INTEGER FileOffset,
85 IN ULONG Length
86 )
87 {
88 UNIMPLEMENTED;
89 }
90
91 /*
92 * @unimplemented
93 */
94 VOID
95 NTAPI
96 CcSetAdditionalCacheAttributes (
97 IN PFILE_OBJECT FileObject,
98 IN BOOLEAN DisableReadAhead,
99 IN BOOLEAN DisableWriteBehind
100 )
101 {
102 UNIMPLEMENTED;
103 }
104
105 /*
106 * @unimplemented
107 */
108 VOID
109 NTAPI
110 CcSetBcbOwnerPointer (
111 IN PVOID Bcb,
112 IN PVOID Owner
113 )
114 {
115 UNIMPLEMENTED;
116 }
117
118 /*
119 * @unimplemented
120 */
121 VOID
122 NTAPI
123 CcSetDirtyPageThreshold (
124 IN PFILE_OBJECT FileObject,
125 IN ULONG DirtyPageThreshold
126 )
127 {
128 UNIMPLEMENTED;
129 }
130
131 /*
132 * @unimplemented
133 */
134 VOID
135 NTAPI
136 CcSetReadAheadGranularity (
137 IN PFILE_OBJECT FileObject,
138 IN ULONG Granularity
139 )
140 {
141 UNIMPLEMENTED;
142 }