[ros-diffs] [dgorbachev] 45615: [NTOSKRNL] KiConvertToGuiThread() "accesses memory in an unpredictable fashion".
dgorbachev at svn.reactos.org
dgorbachev at svn.reactos.org
Fri Feb 19 00:25:12 CET 2010
- Previous message: [ros-diffs] [dgorbachev] 45614: [BOOTVID] Initialize VgaAddress.HighPart
- Next message: [ros-diffs] [sir_richard] 45616: [NTOS]: Instead of having an LRU linked list of working set pages, we instead have a bitmap. Advantage: Pages are only in a linked list when they are NOT active (free/zeroed, for now). This makes the LIST_ENTRY fields usable when a page is active, so we can store data in there. This will make it easier to sync our PFN format with Windows. Advantage: It's a lot faster to set/clear bits than to do list operations (both still O1 though). Scanning for the bit is a bit slower than parsing a list, on the other hand, so it's a toss. Disadvantage: We lose LRU, which in theory makes us cannibalize working sets randomly instead of by-usage. However, considering the speed of ReactOS paging, and the effects of canabalizing the WS in the first place, I doubt this is really a problem. The main point of this is advantage #1 -- making used pages not be on any lists. This will allow us to almost 100% sync the PFN layouts, which will lead to the eventual negation of any temporary disavantages.
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: dgorbachev
Date: Fri Feb 19 00:25:12 2010
New Revision: 45615
URL: http://svn.reactos.org/svn/reactos?rev=45615&view=rev
Log:
[NTOSKRNL] KiConvertToGuiThread() "accesses memory in an unpredictable fashion".
Modified:
trunk/reactos/ntoskrnl/include/internal/i386/ke.h
Modified: trunk/reactos/ntoskrnl/include/internal/i386/ke.h
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/i386/ke.h?rev=45615&r1=45614&r2=45615&view=diff
==============================================================================
--- trunk/reactos/ntoskrnl/include/internal/i386/ke.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/internal/i386/ke.h [iso-8859-1] Fri Feb 19 00:25:12 2010
@@ -714,7 +714,7 @@
"movl %%eax, %0\n"
: "=r"(Result), "=r"(StackFrame)
:
- : "%esp", "%ecx", "%edx"
+ : "%esp", "%ecx", "%edx", "memory"
);
return Result;
- Previous message: [ros-diffs] [dgorbachev] 45614: [BOOTVID] Initialize VgaAddress.HighPart
- Next message: [ros-diffs] [sir_richard] 45616: [NTOS]: Instead of having an LRU linked list of working set pages, we instead have a bitmap. Advantage: Pages are only in a linked list when they are NOT active (free/zeroed, for now). This makes the LIST_ENTRY fields usable when a page is active, so we can store data in there. This will make it easier to sync our PFN format with Windows. Advantage: It's a lot faster to set/clear bits than to do list operations (both still O1 though). Scanning for the bit is a bit slower than parsing a list, on the other hand, so it's a toss. Disadvantage: We lose LRU, which in theory makes us cannibalize working sets randomly instead of by-usage. However, considering the speed of ReactOS paging, and the effects of canabalizing the WS in the first place, I doubt this is really a problem. The main point of this is advantage #1 -- making used pages not be on any lists. This will allow us to almost 100% sync the PFN layouts, which will lead to the eventual negation of any temporary disavantages.
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the Ros-diffs
mailing list