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@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