Author: tkreuzer Date: Fri Jul 23 03:36:31 2010 New Revision: 48208
URL: http://svn.reactos.org/svn/reactos?rev=48208&view=rev Log: - fix merge artifacts - reduce diff to trunk
Modified: branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.pspec branches/ros-amd64-bringup/reactos/lib/newinflib/infpriv.h branches/ros-amd64-bringup/reactos/lib/newinflib/infros.h branches/ros-amd64-bringup/reactos/lib/newinflib/infrosget.c branches/ros-amd64-bringup/reactos/lib/sdk/crt/locale/locale.c branches/ros-amd64-bringup/reactos/lib/sdk/crt/securecrt/invalidp.c branches/ros-amd64-bringup/reactos/ntoskrnl/include/internal/amd64/mm.h branches/ros-amd64-bringup/reactos/ntoskrnl/kd64/kddata.c branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/stubs.c branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/iosup.c branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/miarm.h branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/pagfault.c branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/syspte.c branches/ros-amd64-bringup/reactos/ntoskrnl/mm/amd64/init.c branches/ros-amd64-bringup/reactos/ntoskrnl/mm/section.c
Modified: branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.pspec URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/wi... ============================================================================== --- branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.pspec [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.pspec [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -211,7 +211,6 @@ @ stdcall CreateWaitableTimerExA(ptr str long long) @ stdcall CreateWaitableTimerExW(ptr wstr long long) @ stdcall CreateWaitableTimerW(ptr long wstr) -@ stdcall CreateWaitableTimerW(ptr long str) @ stdcall DeactivateActCtx(long ptr) @ stdcall DebugActiveProcess(long) @ stdcall DebugActiveProcessStop(long)
Modified: branches/ros-amd64-bringup/reactos/lib/newinflib/infpriv.h URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/ne... ============================================================================== --- branches/ros-amd64-bringup/reactos/lib/newinflib/infpriv.h [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/lib/newinflib/infpriv.h [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -116,7 +116,7 @@ PULONG RequiredSize); extern INFSTATUS InfpGetIntField(PINFCONTEXT Context, ULONG FieldIndex, - INT* IntegerValue); + PLONG IntegerValue); extern INFSTATUS InfpGetMultiSzField(PINFCONTEXT Context, ULONG FieldIndex, PWSTR ReturnBuffer,
Modified: branches/ros-amd64-bringup/reactos/lib/newinflib/infros.h URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/ne... ============================================================================== --- branches/ros-amd64-bringup/reactos/lib/newinflib/infros.h [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/lib/newinflib/infros.h [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -50,7 +50,7 @@ PULONG RequiredSize); extern BOOLEAN InfGetIntField(PINFCONTEXT Context, ULONG FieldIndex, - PINT IntegerValue); + PLONG IntegerValue); extern BOOLEAN InfGetMultiSzField(PINFCONTEXT Context, ULONG FieldIndex, PWSTR ReturnBuffer,
Modified: branches/ros-amd64-bringup/reactos/lib/newinflib/infrosget.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/ne... ============================================================================== --- branches/ros-amd64-bringup/reactos/lib/newinflib/infrosget.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/lib/newinflib/infrosget.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -84,7 +84,7 @@ BOOLEAN InfGetIntField(PINFCONTEXT Context, ULONG FieldIndex, - INT* IntegerValue) + PLONG IntegerValue) { return INF_SUCCESS(InfpGetIntField(Context, FieldIndex, IntegerValue)); }
Modified: branches/ros-amd64-bringup/reactos/lib/sdk/crt/locale/locale.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sd... ============================================================================== --- branches/ros-amd64-bringup/reactos/lib/sdk/crt/locale/locale.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/locale/locale.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -1421,120 +1421,6 @@
/********************************************************************* - * __lc_collate_cp (MSVCRT.@) - * - * @unimplemented - */ -void __lc_collate_cp(int cp) -{ -FIXME("__lc_collate_cp - stub\n"); -return; -} - - -/********************************************************************* - * __lc_handle (MSVCRT.@) - * - * @unimplemented - */ -void __lc_handle(void) -{ -FIXME("__lc_handle - stub\n"); -return; -} - - -/********************************************************************* - * __lc_codepage (MSVCRT.@) - * - * @unimplemented - */ -void __lc_codepage(void) -{ -FIXME("__lc_codepage - stub\n"); -return; -} - - -/********************************************************************* - * _Gettnames (MSVCRT.@) - */ -void *_Gettnames(void) -{ - FIXME("(void), stub!\n"); - return NULL; -} - -/********************************************************************* - * __lconv_init (MSVCRT.@) - */ -void __lconv_init(void) -{ - char Char = (char) UCHAR_MAX; - - TRACE("__lconv_init()\n"); - - _lconv.int_frac_digits = Char; - _lconv.frac_digits = Char; - _lconv.p_sep_by_space = _lconv.n_sep_by_space = Char; - _lconv.p_cs_precedes = _lconv.n_cs_precedes = Char; - _lconv.p_sign_posn = _lconv.n_sign_posn = Char; -} - - -/********************************************************************* - * _Strftime (MSVCRT.@) - */ -const char* _Strftime(char *out, unsigned int len, const char *fmt, - const void *tm, void *foo) -{ - /* FIXME: */ - FIXME("(%p %d %s %p %p) stub\n", out, len, fmt, tm, foo); - return ""; -} - - -/********************************************************************* - * _Getdays (MSVCRT.@) - */ -const char* _Getdays(void) -{ - static const char *MSVCRT_days = ":Sun:Sunday:Mon:Monday:Tue:Tuesday:Wed:" - "Wednesday:Thu:Thursday:Fri:Friday:Sat:Saturday"; - /* FIXME: Use locale */ - FIXME("(void) semi-stub\n"); - return MSVCRT_days; -} - -/********************************************************************* - * _Getmonths (MSVCRT.@) - */ -const char* _Getmonths(void) -{ - static const char *MSVCRT_months = ":Jan:January:Feb:February:Mar:March:Apr:" - "April:May:May:Jun:June:Jul:July:Aug:August:Sep:September:Oct:" - "October:Nov:November:Dec:December"; - /* FIXME: Use locale */ - FIXME("(void) semi-stub\n"); - return MSVCRT_months; -} - -/********************************************************************* - * __crtLCMapStringA (MSVCRT.@) - */ -int __crtLCMapStringA( - LCID lcid, DWORD mapflags, const char* src, int srclen, char* dst, - int dstlen, unsigned int codepage, int xflag -) { - TRACE("(lcid %lx, flags %lx, %s(%d), %p(%d), %x, %d), partial stub!\n", - lcid,mapflags,src,srclen,dst,dstlen,codepage,xflag); - /* FIXME: A bit incorrect. But msvcrt itself just converts its - * arguments to wide strings and then calls LCMapStringW - */ - return LCMapStringA(lcid,mapflags,src,srclen,dst,dstlen); -} - -/********************************************************************* * __crtLCMapStringW (MSVCRT.@) */ int __crtLCMapStringW( @@ -1547,38 +1433,4 @@ return LCMapStringW(lcid,mapflags,src,srclen,dst,dstlen); }
-int CDECL _getmbcp(void) -{ - return MSVCRT___lc_codepage; -} - -/********************************************************************* - * ___unguarded_readlc_active_add_func (MSVCRT.@) - */ -unsigned int * CDECL ___unguarded_readlc_active_add_func(void) -{ - return &__unguarded_readlc_active; -} - -/********************************************************************* - * ___setlc_active_func (MSVCRT.@) - */ -unsigned int CDECL ___setlc_active_func(void) -{ - return __setlc_active; -} - -/********************************************************************* - * __crtGetStringTypeW(MSVCRT.@) - * - * This function was accepting different number of arguments in older - * versions of msvcrt. - */ -BOOL CDECL __crtGetStringTypeW(DWORD unk, DWORD type, - wchar_t *buffer, int len, WORD *out) -{ - FIXME("(unk %x, type %x, wstr %p(%d), %p) partial stub\n", - unk, type, buffer, len, out); - - return GetStringTypeW(type, buffer, len, out); -} +
Modified: branches/ros-amd64-bringup/reactos/lib/sdk/crt/securecrt/invalidp.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/sd... ============================================================================== --- branches/ros-amd64-bringup/reactos/lib/sdk/crt/securecrt/invalidp.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/lib/sdk/crt/securecrt/invalidp.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -1,3 +1,4 @@ +#if 0 #include <precomp.h> #include <errno.h>
@@ -67,3 +68,4 @@ invalid_parameter_handler = handler; return old; } +#endif
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/include/internal/amd64/mm.h URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/include/internal/amd64/mm.h [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/include/internal/amd64/mm.h [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -24,6 +24,8 @@ #define MI_SYSTEM_CACHE_WS_START (PVOID)0xFFFFF78000001000ULL // CHECKME
#define MI_LOWEST_VAD_ADDRESS (PVOID)0x000000007FF00000ULL + +#define MI_SYSTEM_PTE_BASE (PVOID)MiAddressToPte(KSEG0_BASE)
/* Memory sizes */ #define MI_MIN_PAGES_FOR_NONPAGED_POOL_TUNING ((255*1024*1024) >> PAGE_SHIFT) @@ -47,6 +49,10 @@ #define MI_MIN_SECONDARY_COLORS 8 #define MI_SECONDARY_COLORS 64 #define MI_MAX_SECONDARY_COLORS 1024 + +#define MI_MIN_ALLOCATION_FRAGMENT (4 * _1KB) +#define MI_ALLOCATION_FRAGMENT (64 * _1KB) +#define MI_MAX_ALLOCATION_FRAGMENT (2 * _1MB)
#define MM_HIGHEST_VAD_ADDRESS \ (PVOID)((ULONG_PTR)MM_HIGHEST_USER_ADDRESS - (16 * PAGE_SIZE))
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/kd64/kddata.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/kd64/kddata.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/kd64/kddata.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -9,9 +9,9 @@ /* INCLUDES ******************************************************************/
#include <ntoskrnl.h> -#include "../mm/ARM3/miarm.h" #define NDEBUG #include <debug.h> +#include "../mm/ARM3/miarm.h"
VOID NTAPI RtlpBreakWithStatusInstruction(VOID);
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/stubs.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/stubs.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ke/amd64/stubs.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -96,26 +96,6 @@ return STATUS_UNSUCCESSFUL; }
-NTSYSAPI -NTSTATUS -NTAPI -NtContinue( - IN PCONTEXT ThreadContext, IN BOOLEAN RaiseAlert) -{ - UNIMPLEMENTED; - return STATUS_UNSUCCESSFUL; -} - -NTSYSAPI -NTSTATUS -NTAPI -NtRaiseException -(IN PEXCEPTION_RECORD ExceptionRecord, IN PCONTEXT ThreadContext, IN BOOLEAN HandleException ) -{ - UNIMPLEMENTED; - return STATUS_UNSUCCESSFUL; -} - NTSTATUS NTAPI NtSetLdtEntries
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/iosup.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/iosup.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/iosup.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -54,6 +54,7 @@ PMMPTE PointerPte; PVOID BaseAddress; MMPTE TempPte; + PMMPFN Pfn1 = NULL; MI_PFN_CACHE_ATTRIBUTE CacheAttribute; BOOLEAN IsIoMapping;
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/miarm.h URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/miarm.h [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/miarm.h [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -69,17 +69,15 @@ #define PDE_COUNT 1024 #define PTE_COUNT 1024 #elif defined(_M_AMD64) -#define PD_COUNT (512 * 512) -#define PDE_COUNT 512 -#define PTE_COUNT 512 +#define PD_COUNT PPE_PER_PAGE +#define PDE_COUNT PDE_PER_PAGE +#define PTE_COUNT PTE_PER_PAGE #elif defined(_M_ARM) #define PD_COUNT 1 #define PDE_COUNT 4096 #define PTE_COUNT 256 #else -#define PD_COUNT PPE_PER_PAGE -#define PDE_COUNT PDE_PER_PAGE -#define PTE_COUNT PTE_PER_PAGE +#error unknown architecture #endif
#ifdef _M_IX86 @@ -284,7 +282,6 @@ LIST_ENTRY ListHeads[POOL_LISTS_PER_PAGE]; } POOL_DESCRIPTOR, *PPOOL_DESCRIPTOR;
-#ifndef _WIN64 typedef struct _POOL_HEADER { union @@ -322,32 +319,6 @@ }; }; } POOL_HEADER, *PPOOL_HEADER; -#else -typedef struct _POOL_HEADER -{ - union - { - struct - { - ULONG PreviousSize : 8; - ULONG PoolIndex : 8; - ULONG BlockSize : 8; - ULONG PoolType : 8; - }; - ULONG Ulong1; - }; - ULONG PoolTag; - union - { - PEPROCESS* ProcessBilled; - struct - { - USHORT AllocatorBackTraceIndex; - USHORT PoolTagHash; - }; - }; -} POOL_HEADER, *PPOOL_HEADER; -#endif
C_ASSERT(sizeof(POOL_HEADER) == POOL_BLOCK_SIZE); C_ASSERT(POOL_BLOCK_SIZE == sizeof(LIST_ENTRY)); @@ -421,7 +392,7 @@ extern BOOLEAN MmMirroring; extern BOOLEAN MmMakeLowMemory; extern BOOLEAN MmEnforceWriteProtection; -extern BOOLEAN MmAllocationFragment; +extern SIZE_T MmAllocationFragment; extern ULONG MmConsumedPoolPercentage; extern ULONG MmVerifyDriverBufferType; extern ULONG MmVerifyDriverLevel;
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/pagfault.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/pagfault.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/pagfault.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -322,6 +322,7 @@ { KIRQL OldIrql = KeGetCurrentIrql(), LockIrql; PMMPTE PointerPte; + PMMPDE PointerPde; MMPTE TempPte; PETHREAD CurrentThread; PEPROCESS CurrentProcess; @@ -336,6 +337,7 @@ // Get the PTE and PDE // PointerPte = MiAddressToPte(Address); + PointerPde = MiAddressToPde(Address);
// // Check for dispatch-level snafu @@ -364,7 +366,7 @@ // // Is the PDE valid? // - if (!MiIsPdeForAddressValid(Address)) + if (!PointerPde->u.Hard.Valid == 0) { // // Debug spew (eww!) @@ -379,7 +381,7 @@ // // Now we SHOULD be good // - if (!MiIsPdeForAddressValid(Address)) + if (PointerPde->u.Hard.Valid == 0) { // // FIXFIX: Do the S-LIST hack @@ -428,8 +430,7 @@ // // This might happen...not sure yet // - //DPRINT1("FAULT ON PAGE TABLES: %p %lx %lx!\n", Address, *PointerPte, *PointerPde); - DPRINT1("FAULT ON PAGE TABLES\n"); + DPRINT1("FAULT ON PAGE TABLES: %p %lx %lx!\n", Address, *PointerPte, *PointerPde);
// // Map in the page table
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/syspte.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/syspte.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/syspte.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -64,8 +64,7 @@ // Now move to the first free system PTE cluster // PreviousPte = PointerPte; - PointerPte = MmSystemPtesStart[SystemPtePoolType] + - PointerPte->u.List.NextEntry; + PointerPte = MmSystemPteBase + PointerPte->u.List.NextEntry;
// // Loop each cluster @@ -153,8 +152,7 @@ // Go to the next cluster // PreviousPte = PointerPte; - PointerPte = MmSystemPtesStart[SystemPtePoolType] + - PointerPte->u.List.NextEntry; + PointerPte = MmSystemPteBase + PointerPte->u.List.NextEntry; ASSERT(PointerPte > PreviousPte); }
@@ -216,7 +214,7 @@ // Zero PTEs // RtlZeroMemory(StartingPte, NumberOfPtes * sizeof(MMPTE)); - CurrentSize = (ULONG_PTR)(StartingPte - MmSystemPtesStart[SystemPtePoolType]); + CurrentSize = (ULONG_PTR)(StartingPte - MmSystemPteBase);
// // Acquire the system PTE lock @@ -237,8 +235,7 @@ // // Get the first real cluster of PTEs and check if it's ours // - PointerPte = MmSystemPtesStart[SystemPtePoolType] + - CurrentPte->u.List.NextEntry; + PointerPte = MmSystemPteBase + CurrentPte->u.List.NextEntry; if (CurrentSize < CurrentPte->u.List.NextEntry) { // @@ -398,7 +395,7 @@ StartingPte->u.List.NextEntry = ((ULONG)0xFFFFF); MmFirstFreeSystemPte[PoolType].u.Long = 0; MmFirstFreeSystemPte[PoolType].u.List.NextEntry = StartingPte - - MmSystemPtesStart[PoolType]; + MmSystemPteBase;
// // The second entry stores the size of this PTE space
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/amd64/init.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/amd64/init.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/amd64/init.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -295,7 +295,7 @@ MxPfnAllocation = MxPfnSizeInBytes >> PAGE_SHIFT;
/* Simply start at hardcoded address */ - MmPfnDatabase[1] = MI_PFN_DATABASE; + MmPfnDatabase = MI_PFN_DATABASE;
/* Loop the memory descriptors */ for (ListEntry = LoaderBlock->MemoryDescriptorListHead.Flink; @@ -816,7 +816,7 @@ MiEvaluateMemoryDescriptors(LoaderBlock);
/* Start PFN database at hardcoded address */ - MmPfnDatabase[1] = MI_PFN_DATABASE; + MmPfnDatabase = MI_PFN_DATABASE;
/* Prepare PFN database mappings */ MiPreparePfnDatabse(LoaderBlock); @@ -851,7 +851,7 @@ MiBuildPhysicalMemoryBlock(LoaderBlock);
/* Size up paged pool and build the shadow system page directory */ - MiBuildPagedPool(); + //MiBuildPagedPool();
// This is the old stuff: MmPagedPoolBase = (PVOID)((PCHAR)MmPagedPoolEnd + 1);
Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/section.c URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskr... ============================================================================== --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/section.c [iso-8859-1] (original) +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/section.c [iso-8859-1] Fri Jul 23 03:36:31 2010 @@ -48,7 +48,6 @@ #define NDEBUG #include <debug.h> #include <reactos/exeformat.h> -#include "ARM3/miarm.h"
#if defined (ALLOC_PRAGMA) #pragma alloc_text(INIT, MmCreatePhysicalMemorySection) @@ -72,7 +71,7 @@
POBJECT_TYPE MmSectionObjectType = NULL;
-BOOLEAN MmAllocationFragment; +SIZE_T MmAllocationFragment;
ULONG_PTR MmSubsectionBase;