[ros-diffs] [tkreuzer] 35547: Setup KUSER_SHARED_DATA.

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Sat Aug 23 03:19:35 CEST 2008


Author: tkreuzer
Date: Fri Aug 22 20:19:34 2008
New Revision: 35547

URL: http://svn.reactos.org/svn/reactos?rev=35547&view=rev
Log:
Setup KUSER_SHARED_DATA.

Modified:
    branches/ros-amd64-bringup/reactos/boot/freeldr/freeldr/arch/amd64/loader.c

Modified: branches/ros-amd64-bringup/reactos/boot/freeldr/freeldr/arch/amd64/loader.c
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/boot/freeldr/freeldr/arch/amd64/loader.c?rev=35547&r1=35546&r2=35547&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/boot/freeldr/freeldr/arch/amd64/loader.c [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/boot/freeldr/freeldr/arch/amd64/loader.c [iso-8859-1] Fri Aug 22 20:19:34 2008
@@ -198,6 +198,7 @@
 FrLdrSetupPageDirectory(VOID)
 {
 	ULONG KernelPages;
+	PVOID UserSharedData;
 
 	/* Allocate a Page for the PML4 */
 	pPML4 = MmAllocateMemoryWithType(PAGE_SIZE, LoaderSpecialMemory);
@@ -238,9 +239,15 @@
 	TssBase = GdtBase + 20 * sizeof(ULONG64); // FIXME: don't hardcode
 	if (!FrLdrMapSinglePage(GdtBase, (ULONGLONG)pGdt))
 	{
-		DbgPrint("Could not map idt page.\n", KernelPages);
-	}
-
+		DbgPrint("Could not map gdt page.\n", KernelPages);
+	}
+
+	/* Setup KUSER_SHARED_DATA page */
+	UserSharedData = MmAllocateMemoryWithType(PAGE_SIZE, LoaderSpecialMemory);
+	if (!FrLdrMapSinglePage(KI_USER_SHARED_DATA, (ULONG64)UserSharedData))
+	{
+		DbgPrint("Could not map KUSER_SHARED_DATA page.\n", KernelPages);
+	}
 
 }
 



More information about the Ros-diffs mailing list