diff --git a/reactos/doc/notes b/reactos/doc/notes index 25900e924cd..74b3f2766c2 100644 --- a/reactos/doc/notes +++ b/reactos/doc/notes @@ -5,6 +5,15 @@ dashes on a line by themselves. If you implement the fix reffered to in a message, feel free to delete it from the file. Rex *** ----- +Subject: [ros-kernel] Inside the Boot Process +Date: Mon, 22 Mar 1999 22:05:47 +0100 +From: Emanuele Aliberti + +For those working on the boot loader: in WinNt Magazine november 1998 +issue (http://www.winntmag.com/) there is a detailed description, by +Mark Russinovich, of the rôle the MBR, NTLDR, boot.ini, ntdetect.com... +play in the boot process ("Inside the Boot Process, Part 1"). +----- Yes with DPCs, KeDrainDpcQueue should go to HIGH_LEVEL because it needs to synchronize with KeInsertDpcQueue. Also the idle thread should run at DISPATCH_LEVEL and regularly drain the dpc queue, that diff --git a/reactos/drivers/dd/blue/blue.c b/reactos/drivers/dd/blue/blue.c index 0ac64ae69cb..3b8e0424bda 100644 --- a/reactos/drivers/dd/blue/blue.c +++ b/reactos/drivers/dd/blue/blue.c @@ -1,6 +1,7 @@ #include #include +#include #include #include #include diff --git a/reactos/include/base.h b/reactos/include/base.h index a1737b9879d..1538e56e48d 100644 --- a/reactos/include/base.h +++ b/reactos/include/base.h @@ -465,8 +465,10 @@ typedef enum _TOKEN_INFORMATION_CLASS { #define INDEXTOSTATEIMAGEMASK(i) ((i) << 12) #ifdef UNICODE +#define _T(quote) L##quote #define TEXT(quote) L##quote #else +#define _T(quote) L##quote #define TEXT(quote) quote #endif diff --git a/reactos/include/internal/i386/mmhal.h b/reactos/include/internal/i386/mmhal.h index 1eac41cc807..1e52ae8ee52 100644 --- a/reactos/include/internal/i386/mmhal.h +++ b/reactos/include/internal/i386/mmhal.h @@ -2,8 +2,8 @@ * Lowlevel memory managment definitions */ -#ifndef __INTERNAL_HAL_PAGE_H -#define __INTERNAL_HAL_PAGE_H +#ifndef __INTERNAL_HAL_I386_MMHAL_H +#define __INTERNAL_HAL_I386_MMHAL_H #include @@ -60,4 +60,4 @@ VOID MmSetPageProtect(PEPROCESS Process, ULONG flProtect); BOOLEAN MmIsPagePresent(PEPROCESS Process, PVOID Address); -#endif /* __INTERNAL_HAL_PAGE_H */ +#endif /* __INTERNAL_HAL_I386_MMHAL_H */ diff --git a/reactos/include/internal/stddef.h b/reactos/include/internal/stddef.h index 116693146ba..6192b0ce167 100644 --- a/reactos/include/internal/stddef.h +++ b/reactos/include/internal/stddef.h @@ -2,9 +2,12 @@ * Some useful things */ -//#define NULL ((void*)0) +#ifndef _INTERNAL_STDDEF_H +#define _INTERNAL_STDDEF_H + #ifndef NULL #define NULL (0) #endif +#endif diff --git a/reactos/include/internal/string.h b/reactos/include/internal/string.h index 5550e3d750e..1f201d3f952 100644 --- a/reactos/include/internal/string.h +++ b/reactos/include/internal/string.h @@ -5,6 +5,10 @@ #include #endif +#ifndef _INTERNAL_STDDEF_H +#include +#endif + /* * On a 486 or Pentium, we are better off not using the * byte string operations. But on a 386 or a PPro the diff --git a/reactos/include/internal/types.h b/reactos/include/internal/types.h index e69de29bb2d..1afed206ced 100644 --- a/reactos/include/internal/types.h +++ b/reactos/include/internal/types.h @@ -0,0 +1,7 @@ + +#ifndef _LINUX_TYPES_H +#define _LINUX_TYPES_H + +typedef unsigned int size_t; + +#endif diff --git a/reactos/lib/kernel32/file/deviceio.c b/reactos/lib/kernel32/file/deviceio.c index 5a9189ca515..8d25ca2e484 100644 --- a/reactos/lib/kernel32/file/deviceio.c +++ b/reactos/lib/kernel32/file/deviceio.c @@ -44,7 +44,7 @@ DeviceIoControl( bFsIoControlCode = TRUE; else bFsIoControlCode = FALSE; -CHECKPOINT +// CHECKPOINT if(lpOverlapped != NULL) { hEvent = lpOverlapped->hEvent; lpOverlapped->Internal = STATUS_PENDING; @@ -54,13 +54,13 @@ CHECKPOINT IoStatusBlock = &IIosb; } -CHECKPOINT +// CHECKPOINT if(bFsIoControlCode == TRUE) { errCode = NtFsControlFile(hDevice,hEvent,NULL,NULL,IoStatusBlock,dwIoControlCode,lpInBuffer, nInBufferSize, lpOutBuffer, nOutBufferSize ); } else { errCode = NtDeviceIoControlFile(hDevice,hEvent,NULL,NULL,IoStatusBlock,dwIoControlCode, lpInBuffer, nInBufferSize, lpOutBuffer, nOutBufferSize); } -CHECKPOINT +// CHECKPOINT if(errCode == STATUS_PENDING ) { if(NtWaitForSingleObject(hDevice,FALSE,NULL) < 0) { @@ -73,12 +73,12 @@ CHECKPOINT SetLastError(RtlNtStatusToDosError(errCode)); return FALSE; } -CHECKPOINT +// CHECKPOINT if (lpOverlapped) *lpBytesReturned = lpOverlapped->InternalHigh; else *lpBytesReturned = IoStatusBlock->Information; -CHECKPOINT +// CHECKPOINT return TRUE; } diff --git a/reactos/makefile.dos b/reactos/makefile.dos index 97725e8f312..8aa3350ab55 100644 --- a/reactos/makefile.dos +++ b/reactos/makefile.dos @@ -19,7 +19,7 @@ include rules.mak # # Required to run the system # -COMPONENTS = iface_native ntoskrnl kernel32 ntdll +COMPONENTS = iface_native ntoskrnl ntdll kernel32 # crtdll mingw32 # diff --git a/reactos/ntoskrnl/ex/resource.c b/reactos/ntoskrnl/ex/resource.c index 530047e26b4..04569aaa144 100644 --- a/reactos/ntoskrnl/ex/resource.c +++ b/reactos/ntoskrnl/ex/resource.c @@ -37,7 +37,6 @@ #include #include -#include #include #define NDEBUG diff --git a/reactos/ntoskrnl/makefile_rex b/reactos/ntoskrnl/makefile_rex index be98e9ef9c8..541a55f6745 100644 --- a/reactos/ntoskrnl/makefile_rex +++ b/reactos/ntoskrnl/makefile_rex @@ -144,5 +144,5 @@ ex/napi.o: ex/napi.c ../include/ntdll/napi.h #WITH_DEBUGGING = yes WIN32_LEAN_AND_MEAN = yes -WARNINGS_ARE_ERRORS = yes +#WARNINGS_ARE_ERRORS = yes include ../rules.mak