Truly epic. I can't believe the concept of "PageOps" is gone now.
WBR,
Aleksey Bragin.
On 28.04.2012 22:10, Alex Ionescu wrote:
Patch of the Year.
Best regards,
Alex Ionescu
On Sat, Apr 28, 2012 at 10:56 AM, <arty(a)svn.reactos.org
<mailto:arty@svn.reactos.org>> wrote:
Author: arty
Date: Sat Apr 28 02:56:31 2012
New Revision: 56441
URL:
http://svn.reactos.org/svn/reactos?rev=56441&view=rev
<http://svn.reactos.org/svn/reactos?rev=56441&view=rev>
Log:
[NTOSKRNL]
Remove PAGEOPs and use the argument to pass relevant information
where needed,
including generally a section page table entry or a PFN_NUMBER.
In its place, the code looks for an MM_WAIT_ENTRY in the
appropriate place and
waits, returning STATUS_MM_RESTART_OPERATION. Rather than copying
the pagein
and CoW operations in the PAGEOP contention case, we just punt
back and restart
the operation, resulting in simpler code.
Modified:
trunk/reactos/ntoskrnl/CMakeLists.txt
trunk/reactos/ntoskrnl/cache/section/sptab.c
trunk/reactos/ntoskrnl/include/internal/mm.h
trunk/reactos/ntoskrnl/mm/mminit.c
trunk/reactos/ntoskrnl/mm/rmap.c
trunk/reactos/ntoskrnl/mm/section.c