reactos/ntoskrnl/mm/kmap.c
Art Yerkes c501d8112c Create a branch for network fixes.
svn path=/branches/aicom-network-fixes/; revision=34994
2008-08-01 11:32:26 +00:00

51 lines
1.2 KiB
C

/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/kmap.c
* PURPOSE: Implements the kernel memory pool
*
* PROGRAMMERS: David Welch (welch@cwcom.net)
*/
/* INCLUDES ****************************************************************/
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
/* GLOBALS *****************************************************************/
/* FUNCTIONS ***************************************************************/
NTSTATUS
NTAPI
MiZeroPage(PFN_TYPE Page)
{
PVOID TempAddress;
TempAddress = MmCreateHyperspaceMapping(Page);
if (TempAddress == NULL)
{
return(STATUS_NO_MEMORY);
}
memset(TempAddress, 0, PAGE_SIZE);
MmDeleteHyperspaceMapping(TempAddress);
return(STATUS_SUCCESS);
}
NTSTATUS
NTAPI
MiCopyFromUserPage(PFN_TYPE DestPage, PVOID SourceAddress)
{
PVOID TempAddress;
TempAddress = MmCreateHyperspaceMapping(DestPage);
if (TempAddress == NULL)
{
return(STATUS_NO_MEMORY);
}
memcpy(TempAddress, SourceAddress, PAGE_SIZE);
MmDeleteHyperspaceMapping(TempAddress);
return(STATUS_SUCCESS);
}