[ros-diffs] [sginsberg] 44057: - Set and check for the correct PTE write bits on x86 SMP. The MP kernel is now functional again.

sginsberg at svn.reactos.org sginsberg at svn.reactos.org
Mon Nov 9 23:05:36 CET 2009


Author: sginsberg
Date: Mon Nov  9 23:05:36 2009
New Revision: 44057

URL: http://svn.reactos.org/svn/reactos?rev=44057&view=rev
Log:
- Set and check for the correct PTE write bits on x86 SMP. The MP kernel is now functional again.

Modified:
    trunk/reactos/ntoskrnl/include/internal/i386/mm.h

Modified: trunk/reactos/ntoskrnl/include/internal/i386/mm.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/i386/mm.h?rev=44057&r1=44056&r2=44057&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/i386/mm.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/i386/mm.h [iso-8859-1] Mon Nov  9 23:05:36 2009
@@ -45,10 +45,18 @@
 #define MI_PAGE_DISABLE_CACHE(x)   ((x)->u.Hard.CacheDisable = 1)
 #define MI_PAGE_WRITE_THROUGH(x)   ((x)->u.Hard.WriteThrough = 1)
 #define MI_PAGE_WRITE_COMBINED(x)  ((x)->u.Hard.WriteThrough = 0)
+#if !defined(CONFIG_SMP)
 #define MI_IS_PAGE_WRITEABLE(x)    ((x)->u.Hard.Write == 1)
+#else
+#define MI_IS_PAGE_WRITEABLE(x)    ((x)->u.Hard.Writable == 1)
+#endif
 #define MI_IS_PAGE_COPY_ON_WRITE(x)((x)->u.Hard.CopyOnWrite == 1)
 #define MI_IS_PAGE_DIRTY(x)        ((x)->u.Hard.Dirty == 1)
 #define MI_MAKE_OWNER_PAGE(x)      ((x)->u.Hard.Owner = 1)
+#if !defined(CONFIG_SMP)
 #define MI_MAKE_WRITE_PAGE(x)      ((x)->u.Hard.Write = 1)
+#else
+#define MI_MAKE_WRITE_PAGE(x)      ((x)->u.Hard.Writable = 1)
+#endif
 
 #endif /* __NTOSKRNL_INCLUDE_INTERNAL_I386_MM_H */




More information about the Ros-diffs mailing list