[ros-diffs] [pschweitzer] 49044: [NTOSKRNL] On boot, while loading drivers, make starting Loader Block available to the whole kernel to let drivers calling on-boot functions that may need it. One of them will ...
pschweitzer at svn.reactos.org
pschweitzer at svn.reactos.org
Thu Oct 7 20:20:11 UTC 2010
Author: pschweitzer
Date: Thu Oct 7 20:20:10 2010
New Revision: 49044
URL: http://svn.reactos.org/svn/reactos?rev=49044&view=rev
Log:
[NTOSKRNL]
On boot, while loading drivers, make starting Loader Block available to the whole kernel to let drivers calling on-boot functions that may need it.
One of them will be implemented later.
Modified:
trunk/reactos/ntoskrnl/io/iomgr/iomgr.c
Modified: trunk/reactos/ntoskrnl/io/iomgr/iomgr.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/iomgr.c?rev=49044&r1=49043&r2=49044&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/iomgr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/iomgr.c [iso-8859-1] Thu Oct 7 20:20:10 2010
@@ -82,6 +82,8 @@
GENERAL_LOOKASIDE IopMdlLookasideList;
extern GENERAL_LOOKASIDE IoCompletionPacketLookaside;
+PLOADER_PARAMETER_BLOCK IopLoaderBlock;
+
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, IoInitSystem)
#endif
@@ -493,6 +495,9 @@
/* Initialize HAL Root Bus Driver */
HalInitPnpDriver();
+ /* Make loader block available for the whole kernel */
+ IopLoaderBlock = LoaderBlock;
+
/* Load boot start drivers */
IopInitializeBootDrivers();
@@ -506,6 +511,9 @@
IopStartRamdisk(LoaderBlock);
}
+ /* No one should need loader block any longer */
+ IopLoaderBlock = NULL;
+
/* Create ARC names for boot devices */
if (!NT_SUCCESS(IopCreateArcNames(LoaderBlock))) return FALSE;
More information about the Ros-diffs
mailing list