reactos/ntoskrnl/mm
Timo Kreuzer 477792856e [NTOS:Mm] Replace YieldProcessor() with KeDelayExecutionThread()
These are used in the paging path, when the page is currently in the process of being read from or written to the disk. While YieldProcessor() provides the chance to switch context to the other paging thread, it only does so, once the current thread's quantum has expired. On a single CPU system this effectively leads to busy waiting for the rest of the quantum. On SMP systems this could succeed earlier, thus reducing latency, but it would still contribute to high CPU usage, while waiting for the IO operation to complete, which is not what we want.
Using KeDelayExecutionThread() will instantly allow another thread to run, providing enough time to complete the IO operation.
2023-07-29 14:00:44 +03:00
..
amd64 Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
arm [REACTOS] Addendum to 5c7ce4475e - Fix MSVC 2015 build 2021-05-12 11:04:29 +02:00
ARM3 [NTOS] Include kdbg/kdb.h only in the files that really need it. 2023-04-11 00:44:10 +02:00
i386 Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
balance.c Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
freelist.c [NTOS:MM] Fix another instance of reentrant spinlock acquisition 2021-06-29 11:49:20 +02:00
marea.c [NTOS] Add some sanity checks when synchronizing PDEs 2022-09-17 13:48:56 +02:00
mmfault.c Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
mminit.c [NTOS:MM] Make the page LRU list a real LRU list. 2021-02-03 09:41:23 +01:00
pagefile.c [SMSS][NTOS:MM] Implement the architecture-specific pagefile size limits + code review. (#4843) 2022-11-16 21:54:31 +01:00
region.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
rmap.c Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
section.c [NTOS:Mm] Replace YieldProcessor() with KeDelayExecutionThread() 2023-07-29 14:00:44 +03:00
shutdown.c [NTOS:MM] Flush dirty pages after closing the page files. 2021-02-10 11:14:19 +01:00