https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b0c143c710ee32702ecb95...
commit b0c143c710ee32702ecb952e68c6d0b35a86da64 Merge: 6d8aafb6ce6 0699dcb50ce Author: Jérôme Gardou jerome.gardou@reactos.org AuthorDate: Wed Feb 3 10:29:45 2021 +0100 Commit: Jérôme Gardou jerome.gardou@reactos.org CommitDate: Wed Feb 3 10:29:45 2021 +0100
[NTOS:MM][NTOS:CC][FASTFAT][FASTFAT_NEW] Massive overhaul
- Make Cc be a client of Mm - Cc now creates a section object for each Shared cache map it creates - Some functions where introduced into Mm in order to let Cc make notice of dirtified pages, file flushes & purges, etc. - Make Mm the real master of how pages are kept in memory for mapped files (including cached files) - Keep track of dirty pages - Do not dismiss pages as soon as section object are closed - Fine tune the balancer to account for this changes (far from perfect yet) - Those changes are incompatbile with fastfat -> enable fastfat_new - Make Cc routines compatible with it, esp. regarding file locking, write-behind, etc.
base/setup/lib/bootsup.c | 26 +- drivers/filesystems/CMakeLists.txt | 3 +- ntoskrnl/cache/newcc.h | 6 +- ntoskrnl/cache/section/data.c | 5 +- ntoskrnl/cache/section/fault.c | 6 + ntoskrnl/cache/section/io.c | 2 + ntoskrnl/cache/section/newmm.h | 63 +- ntoskrnl/cache/section/sptab.c | 69 +- ntoskrnl/cc/cacheman.c | 3 +- ntoskrnl/cc/copy.c | 673 ++---- ntoskrnl/cc/fs.c | 71 +- ntoskrnl/cc/pin.c | 306 ++- ntoskrnl/cc/view.c | 963 ++++---- ntoskrnl/ex/init.c | 2 - ntoskrnl/ex/sysinfo.c | 14 +- ntoskrnl/fsrtl/fastio.c | 8 +- ntoskrnl/include/internal/cc.h | 66 +- ntoskrnl/include/internal/fsrtl.h | 8 + ntoskrnl/include/internal/mm.h | 260 +- ntoskrnl/include/ntoskrnl.h | 2 + ntoskrnl/io/iomgr/iofunc.c | 8 +- ntoskrnl/mm/ARM3/miarm.h | 5 +- ntoskrnl/mm/ARM3/procsup.c | 10 +- ntoskrnl/mm/ARM3/section.c | 163 +- ntoskrnl/mm/ARM3/sysldr.c | 20 +- ntoskrnl/mm/ARM3/virtual.c | 8 +- ntoskrnl/mm/ARM3/zeropage.c | 2 +- ntoskrnl/mm/balance.c | 276 +-- ntoskrnl/mm/freelist.c | 189 +- ntoskrnl/mm/i386/page.c | 40 + ntoskrnl/mm/marea.c | 26 +- ntoskrnl/mm/mmfault.c | 8 +- ntoskrnl/mm/mminit.c | 8 +- ntoskrnl/mm/pagefile.c | 5 +- ntoskrnl/mm/rmap.c | 434 ++-- ntoskrnl/mm/section.c | 4571 ++++++++++++++++++------------------ ntoskrnl/mm/shutdown.c | 38 + ntoskrnl/ntos.cmake | 10 +- ntoskrnl/po/power.c | 13 +- ntoskrnl/ps/process.c | 2 +- sdk/include/ndk/mmtypes.h | 13 - 41 files changed, 4088 insertions(+), 4317 deletions(-)