Author: ion
Date: Sat Feb 3 23:28:24 2007
New Revision: 25705
URL:
http://svn.reactos.org/svn/reactos?rev=25705&view=rev
Log:
- Disgusting* hack by hto to temporarily work around Mm/DPC Interrupt bug in trunk after
applying new scheduler. We both tested it and it makes trunk not crash anymore (but I do
see a noticeable slowdown during bootup). Reminder: explorer will take 30-60 seconds to
startup after GUI boot. Be patient.
* This doesn't refer to hto's programming skills or code, but to the hackyness of
the patch itself, which is a temporary solution.
Modified:
trunk/reactos/ntoskrnl/mm/balance.c
trunk/reactos/ntoskrnl/mm/freelist.c
trunk/reactos/ntoskrnl/mm/mdl.c
trunk/reactos/ntoskrnl/mm/npool.c
trunk/reactos/ntoskrnl/mm/pagefile.c
trunk/reactos/ntoskrnl/mm/pageop.c
Modified: trunk/reactos/ntoskrnl/mm/balance.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/balance.c?rev=…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/balance.c (original)
+++ trunk/reactos/ntoskrnl/mm/balance.c Sat Feb 3 23:28:24 2007
@@ -13,6 +13,9 @@
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
+
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MmInitializeBalancer)
Modified: trunk/reactos/ntoskrnl/mm/freelist.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/freelist.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/freelist.c (original)
+++ trunk/reactos/ntoskrnl/mm/freelist.c Sat Feb 3 23:28:24 2007
@@ -14,6 +14,9 @@
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
+
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MmInitializePageList)
Modified: trunk/reactos/ntoskrnl/mm/mdl.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/mdl.c?rev=2570…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/mdl.c (original)
+++ trunk/reactos/ntoskrnl/mm/mdl.c Sat Feb 3 23:28:24 2007
@@ -13,6 +13,9 @@
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
+
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MmInitializeMdlImplementation)
@@ -965,3 +968,4 @@
+
Modified: trunk/reactos/ntoskrnl/mm/npool.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/npool.c?rev=25…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/npool.c (original)
+++ trunk/reactos/ntoskrnl/mm/npool.c Sat Feb 3 23:28:24 2007
@@ -15,6 +15,9 @@
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
+
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MiInitializeNonPagedPool)
Modified: trunk/reactos/ntoskrnl/mm/pagefile.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/pagefile.c?rev…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/pagefile.c (original)
+++ trunk/reactos/ntoskrnl/mm/pagefile.c Sat Feb 3 23:28:24 2007
@@ -31,6 +31,9 @@
#define NDEBUG
#include <internal/debug.h>
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
+
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MmInitPagingFile)
#endif
Modified: trunk/reactos/ntoskrnl/mm/pageop.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/pageop.c?rev=2…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/pageop.c (original)
+++ trunk/reactos/ntoskrnl/mm/pageop.c Sat Feb 3 23:28:24 2007
@@ -13,6 +13,9 @@
#include <ntoskrnl.h>
#define NDEBUG
#include <internal/debug.h>
+
+#undef KeAcquireSpinLock
+#define KeAcquireSpinLock(a,b) { _disable(); *(b) = KfAcquireSpinLock(a); }
#if defined (ALLOC_PRAGMA)
#pragma alloc_text(INIT, MmInitializePageOp)
@@ -274,3 +277,4 @@
+