c2936d4c1e87a2ee0d350e6cac32ebb97fbf92fe
[reactos.git] / reactos / ChangeLog
1 2002-11-13 Rick Gaiser <RickG81@Wanadoo.nl>
2
3 * drivers/bus/isapnp/isapnp.c (FindNextReadPort): Increment Port before
4 checking wether port address is in NE2000 address space range and returning
5 port address value.
6
7 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
8
9 * drivers/bus/acpi/include/acpi.h: Include platform/types.h.
10 * drivers/bus/acpi/include/actypes.h: (UINT8, BOOLEAN, UCHAR, UINT16,
11 INT32, UINT32, UINT64): Disable, use the OS defined types instead.
12 * drivers/bus/acpi/include/platform/types.h: Remove all types,
13 include ntos.h instead.
14 * drivers/bus/acpi/ospm/include/acpisys.h: Don't include
15 platform/types.h.
16
17 2002-11-10 Casper S. Hornstrup <chorns@users.sourceforge.net>
18
19 * include/defines.h: Fix warnings when bulding with gcc 3.3.
20 * include/ddk/status.h: Ditto.
21 * include/freetype/internal/ftdebug.h: Ditto.
22 * include/net/ndis.h: Ditto.
23 * lib/msafd/misc/helpers.c: Ditto.
24 * lib/user32/windows/defwnd.c: Ditto.
25 * lib/user32/windows/window.c: Ditto.
26 * ntoskrnl/cm/ntfunc.c: Ditto.
27 * ntoskrnl/cm/regfile.c: Ditto.
28 * ntoskrnl/cm/regobj.c: Ditto.
29 * ntoskrnl/dbg/errinfo.c: Ditto.
30 * ntoskrnl/ex/hashtab.c: Ditto.
31 * ntoskrnl/include/internal/mm.h: Ditto.
32 * ntoskrnl/io/irp.c: Ditto.
33 * ntoskrnl/kd/gdbstub.c: Ditto.
34 * ntoskrnl/ke/queue.c: Ditto.
35 * ntoskrnl/ke/sem.c: Ditto.
36 * ntoskrnl/ldr/resource.c: Ditto.
37 * ntoskrnl/mm/balance.c: Ditto.
38 * ntoskrnl/mm/freelist.c: Ditto.
39 * ntoskrnl/mm/mdl.c: Ditto.
40 * ntoskrnl/mm/npool.c: Ditto.
41 * ntoskrnl/mm/section.c: Ditto.
42 * ntoskrnl/rtl/error.c: Ditto.
43 * ntoskrnl/rtl/mem.c: Ditto.
44 * ntoskrnl/rtl/string.c: Ditto.
45 * ntoskrnl/rtl/time.c: Ditto.
46 * ntoskrnl/rtl/unicode.c: Ditto.
47 * ntoskrnl/rtl/wstring.c: Ditto.
48 * ntoskrnl/rtl/i386/exception.c: Ditto.
49 * subsys/win32k/freetype/src/base/ftinit.c: Ditto.
50
51 2002-11-03 Casper S. Hornstrup <chorns@users.sourceforge.net>
52
53 * apps/tests/lpc/lpcclt.c: Change LPC_MESSAGE_HEADER to LPC_MESSAGE.
54 * include/csrss/csrss.h: Ditto.
55 * include/lsass/lsass.h: Ditto.
56 * include/napi/dbg.h: Ditto.
57 * include/napi/lpc.h: Ditto.
58 * lib/kernel32/misc/console.c: Ditto.
59 * lib/ntdll/csr/lpc.c: Ditto.
60 * lib/ntdll/dbg/debug.c: Ditto.
61 * lib/secur32/lsa.c: Ditto.
62 * ntoskrnl/dbg/user.c: Ditto.
63 * ntoskrnl/include/internal/port.h: Ditto.
64 * ntoskrnl/lpc/connect.c: Ditto.
65 * ntoskrnl/lpc/reply.c: Ditto.
66 * ntoskrnl/ps/process.c: Ditto.
67 * subsys/csrss/api/conio.c: Ditto.
68 * subsys/csrss/api/process.c: Ditto.
69 * subsys/csrss/api/user.c: Ditto.
70
71 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
72
73 * lib/msvcrt/except/seh.s: Fix end-of-line formatting.
74 * lib/ntdll/rtl/i386/exception.c: Ditto.
75 * lib/ntdll/rtl/i386/except.s: Ditto.
76 * ntoskrnl/rtl/i386/except.s: Ditto.
77 * ntoskrnl/rtl/i386/seh.s: Ditto.
78
79 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
80
81 * lib/msvcrt/Makefile (OBJECTS_EXCEPT): Add except/seh.o; Remove
82 except/exhand3.o.
83 * lib/msvcrt/except/exhand2.c (MsvcrtDebug): New function.
84 * lib/msvcrt/except/unwind.c (PEXCEPTION_FRAME): Remove.
85 (_global_unwind2): Correct prototype.
86 * lib/ntdll/makefile (RTL_I386_OBJECTS, ARCH_OBJECTS): New groups.
87 (TARGET_OBJECTS): Add ARCH_OBJECTS group.
88 * lib/ntdll/rtl/exception.c (KiUserExceptionDispatcher): Set
89 NumberParameters in exception record.
90 (RtlRaiseStatus): Remove.
91 * ntoskrnl/Makefile (OBJECTS_RTL): Remove rtl/seh.o.
92 (OBJECTS_RTL_I386): Add rtl/i386/except.o, rtl/i386/exception.o, and
93 rtl/i386/seh.o.
94 * ntoskrnl/ke/catch.c (RtlpExecuteHandlerForException,
95 RtlpDumpExceptionRegistrations, RtlpDispatchException,
96 RtlpExecuteHandler, RtlpExceptionHandler, RtlpUnwindHandler,
97 RtlpExecuteHandlerForException, RtlpExecuteHandlerForUnwind,
98 RtlUnwind): Remove.
99 (RtlpDispatchException): Add prototype.
100 * ntoskrnl/ke/i386/usertrap.c (ExceptionTypeStrings): Remove.
101 * ntoskrnl/ps/create.c (PsCreateTeb): Mark end of exception
102 registration list.
103 * tools/helper.mk (TARGET_ASFLAGS): Add -g if DBG = 1.
104 * lib/msvcrt/except/exhand3.c: Remove.
105 * ntoskrnl/rtl/seh.c: Ditto.
106 * lib/msvcrt/except/seh.s: New file.
107 * lib/ntdll/rtl/i386/except.s: Ditto.
108 * lib/ntdll/rtl/i386/exception.c: Ditto.
109 * ntoskrnl/rtl/i386/except.s: Ditto.
110 * ntoskrnl/rtl/i386/exception.c: Ditto.
111 * ntoskrnl/rtl/i386/seh.s: Ditto.
112
113 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
114
115 * lib/kernel32/process/create.c (_except_handler): New function.
116 (BaseProcessStart): Ditto.
117 (KlCreateFirstThread): Return INVALID_HANDLE_VALUE on error; Call
118 BaseProcessStart() before process entry point.
119 * lib/kernel32/thread/thread.c (_except_handler): New function.
120 (ThreadStartup): Protect thread using SEH constructs.
121
122 2002-10-26 Casper S. Hornstrup <chorns@users.sourceforge.net>
123
124 * include/ddk/zw.h (NtProcessStartup): Use standard calling convention.
125 * subsys/csrss/csrss.c (NtProcessStartup): Ditto.
126 * subsys/smss/smss.c (NtProcessStartup): Ditto.
127 * subsys/system/autochk/autochk.c (NtProcessStartup): Ditto.
128 * subsys/system/usetup/usetup.c (NtProcessStartup): Ditto.
129
130 2002-10-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
131
132 * apps/tests/tokentest/tokentest.c (ROS_ACE_HEADER): Move field
133 AccessMask ...
134 (ROS_ACE): ... here.
135 (DisplayDacl): Make pAce an ROS_ACE*; Use new path for AceType; Use
136 sizeof(ACE) instead of sizeof(ACE_HEADER).
137 * include/ntos/security.h (ACE_HEADER): Move field AccessMask ...
138 (ACE): ... here.
139 * lib/ntdll/rtl/acl.c: Use new path for AccessMask.
140 * ntoskrnl/se/semgr.c: Ditto.
141 * ntoskrnl/se/acl.c (SepInitDACLs): Use new path for AccessMask; Use
142 sizeof(ACE) instead of sizeof(ACE_HEADER).
143 * ntoskrnl/se/token.c (SepCreateSystemProcessToken): Use sizeof(ACE)
144 instead of sizeof(ACE_HEADER).
145
146 2002-10-20 Casper S. Hornstrup <chorns@users.sourceforge.net>
147
148 * include/napi/teb.h (RTL_USER_PROCESS_PARAMETERS): Use field names
149 as described in Windows NT/2000 Native API Reference.
150 * lib/kernel32/file/file.c: Use new field names.
151 * lib/kernel32/misc/console.c: Ditto.
152 * lib/kernel32/process/create.c: Ditto.
153 * lib/kernel32/process/proc.c: Ditto.
154 * lib/ntdll/rtl/path.c: Ditto.
155 * lib/ntdll/rtl/ppb.c: Ditto.
156 * lib/ntdll/rtl/process.c: Ditto.
157
158 2002-10-19 Casper S. Hornstrup <chorns@users.sourceforge.net>
159
160 * include/ntos.h: Include relevant files.
161 * include/internal/ke.h: Include files relative to
162 ntoskrnl/include.
163 * include/internal/arch/ke.h: Ditto.
164
165 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
166
167 * drivers/dd/floppy/floppy.c: Changed PAGESIZE to PAGE_SIZE.
168 * drivers/fs/cdfs/fcb.c: Ditto.
169 * drivers/fs/cdfs/fsctl.c: Ditto.
170 * drivers/fs/cdfs/rw.c: Ditto.
171 * drivers/fs/ext2/dir.c: Ditto.
172 * drivers/fs/ext2/inode.c: Ditto.
173 * drivers/fs/ext2/rw.c: Ditto.
174 * drivers/fs/ext2/super.c: Ditto.
175 * drivers/fs/minix/blockdev.c: Ditto.
176 * drivers/fs/minix/cache.c: Ditto.
177 * drivers/fs/minix/inode.c: Ditto.
178 * drivers/fs/minix/rw.c: Ditto.
179 * drivers/fs/ntfs/fcb.c: Ditto.
180 * drivers/fs/ntfs/ntfs.h: Ditto.
181 * drivers/fs/vfat/create.c: Ditto.
182 * drivers/fs/vfat/direntry.c: Ditto.
183 * drivers/fs/vfat/dirwr.c: Ditto.
184 * drivers/fs/vfat/fat.c: Ditto.
185 * drivers/fs/vfat/fcb.c: Ditto.
186 * drivers/fs/vfat/fsctl.c: Ditto.
187 * drivers/fs/vfat/rw.c: Ditto.
188 * drivers/storage/class2/class2.c: Ditto.
189 * drivers/storage/scsiport/scsiport.c: Ditto.
190 * hal/halx86/adapter.c: Ditto.
191 * hal/halx86/mp.c: Ditto.
192 * include/ddk/mmfuncs.h: Ditto.
193 * include/ddk/mmtypes.h: Ditto.
194 * include/ddk/i386/pagesize.h: Ditto.
195 * include/ntdll/pagesize.h: Ditto.
196 * lib/kernel32/process/create.c: Ditto.
197 * lib/kernel32/thread/thread.c: Ditto.
198 * lib/ntdll/ldr/utils.c: Ditto.
199 * lib/ntdll/rtl/env.c: Ditto.
200 * lib/ntdll/rtl/heap.c: Ditto.
201 * lib/ntdll/rtl/ppb.c: Ditto.
202 * lib/ntdll/rtl/process.c: Ditto.
203 * lib/ntdll/rtl/thread.c: Ditto.
204 * ntoskrnl/cc/copy.c: Ditto.
205 * ntoskrnl/cc/view.c: Ditto.
206 * ntoskrnl/ex/sysinfo.c: Ditto.
207 * ntoskrnl/include/internal/i386/mm.h: Ditto.
208 * ntoskrnl/io/mdl.c: Ditto.
209 * ntoskrnl/ke/kthread.c: Ditto.
210 * ntoskrnl/ke/i386/kernel.c: Ditto.
211 * ntoskrnl/ldr/init.c: Ditto.
212 * ntoskrnl/ldr/loader.c: Ditto.
213 * ntoskrnl/mm/anonmem.c: Ditto.
214 * ntoskrnl/mm/cont.c: Ditto.
215 * ntoskrnl/mm/freelist.c: Ditto.
216 * ntoskrnl/mm/iospace.c: Ditto.
217 * ntoskrnl/mm/kmap.c: Ditto.
218 * ntoskrnl/mm/marea.c: Ditto.
219 * ntoskrnl/mm/mdl.c: Ditto.
220 * ntoskrnl/mm/mminit.c: Ditto.
221 * ntoskrnl/mm/ncache.c: Ditto.
222 * ntoskrnl/mm/npool.c: Ditto.
223 * ntoskrnl/mm/pagefile.c: Ditto.
224 * ntoskrnl/mm/pageop.c: Ditto.
225 * ntoskrnl/mm/section.c: Ditto.
226 * ntoskrnl/mm/slab.c: Ditto.
227 * ntoskrnl/mm/i386/page.c: Ditto.
228 * ntoskrnl/ob/handle.c: Ditto.
229 * ntoskrnl/ps/create.c: Ditto.
230 * ntoskrnl/ps/process.c: Ditto.
231 * ntoskrnl/ps/w32call.c: Ditto.
232 * subsys/win32k/include/object.h: Ditto.
233
234 2002-10-01 Casper S. Hornstrup <chorns@users.sourceforge.net>
235
236 * lib/ntdll/string/ctype.c: Undefine __MSVCRT__ to not have mingw
237 runtime import _pctype.
238
239 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
240
241 * lib/user32/misc/desktop.c (string.h): Include.
242 * lib/user32/misc/resources.c: Ditto.
243 * lib/user32/misc/winhelp.c: Ditto.
244 * lib/user32/windows/accel.c: Ditto.
245 * lib/user32/windows/bitmap.c: Ditto.
246 * subsys/win32k/freetype/ctype.c: Undefine __MSVCRT__ and _pctype to not
247 have mingw runtime import _pctype.
248
249 2002-09-30 Casper S. Hornstrup <chorns@users.sourceforge.net>
250
251 * ntoskrnl/cc/view.c (alloca): Prototype.
252 * ntoskrnl/rtl/ctype.c: Undefine __MSVCRT__ to not have mingw runtime
253 import _pctype.
254
255 2002-08-26 David Welch <welch@computer2.darkstar.org>
256
257 * lib/gdi32/misc/dllmain.c (GdiDllInitialize): Don't initialize
258 win32k.sys for each process.
259 * subsys/csrss/init.c (CsrServerInitialization): Initialize
260 win32k.sys as well.
261
262 2002-08-26 David Welch <welch@computer2.darkstar.org>
263
264 * ntoskrnl/ps/process.c (NtCreateProcess): Reference the
265 parent process's handle using ExGetPreviousMode.
266
267 2002-08-26 David Welch <welch@computer2.darkstar.org>
268
269 * lib/user32/misc/dllmain.c (Init): Initialize gdi32 as well.
270
271 2002-08-26 David Welch <welch@computer2.darkstar.org>
272
273 * iface/addsys/genw32k.c (main, process): Generate a set of
274 stubs for csrss as well.
275
276 2002-08-26 David Welch <welch@computer2.darkstar.org>
277
278 * lib/kernel32/process/create.c (CreateProcessW): Initialize
279 all the members of the new process's PPB.
280
281 2002-08-17 David Welch <welch@computer2.darkstar.org>
282
283 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): Ensure the
284 process isn't freed in the middle of our operations.
285
286 2002-08-17 David Welch <welch@computer2.darkstar.org>
287
288 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation): Fixed.
289
290 2002-08-17 David Welch <welch@computer2.darkstar.org>
291
292 * ntoskrnl/ps/create.c (PiDeleteThread): Don't dereference
293 the thread's process while holding the thread list lock.
294
295 2002-08-17 David Welch <welch@computer2.darkstar.org>
296
297 * ntoskrnl/mm/section.c (MmMapViewOfSection): Check there is
298 enough space for all parts of an image before mapping it; if
299 there isn't enough space free at the preferred base address
300 then try to choose a different one.
301
302 2002-08-17 David Welch <welch@computer2.darkstar.org>
303
304 * ntoskrnl/mm/mpw.c (MmInitMpwThread): Run the MPW thread at
305 idle priority.
306
307 2002-08-17 David Welch <welch@computer2.darkstar.org>
308
309 * ntoskrnl/mm/kmap.c (ExUnmapPage, ExAllocatePageWithPhysPage,
310 MiFreeNonPagedPoolRegion, MiAllocNonPagedPoolRegion): Maintain
311 a hint of the next free page; makes running with whole page
312 allocation more bearable.
313
314 2002-08-17 David Welch <welch@computer2.darkstar.org>
315
316 * ntoskrnl/mm/anonmem.c (MmPageOutVirtualMemory): Show an
317 out of swap space message if we are out of swap space.
318 * ntoskrnl/mm/section.c (MmPageOutSectionView): Show an
319 out of swap space message if we are out of swap space.
320 * ntoskrnl/mm/pagefile.c (MmAllocSwapPage): Don't automatically
321 show an out of swap space message on failure.
322 * ntoskrnl/mm/pagefile.c (MmShowOutOfSpaceMessagePagingFile): New
323 function to notify the user that the pagefile is full.
324
325 2002-08-17 David Welch <welch@computer2.darkstar.org>
326
327 * drivers/lib/zlib/Makefile: Create a dummy zlib.sym
328
329 2002-08-16 David Welch <welch@computer2.darkstar.org>
330
331 * ntoskrnl/mm/npool.c (ExAllocateWholePageBlock): Converted
332 to use PHYSICAL_ADDRESS type for page address.
333
334 2002-08-16 David Welch <welch@computer2.darkstar.org>
335
336 * subsys/win32k/ntuser/class.c (W32kCreateClass): Corrected
337 typo when calculating the offset into the class object to
338 put the class name string.
339
340 2002-08-16 David Welch <welch@computer2.darkstar.org>
341
342 * ntoskrnl/ps/thread.c (PsDispatchThreadNoLock): Don't call
343 the reaper function directly; set an event to wake up a seperate
344 reaper thread.
345 * ntoskrnl/ps/thread.c (PsReaperThreadMain): New function that
346 waits for a notification and then calls PsReapThreads.
347 * ntoskrnl/ps/thread.c (PsInitThreadManagement): Create the
348 reaper thread.
349
350 2002-08-15 David Welch <welch@computer2.darkstar.org>
351
352 * lib/advapi32/misc/dllmain.c (DllMain): Removed debug message.
353
354 2002-08-14 David Welch <welch@computer2.darkstar.org>
355
356 * subsys/smss/init.c (SmPagingFilesQueryRoutine): If possible
357 take the size of the paging file from the registry.
358
359 2002-08-14 David Welch <welch@computer2.darkstar.org>
360
361 * ntoskrnl/mm/section.c (MmCreateDataFileSection): Extend the
362 section if necessary.
363
364 2002-08-14 David Welch <welch@computer2.darkstar.org>
365
366 * ntoskrnl/mm/pagefile.c (NtCreatePagingFile): Set the file
367 size using the FileAllocationInformation class.
368
369 2002-08-14 David Welch <welch@computer2.darkstar.org>
370
371 * ntoskrnl/mm/anonmem.c (MmWritePageVirtualMemory): Implemented
372 function to write anonymous memory pages to the swap file.
373 * ntoskrnl/mm/anonmem.c (MmFreeVirtualMemoryPage): Free any
374 swap page associated with the page.
375 * ntoskrnl/mm/mpw.c (MmWriteDirtyPages): New function to find
376 pages to write to disk.
377 * ntoskrnl/mm/mpw.c (MmMpwThreadMain): Implemented MPW functionality.
378 * ntoskrnl/mm/rmap.c (MmWritePagePhysicalAddress): New function
379 to write a single page back to disk.
380 * ntoskrnl/mm/rmap.c (MmSetCleanAllRmaps, MmSetDirtyAllRmaps,
381 MmIsDirtyPageRmap): New rmap function to support the MPW thread.
382 * ntoskrnl/mm/section.c (MmWritePageSectionView): Implemented
383 function to write back section pages.
384 * ntoskrnl/mm/section.c (MmFreeSectionPage): Free any swap
385 entry associated with the page; mark pages shared with
386 the cache as dirty if necessary.
387
388 2002-08-14 David Welch <welch@computer2.darkstar.org>
389
390 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set name of
391 the module into the module text structure.
392
393 2002-08-14 David Welch <welch@computer2.darkstar.org>
394
395 * ntoskrnl/io/rw.c (NtReadFile, NtWriteFile): Use the correct
396 test for whether to wait for the completion of i/o.
397
398 2002-08-14 David Welch <welch@computer2.darkstar.org>
399
400 * ntoskrnl/cm/ntfunc.c (NtFlushKey): Request synchronous i/o
401 from NtOpenFile.
402 * ntoskrnl/cm/regfile (CmiInitPermanentRegistryHive): Request
403 synchronous i/o from NtCreateFile.
404 * ntoskrnl/dbg/kdb_stabs.c (LdrpLoadModuleSymbols): Request
405 synchronous i/o from NtOpenFile.
406 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Request synchronous i/o
407 from NtOpenFile.
408
409 2002-08-14 David Welch <welch@computer2.darkstar.org>
410
411 * ntoskrnl/cc/view.c (CcRosSuggestFreeCacheSegment): Maintain the
412 correct reference count.
413
414 2002-08-14 David Welch <welch@computer2.darkstar.org>
415
416 * ntoskrnl/cc/view.c (CcRosFlushCacheSegment): New function to
417 write back a modified cache segment.
418 * ntoskrnl/cc/view.c (CcRosFlushDirtyPages): New function to
419 flush some dirty pages from the cache.
420 * ntoskrnl/cc/view.c (CcRosMarkDirtyCacheSegment): New function to
421 mark a cache segment modified while mapped into memory as dirty.
422
423 2002-08-14 David Welch <welch@computer2.darkstar.org>
424
425 * ntoskrnl/cc/pin.c (CcMapData, CcUnpinData, CcSetDirtyPinnedData):
426 Store the dirty status in the BCB; don't write back dirty data
427 immediately.
428
429 2002-08-14 David Welch <welch@computer2.darkstar.org>
430
431 * include/ntos/mm.h: Added SEC_XXXX defines from 'Windows NT/2000
432 Native API Reference'
433
434 2002-08-14 David Welch <welch@computer2.darkstar.org>
435
436 * drivers/fs/vfat/ea.c (VfatSetExtendedAttributes): Empty
437 placeholder for extended attribute functions.
438
439 2002-08-14 David Welch <welch@computer2.darkstar.org>
440
441 * drivers/fs/vfat/finfo.c (VfatSetAllocationSizeInformation):
442 Added function to set allocation size.
443
444 2002-08-14 David Welch <welch@computer2.darkstar.org>
445
446 * drivers/fs/vfat/fcb.c (vfatFCBInitializeCache): Renamed
447 to vfatFCBInitializeCacheFromVolume.
448 * drivers/fs/vfat/fcb.c (vfatMakeFCBFromDirEntry): Don't
449 initialise the cache with a file object representing the
450 volume unless the FCB is for a directory.
451
452 2002-08-14 David Welch <welch@computer2.darkstar.org>
453
454 * drivers/fs/vfat/create.c (VfatPagingFileCreate): Added a
455 new function for handling paging file only code.
456 * drivers/fs/vfat/create.c (VfatSupersedeFile): Added a
457 new function for doing a file supersede.
458 * drivers/fs/vfat/create.c (VfatCreateFile): Reformatted and
459 adjusted control flow. Set allocation size and extended attributes
460 on create.
461 * drivers/fs/vfat/create.c (VfatCreate): Removed goto.
462
463 2002-08-14 David Welch <welch@computer2.darkstar.org>
464
465 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Renamed
466 updEntry to VfatUpdateEntry.
467 * drivers/fs/vfat/close.c (VfatCloseFile): Renamed
468 updEntry to VfatUpdateEntry.
469 * drivers/fs/vfat/dirwr.c (updEntry): Renamed to
470 VfatUpdateEntry.
471 * drivers/fs/vfat/dirwr.c (addEntry): Renamed to
472 VfatAddEntry.
473
474 2002-08-14 David Welch <welch@computer2.darkstar.org>
475
476 * apps/tests/sectest/sectest.c (main): Fixed formatting.
477
478 2002-08-10 David Welch <welch@computer2.darkstar.org>
479
480 * ntoskrnl/mm/i386/page.c (MmSetPageProtect): Fixed
481 behaviour when called on the system address space.
482
483 2002-08-10 David Welch <welch@computer2.darkstar.org>
484
485 * ntoskrnl/mm/virtual.c (MmQueryAnonMem, MmProtectAnonMem,
486 NtAllocateVirtualMemory, NtFreeVirtualMemory): Renamed
487 segments to regions; moved region code to seperate file.
488 Implemented NtQueryVirtualMemory and NtProtectVirtualMemory
489 for anonymous memory areas.
490
491 2002-08-10 David Welch <welch@computer2.darkstar.org>
492
493 * ntoskrnl/mm/anonmem.c: Moved functions relating to
494 areas created with NtAllocateVirtualMemory to a
495 seperate file.
496
497 2002-08-10 David Welch <welch@computer2.darkstar.org>
498
499 * ntoskrnl/mm/section.c (MmQuerySectionView): Implemented
500 NtQueryVirtualMemory for section views.
501
502 2002-08-10 David Welch <welch@computer2.darkstar.org>
503
504 * ntoskrnl/mm/section.c (MmAccessFaultSectionView,
505 MmNotPresentFaultSectionView, MmProtectSectionView,
506 MmMapViewOfSegment, MmAlterViewAttributes): Implemented
507 NtProtectVirtualMemory for section views.
508
509 2002-08-10 David Welch <welch@computer2.darkstar.org>
510
511 * ntoskrnl/ke/main.c: Removed SEH test code.
512
513 2002-08-10 David Welch <welch@computer2.darkstar.org>
514
515 * lib/ntdll/ldr/utils.c (LdrFixupImports): Remove the readonly
516 protection from the IAT before writing to it.
517
518 2002-08-10 David Welch <welch@computer2.darkstar.org>
519
520 * lib/ntdll/ldr/utils.c (LdrAdjustDllName): Properly null terminate
521 the base name of the DLL.
522
523 2002-08-10 David Welch <welch@computer2.darkstar.org>
524
525 * ntoskrnl/ldr/loader.c (LdrPEProcessModule): Set the text segment
526 of modules to readonly after loading.
527
528 2002-08-09 David Welch <welch@computer2.darkstar.org>
529
530 * ntoskrnl/ps/create.c (NtCreateThread): Call PsSuspendThread
531 if NtCreateThread has CreateSuspended as TRUE.
532 * ntoskrnl/ps/suspend.c (PsSuspendThread, PsResumeThread,
533 PiSuspendThreadKernelRoutine): Fixed suspend functionality.
534
535 2002-08-09 David Welch <welch@computer2.darkstar.org>
536
537 * ntoskrnl/ke/i386/usertrap.c (print_user_address): Copy
538 the LDR variable from the right address.
539
540 2002-08-09 David Welch <welch@computer2.darkstar.org>
541
542 * ntoskrnl/ke/apc.c (KiDeliverNormalApc): Check for
543 kernel APCs pending on exit from the kernel.
544 * ntoskrnl/ke/apc.c (KiDeliverNormalApc, KiDeliverUserApc,
545 KiDeliverApc): Set the APC's inserted flag to FALSE after
546 removing it from the thread's queue.
547
548 2002-08-09 David Welch <welch@computer2.darkstar.org>
549
550 * lib/kernel32/thread/thread.c (ThreadStartup): Don't
551 call DLL entrypoints; this is done by LdrInitializeThunk.
552 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
553 DLLs in initialization order; take the loader lock before
554 calling.
555
556 2002-08-09 David Welch <welch@computer2.darkstar.org>
557
558 * apps/tests/thread/thread.c (main): Test suspend and
559 resume functionality.
560
561 2002-08-08 David Welch <welch@computer2.darkstar.org>
562
563 * ntoskrnl/mm/section (NtQuerySection): Return the
564 right result length.
565
566 2002-08-08 David Welch <welch@computer2.darkstar.org>
567
568 * ntoskrnl/ke/usertrap.c (print_user_address): Check for
569 a NULL LDR structure in the PEB; copy the LDR pointer in
570 safely.
571
572 2002-08-08 David Welch <welch@computer2.darkstar.org>
573
574 * ntoskrnl/ke/apc.c (KiDeliverUserApc): Deliver all present
575 APCs; release the APC spinlock while acccessing user memory.
576
577 2002-08-08 David Welch <welch@computer2.darkstar.org>
578
579 * include/internal/ps.h: Adjusted offsets into the ETHREAD
580 structure.
581 * include/internal/ps.h: Removed redundant members from the
582 KTHREAD structure.
583 * ntoskrnl/ke/kthread.c (KeInitializeThread): Removed
584 redundant members from the KTHREAD structure.
585
586 2002-08-08 David Welch <welch@computer2.darkstar.org>
587
588 * ntoskrnl/dbg/kdb.c (KdbEnterDebuggerException): New
589 function to enter the debugger on an exception.
590 * ntoskrnl/kd/kdebug.c (KdInitSystem): Initialize the
591 local kernel debugger if enabled.
592 * ntoskrnl/ke/catch.c (KiDispatchException): Enter the
593 local kernel debugger on an exception.
594
595 2002-08-08 David Welch <welch@computer2.darkstar.org>
596
597 * include/ntdll/ldr.h: Added definition for a DLL entrypoint.
598 * lib/kernel32/process/create.c (KlCreateFirstThread): Put
599 the argument to the NtProcessStartup function on the stack.
600 * lib/kernel32/process/create.c (KlInitPeb): Read the
601 base address of the new image from the PEB.
602 * lib/kernel32/process/create.c (CreateProcessW): Start the
603 first thread at the entrypoint of the new image.
604 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): If the
605 function is called after the initial startup then just call the
606 entrypoints for the loaded DLLs with DLL_THREAD_ATTACH. Don't
607 call the entrypoint of the image.
608 * lib/ntdll/rtl/process.c (RtlpCreateFirstThread): Put the
609 argument to the NtProcessStartup function on the stack.
610 * lib/ntdll/rtl/process.c (KlInitPeb): Read the base address of
611 the new image from the PEB.
612 * lib/ntdll/rtl/process.c (RtlCreateUserProcess): Start the
613 first thread at the entrypoint of the new image.
614 * ntoskrnl/ke/i386/bthread.S (PsBeginThreadWithContextInternal):
615 Use the system call path to begin a usermode thread.
616 * ntoskrnl/ke/i386/thread.c (Ke386InitThreadWithContext): Convert
617 the supplied context into a trap frame.
618 * ntoskrnl/ldr/init.c (LdrLoadInitialProcess): Put the PEB argument
619 to the NtProcessStartup function on the new stack; start the
620 first thread at the entrypoint of the image.
621 * ntoskrnl/ps/create.c (NtCreateThread): Create an APC to call
622 LdrInitializeThunk in the context of a new thread before its
623 entrypoint.
624
625 2002-08-08 David Welch <welch@computer2.darkstar.org>
626
627 * drivers/fs/vfat/cleanup.c (VfatCleanupFile): Uninitialise
628 the cache on file cleanup.
629 * drivers/fs/vfat/fcb.c (vfatReleaseFcb): Don't uninitialise
630 the cache on file close.
631 * ntoskrnl/cc/copy.c: Renamed zero page global variable.
632 * ntoskrnl/cc/view.c: Added cache delete function.
633
634 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
635
636 * rules.mak (RSYM): Define.
637 * include/ddk/zwtypes.h (DebugDbgLoadSymbols): Add to enum
638 _DEBUG_CONTROL_CODE.
639 * include/ntdll/ldr.h (LDR_SYMBOL_INFO, LdrpLoadUserModuleSymbols): Add.
640 (LdrLoadModuleSymbols): Remove.
641 * include/ntos/kdbgsyms.h (ST_FILENAME, ST_FUNCTION,
642 ST_LINENUMBER): Add.
643 (SYMBOL). Make Name an ANSI_STRING.
644 (IMAGE_SYMBOL_INFO, AreSymbolsParsed): Add.
645 * lib/ntdll/ldr/startup.c (LdrInitializeThunk): Call
646 LdrpLoadUserModuleSymbols() not LdrLoadModuleSymbols().
647 * lib/ntdll/ldr/utils.c (LdrLoadModuleSymbols): Rename to
648 LdrpLoadUserModuleSymbols.
649 (LdrpLoadUserModuleSymbols): Use DebugDbgLoadSymbols debug control code.
650 (LdrLoadDll): assert if out of memory.
651 (LdrLoadDll): Call
652 LdrpLoadUserModuleSymbols(), not LdrLoadModuleSymbols().
653 * lib/ntdll/string/ctype.c (_pctype): #undef.
654 * ntoskrnl/dbg/dbgctrl.c (NtSystemDebugControl): Call
655 LdrLoadUserModuleSymbols on DebugDbgLoadSymbols.
656 * ntoskrnl/include/internal/ldr.h (LdrGetAddressInformation): Add.
657 * ntoskrnl/include/internal/module.h (MODULE_TEXT_SECTION): Make SymbolInfo
658 an IMAGE_SYMBOL_INFO.
659 * ntoskrnl/ke/i386/exp.c (LdrGetAddressInformation): Add prototype.
660 (print_address): Change #ifdef KDBG to #ifdef DBG.
661 (KiDoubleFaultHandler, KiDumpTrapFrame, KeDumpStackFrames): Dump
662 one stack frame per line.
663 * ntoskrnl/ke/i386/multiboot.S: Create pagetables for more kernel
664 address space so larger modules can be passed from the boot loader.
665 * ntoskrnl/ke/i386/usertrap.c (LdrGetAddressInformation): Add prototype.
666 (print_user_address): Print symbols using LdrGetAddressInformation().
667 * ntoskrnl/ldr/loader.c (SYMBOLFILE_HEADER, IMAGE_SYMBOL_INFO_CACHE,
668 STAB_ENTRY, N_FUN, N_SLINE, N_SO, SymbolListHead): Add.
669 (TAG_SYM_BUF): Remove.
670 (LdrInitDebug): Remove unneeded code.
671 (LdrInit1): Prepare for loading symbols.
672 (LdrpReadLine, HexL, LdrpParseLine, LdrpLoadModuleSymbolsFromBuffer,
673 LdrpLoadUserModuleSymbolsFromBuffer): Remove.
674 (LdrpParseImageSymbols, LdrpGetFileName, LdrpGetFunctionName,
675 LdrpGetLineNumber, LdrGetAddressInformation, LdrpLookupUserSymbolInfo): Add.
676 (LdrpLoadModuleSymbols, LdrInitializeBootStartDriver): Change to use new
677 symbol structures.
678 (LdrLoadUserModuleSymbols): Cache symbol buffers.
679 (LdrUnloadModuleSymbols): Implement.
680 (LdrLoadModule, LdrUnloadModule): Change #ifdef KDBG to #ifdef DBG.
681 (LdrPEProcessModule): Split a line into two lines.
682 (LdrPEProcessModule): Setup for loading symbols.
683 * ntoskrnl/ldr/sysdll.c (LdrpMapSystemDll): Open with FILE_SHARE_READ.
684 * ntoskrnl/ps/process.c (PiFreeSymbols): Call LdrUnloadModuleSymbols() to
685 free symbols.
686 (PiDeleteProcess): Change #ifdef KDBG to #ifdef DBG.
687 * ntoskrnl/rtl/ctype.c (_pctype): #undef.
688 * ntoskrnl/rtl/string.c (strncpy): Terminate destination string.
689 * tools/Makefile (rsym): Add target.
690 * tools/helper.mk: Include config and use -g if DBG = 1.
691
692 2002-07-13 Casper S. Hornstrup <chorns@users.sourceforge.net>
693
694 * Makefile (install_before): Install system.hiv to correct location.
695
696 2002-07-04 David Welch <welch@computer2.darkstar.org>
697
698 * subsys/win32k/include/callback.h: Fixed callback argument
699 definitions.
700 * subsys/win32k/ntuser/winpos.c: Implemented some more of the windows
701 sizing/moving code.
702 * subsys/win32k/ntuser/painting.c: Implemented some more of the
703 window painting code.
704 * subsys/win32k/objects/coord.c: Implemented LPtoDP and DPtoLP.
705 * subsys/win32k/objects/region.c: Added stubs for some more
706 region functions.
707
708 2002-07-04 David Welch <welch@computer2.darkstar.org>
709
710 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the
711 process desktop handle as well.
712
713 2002-07-04 David Welch <welch@computer2.darkstar.org>
714
715 * ntoskrnl/se/token.c: Don't call the ZwXXX variant of
716 system calls when in system context.
717
718 2002-07-04 David Welch <welch@computer2.darkstar.org>
719
720 * ntoskrnl/Makefile: Added file with MDA output code.
721 * ntoskrnl/kd/kdebug.c: Recognize MDA as a destination for
722 debug output.
723
724 2002-07-04 David Welch <welch@computer2.darkstar.org>
725
726 * lib/user32/windows/defwnd.c: Implemented some more of the
727 default window handler.
728
729 2002-07-04 David Welch <welch@computer2.darkstar.org>
730
731 * lib/user32/misc/stubs.c: Removed some stubs to seperate files.
732
733 2002-07-04 David Welch <welch@computer2.darkstar.org>
734
735 * lib/user32/user32.def: Export ScreenToClient otherwise we
736 get problems when code in user32 tries to call it.
737
738 2002-07-04 David Welch <welch@computer2.darkstar.org>
739
740 * include/win32k/region.h: Added prototypes for some missing
741 region functions.
742
743 2002-07-04 David Welch <welch@computer2.darkstar.org>
744
745 * include/win32k/ntuser.h: Added prototypes for some missing
746 NtUserXXX functions.
747
748 2002-07-04 David Welch <welch@computer2.darkstar.org>
749
750 * include/user32/wininternal.h: Added some constants for
751 private GetDCEx styles that WINE needs.
752
753 2002-07-04 David Welch <welch@computer2.darkstar.org>
754
755 * include/user32/callback.h: Fixed callbacks for messages with
756 parameters.
757
758 2002-07-04 David Welch <welch@computer2.darkstar.org>
759
760 * include/napi/win32.h (W32THREAD): Added pointer to the
761 thread's desktop.
762 * include/napi/win32.h (W32PROCESS): Removed handle table,
763 added a pointer to the process's window station.
764 * subsys/win32k/ntuser/guicheck.c (W32kGuiCheck): Reference
765 a process's window station on the first win32k system call. Reference
766 a thread's desktop on the first win32k system call.
767
768 2002-07-04 David Welch <welch@computer2.darkstar.org>
769
770 * include/messages.h: Added some missing WM_XXX constants.
771
772 2002-07-04 David Welch <welch@computer2.darkstar.org>
773
774 * drivers/dd/ide/makefile: Compiling with debugging messages
775 needs libgcc to be linked in.
776
777 2002-07-04 David Welch <welch@computer2.darkstar.org>
778
779 * iface/addsys/genw32k.c: Generate a variable with the
780 number of system calls.
781 * iface/native/genntdll.c: Generate a proper stack frame for
782 the user system call stubs.
783 * ntoskrnl/ke/i386/syscall.S: Generate a proper stack frame for
784 the handler for system calls.
785
786 2002-07-04 David Welch <welch@computer2.darkstar.org>
787
788 * Makefile: Build the GUI startup application.
789 * subsys/system/gstart/gstart.c: Application to start up
790 the GUI.
791
792 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
793
794 * tools/helper.mk: Make an import library a proper target
795 depending on the .def file.
796
797 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
798
799 * subsys/win32k/ntuser/window.c (NtUserGetWindowLong): Began
800 implementation.
801
802 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
803
804 * subsys/win32k/misc/object.c (ObmCreateHandle): Return the
805 correct handle value.
806
807 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
808
809 * subsys/win32k/makefile: Make win32k depend on the file containing
810 the service table.
811
812 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
813
814 * ntoskrnl/ke/i386/stkswitch.S (KeSwitchStackAndRet,
815 KePushAndStackSwitchAndSysRet): Push one value only.
816 * ntoskrnl/ps/w32call.c (NtCallbackReturn, NtW32Call): Moved
817 these functions to a new file. Restore the old trap frame after
818 returning from a callback.
819
820 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
821
822 * lib/user32/windows/message.c (CallWindowProcA, CallWindowProcW):
823 Convert message to Unicode or ASCII if necessary.
824
825 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
826
827 * include/user32/callback.h: Added WM_CREATE and WM_NCCALCSIZE
828 callbacks.
829 * lib/user32/windows/window.c (User32SendCREATEMessageForKernel,
830 User32SendNCCREATEMessageForKernel): Implemented.
831 * subsys/win32k/ntuser/callback.c (W32kSendCREATEMessage):
832 Implemented.
833
834 2002-06-18 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
835
836 * include/structs.h: Added Unicode and ASCII versions of
837 CREATESTRUCT.
838
839 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
840
841 * tools/helper.mk: Make the install target depend on all the
842 files to be installed.
843
844 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
845
846 * ntoskrnl/ps/thread.c (NtCallbackReturn): Set TSS.Esp0 to the
847 top of the old stack.
848 * ntoskrnl/ps/thread.c (NtW32Call): Set TSS.Esp0 to the top of
849 the new stack. Free the callback stack correctly. Don't copy
850 portion of the trap frame that doesn't exist in non-v86-mode
851 interrupts.
852 * ntoskrnl/ps/thread.c (PsFreeCallbackStack): New function to
853 free a stack allocated with PsAllocateCallbackStack.
854
855 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
856
857 * drivers/dd/null/makefile: Commented out local LDFLAGS as
858 these cause bad relocations in the stripped image.
859
860 2002-06-16 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
861
862 * config: Corrected spelling error.
863
864 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
865
866 * subsys/system/winlogon/winlogon.c (WinMain): Check for
867 failure when creating a window system.
868
869 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
870
871 * ntoskrnl/ob/handle.c (ObDuplicateObject): Added this internal
872 function for duplicating objects.
873 * ntoskrnl/ps/process.c (NtCreateProcess): Duplicate the parent
874 process's window station to the child process.
875 * ntoskrnl/ps/process.c (PsInitProcessManagement): Initialize the
876 first process's window station.
877
878 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
879
880 * ntoskrnl/mm/marea.c (MmCreateMemoryArea): Initialise
881 page operation structure members.
882 * ntoskrnl/mm/pageop.c (MmReleasePageOp, MmGetPageOp): Increment
883 or decrement the page operation count in the memory area.
884 * ntoskrnl/mm/virtual.c (MmNotPresentFaultVirtualMemory,
885 MmPageOutVirtualMemory): Check for a deleted memory area before
886 handling the fault.
887 * ntoskrnl/mm/virtual.c (MmFreeVirtualMemory): Wait for all
888 page operations to finish before freeing the memory area.
889
890 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
891
892 * ntoskrnl/ke/i386/syscall.S (interrupt_handler2e): Corrected
893 test for previous mode, upper 16-bit of CS on the stack after an
894 interrupt are arbitary.
895
896 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
897
898 * lib/user32/misc/winsta.c: Cleaned up indentation.
899
900 2002-06-11 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
901
902 * apps/tests/winhello/winhello.c (WinMain, MainWndProc):
903 Cleaned up formatting, some more error checks.
904
905 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
906
907 * ntoskrnl/mm/virtual.c (MmSecureVirtualMemory,
908 MmUnsecureVirtualMemory, NtQueryVirtualMemory): Corrected indentation.
909
910 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
911
912 * ntoskrnl/ke/i386/exp.c (KiDoubleFaultHandler): Print CR3
913 correctly.
914
915 2002-06-04 David Welch <welch@whitehall1-5.seh.ox.ac.uk>
916
917 * ntoskrnl/include/internal/ps.h: Added KTHREAD_STACK_LIMIT definition.
918 * ntoskrnl/ke/i386/tskswitch.S (Ki386ContextSwitch): Force all the
919 pages of the kernel stack to be accessible from this process.
920
921 2002-06-04 David Welch <welch@cwcom.net>
922
923 * ntoskrnl/cc/view.c (ReadCacheSegmentChain): Changes to use
924 PHYSICAL_ADDRESS type for physical addresses.
925 * ntoskrnl/cc/copy.c (CcRosCreateCacheSegment): Changes to use
926 PHYSICAL_ADDRESS type for physical addresses.
927 * ntoskrnl/cc/copy.c (CcFreeCachePage): Changes to use
928 PHYSICAL_ADDRESS type for physical addresses.
929 * ntoskrnl/include/internal/mm.h: Changed prototypes to use
930 PHYSICAL_ADDRESS type for physical addresses.
931 * ntoskrnl/include/internal/ps.h (KPROCESS): Changed type of
932 page directory base to PHYSICAL_ADDRESS.
933 * ntoskrnl/include/internal/i386/mm.h: Changed prototypes to use
934 PHYSICAL_ADDRESS type for physical addresses.
935 * ntoskrnl/ke/kthread.c (KeFreeStackPage): Changes to use
936 PHYSICAL_ADDRESS type for physical addresses.
937 * ntoskrnl/ke/kthread.c (KeInitializeThread): Changes to use
938 PHYSICAL_ADDRESS type for physical addresses.
939 * ntoskrnl/ke/process.c (KeAttachProcess, KeDetachProcess): Changes
940 to use PHYSICAL_ADDRESS type for physical addresses.
941 * ntoskrnl/ke/kernel.c (PcrPages, KeApplicationProcessorInit): Changes
942 to use PHYSICAL_ADDRESS type for physical addresses.
943 * ntoskrnl/mm/balance.c (MM_ALLOCATION_REQUEST): Changes to use
944 PHYSICAL_ADDRESS type for physical addresses.
945 * ntoskrnl/mm/balance.c (MmReleasePageMemoryConsumer): Changes to use
946 PHYSICAL_ADDRESS type for physical addresses.
947 * ntoskrnl/mm/balance.c (MmRequestPageMemoryConsumer): Changes to use
948 PHYSICAL_ADDRESS type for physical addresses.
949 * ntoskrnl/mm/cont.c (MmFreeContinuousPage): Changes to use
950 PHYSICAL_ADDRESS type for physical addresses.
951 * ntoskrnl/mm/cont.c (MmAllocateContinuousAlignedMemory): Changes to
952 use PHYSICAL_ADDRESS type for physical addresses.
953 * ntoskrnl/mm/freelist.c (MmTransferOwnershipPage,
954 MmGetLRUFirstUserPage, MmGetLRUNextUserPage, MmGetContinuousPages,
955 MmInitializePageList, MmSetFlagsPage, MmSetRmapListHeadPage,
956 MmGetRmapListHeadPage, MmMarkPageMapped, MmMarkPageUnmapped,
957 MmGetFlagsPage, MmSetSavedSwapEntryPage, MmGetSavedSwapEntryPage,
958 MmReferencePage, MmGetReferenceCountPage, MmIsUsablePage,
959 MmDereferencePage, MmGetLockCountPage, MmLockPage, MmUnlockPage,
960 MmAllocPage): Changes to use PHYSICAL_ADDRESS type for physical
961 addresses.
962 * ntoskrnl/mm/iospace.c (MmMapIoSpace): Changes to use
963 PHYSICAL_ADDRESS type for physical addresses.
964 * ntoskrnl/mm/kmap.c (ExAllocatePage, MiZeroPage, MiCopyFromUserPage,
965 ExAllocatePageWithPhysPage): Changes to use PHYSICAL_ADDRESS type for
966 physical addresses.
967 * ntoskrnl/mm/marea.c (MmFreeMemoryArea): Changes to use
968 PHYSICAL_ADDRESS type for physical addresses.
969 * ntoskrnl/mm/mdl.c (MmUnlockPages, MmMapLockedPages,
970 MmProbeAndLockPages): Changes to use PHYSICAL_ADDRESS type for
971 physical addresses.
972 * ntoskrnl/mm/mm.c (MmSharedDataPagePhysicalAddress,
973 MmCommitPagedPoolAddress, MmNotPresentFault): Changes to use
974 PHYSICAL_ADDRESS type for physical addresses.
975 * ntoskrnl/mm/mminit.c (MmInitVirtualMemory): Changes to use
976 PHYSICAL_ADDRESS type for physical addresses.
977 * ntoskrnl/mm/ncache.c (MmAllocateNonCachedMemory,
978 MmFreeNonCachedPage): Changes to use PHYSICAL_ADDRESS type for
979 physical addresses.
980 * ntoskrnl/mm/npool.c (grow_kernel_pool): Changes to use
981 PHYSICAL_ADDRESS type for physical addresses.
982 * ntoskrnl/mm/rmap.c (MmPageOutPhysicalAddress, MmInsertRmap,
983 MmDeleteAllRmaps, MmDeleteRmap): Changes to use
984 PHYSICAL_ADDRESS type for physical addresses.
985 * ntoskrnl/mm/section.c (MiReadPage, MmNotPresentFaultSectionView,
986 MmAccessFaultSectionView, MmPageOutDeleteMapping,
987 MmPageOutSectionView, MmFreeSectionPage): Changes to use
988 PHYSICAL_ADDRESS type for physical addresses.
989 * ntoskrnl/mm/slab.c (ExGrowSlabCache): Changes to use
990 PHYSICAL_ADDRESS type for physical address.
991 * ntoskrnl/mm/virtual.c (MmPageOutVirtualMemory,
992 MmNotPresentFaultVirtualMemory, MmFreeVirtualMemoryPage): Changes to
993 use PHYSICAL_ADDRESS type for physical address.
994 * ntoskrnl/mm/wset.c (MmTrimUserMemory): Changes to use
995 PHYSICAL_ADDRESS type for physical address.
996 * ntoskrnl/mm/page.c (Mmi386ReleaseMmInfo, MmCopyMmInfo,
997 MmGetPhysicalAddressForProcess, MmCreateVirtualMapping,
998 MmCreateVirtualMappingUnsafe, MmCreateVirtualMappingForProcess,
999 MmDeleteVirtualMapping): Changes to use PHYSICAL_ADDRESS type for
1000 physical address.
1001 * ntoskrnl/ps/process (PsInitProcessManagment): Changes to use
1002 PHYSICAL_ADDRESS type for physical address.
1003 * ntoskrnl/ps/thread.c (PsAllocateCallbackStack): Changes to use
1004 PHYSICAL_ADDRESS type for physical address.
1005
1006 2002-06-04 David Welch <welch@cwcom.net>
1007
1008 * Lots of change since the ChangeLog was last updated.
1009
1010 2001-03-18 David Welch <welch@cwcom.net>
1011
1012 * ntoskrnl/ke/apc.c (KiDeliverApc): Bug fix.
1013 * ntoskrnl/ke/apc.c (KeInsertQueueApc): More comments.
1014 * ntoskrnl/ke/catch.c (KiDispatchException): Bug fix.
1015 * ntoskrnl/ke/timer.c (KeDelayExecutionThread): Don't use removed
1016 function KeAddTimeoutThread.
1017 * ntoskrnl/ke/timer.c (KeAddTimeoutThread): Removed.
1018 * ntoskrnl/ke/wait.c (KeWaitForSingleObject, KeWaitForMultipleObjects):
1019 Don't use KeAddTimeoutThread.
1020 * ntoskrnl/mm/freelist.c (MmAllocateContiguousAlignedMemory): Bug fix
1021 * ntoskrnl/mm/freelist.c (MmAllocatePage): Allocate from the top
1022 memory.
1023
1024 2001-03-17 David Welch <welch@cwcom.net>
1025
1026 * ntoskrnl/ke/catch.c (KiDispatchException): Implementation of
1027 exception handling, user-mode only.
1028
1029 2001-03-16 David Welch <welch@cwcom.net>
1030
1031 * include/ddk/zw.h: Corrected declarations of NtCreateProfile,
1032 NtQueryIntervalProfile, NtSetIntervalProfile.
1033 * include/ddk/zwtypes.h: Added definitions of KPROFILE_SOURCE.
1034 * ntoskrnl/include/internal/ke.h: Added the interrupted EIP as a
1035 parameter to KiUpdateSystemTime for profiling purposes.
1036 * ntoskrnl/include/internal/nt: Added declaration for profiling
1037 support initialization.
1038 * ntoskrnl/ke/timer.c (KiUpdateSystemTime, KeExpireTimers): Call
1039 the profiling code on a timer interrupt with the interrupt EIP.
1040 * ntoskrnl/ke/i386/irq.c (KiDispatchInterrupt): Pass the interrupted
1041 EIP to KiUpdateSystemTime.
1042 * ntoskrnl/mm/virtual.c (NtReadVirtualMemory, NtWriteVirtualMemory):
1043 Release the MDLs used properly.
1044 * ntoskrnl/nt/nt.c: Call the profiling support initialization.
1045 * ntoskrnl/nt/ntevent.c (NtCreateEvent): Don't try copying the
1046 ObjectAttributes parameter if it is NULL.
1047 * ntoskrnl/nt/profile.c: Implemented profiling.
1048
1049 2001-03-16 David Welch <welch@cwcom.net>
1050
1051 * ntoskrnl/include/internal/safe.h: Corrected typo.
1052 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtQueryEvent):
1053 Corrected typos.
1054 * ntoskrnl/rtl/mem.c: Missing header file.
1055
1056 2001-03-16 David Welch <welch@cwcom.net>
1057
1058 * ntoskrnl/include/internal/safe.h: Add definitions for handling
1059 potentially unsafe pointers.
1060
1061 2001-03-16 David Welch <welch@cwcom.net>
1062
1063 * ntoskrnl/include/internal/mm.h: Removed MmSafeCopyToUser and
1064 MmSafeCopyFromUser as source files need these but don't want internal
1065 mm definitions.
1066 * ntoskrnl/nt/ntevent.c (NtCreateEvent, NtOpenEvent, NtPulseEvent,
1067 NtQueryEvent, NtResetEvent, NtSetEvent): Copy data to and from
1068 user mode safely.
1069 * ntoskrnl/rtl/mem.c (MmCopyToCaller, MmCopyFromCaller): Helper
1070 functions for copying data to and from potentially unsafe pointers.
1071
1072 2000-12-23 David Welch <welch@cwcom.net>
1073
1074 * All task switching is done in software.
1075 * Beginnings of v86 mode support.
1076
1077 2000-12-22 David Welch <welch@cwcom.net>
1078
1079 * ntoskrnl/ps/kill.c (PiTerminateProcessThreads): Drop
1080 PiThreadListLock before calling PsTerminateOtherThread
1081
1082 2000-12-16 David Welch <welch@cwcom.net>
1083
1084 * ntoskrnl/ex/fmutex.c (ExReleaseFastMutexUnsafe): Only set the
1085 fast mutex's owner back to NULL if it is being released
1086
1087 2000-12-10 David Welch <welch@cwcom.net>
1088
1089 * ntoskrnl/ke/i386/vm86_sup.S (Ki386RetToV86Mode): Added function
1090 to do the raw switch to v86 mode.
1091 * ntoskrnl/include/internal/vm86.h: Definitions for the v86 mode
1092 support.
1093
1094 2000-12-10 David Welch <welch@cwcom.net>
1095
1096 * ntoskrnl/ke/i386/trap.s (PsBeginThreadWithContextInternal): Moved
1097 to ntoskrnl/ke/i386/bswitch.S.
1098 * ntoskrnl/ke/i386/trap.s (interrupt_handler2e): Moved to
1099 ntoskrnl/ke/i386/syscall.S.
1100 * ntoskrnl/ke/i386/trap.s (old_interrupt_handler2e): Removed.
1101
1102 2000-12-04 David Welch <welch@cwcom.net>
1103
1104 * ntoskrnl/ke/i386/irq.c (KiInterruptDispatch): Record the last PC
1105 value for a rescheduled thread.
1106 * ntoskrnl/ke/i386/irqhand.s: Construct a primitive trap frame
1107 in interrupt handlers.
1108
1109 2000-08-30 David Welch <welch@cwcom.net>
1110
1111 * Added calibration of KeStallExecutionProcessor timing
1112 (code from linux 2.2.16).
1113
1114 * Corrected compilation bugs in user32 library.
1115
1116 * Corrected compilation bugs related to anonymous structs
1117 in ndis code.
1118
1119 * Pass command line to kernel from loadros.
1120
1121 * Corrected PIC mask calculation.
1122
1123 2000-05-27 David Welch <welch@cwcom.net>
1124
1125 * Fixed issue with closing non-existent or already closed
1126 handle.
1127
1128 2000-01-26 David Welch <welch@cwcom.net>
1129
1130 * ZwCreateProcess now maps ntdll rather than the user-mode
1131 code.
1132
1133 1999-09-06 David Welch <welch@cwcom.net>
1134
1135 * Implemented ZwOpenProcess.
1136
1137 * Partially implemented killing other threads (possible memory
1138 leaks).
1139
1140 * Made a start on a proper implemention of APCs (based on
1141 article in NT insider).
1142
1143 1998-12-08 David Welch <welch@cwcom.net>
1144
1145 * Corrected bug in shell (Read two keypresses and assumed they
1146 where the key going up and down respectively).
1147
1148 * Corrected race in dpc handling.
1149
1150 * Took out cleanup sections in ZwReadFile (now handled by the
1151 APC).
1152
1153 * Disabled broken code in kernel32.
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163