Timo Kreuzer
876769fdd5
[NTOS:Mm] Use MmRebalanceMemoryConsumersAndWait in the page fault handler
2023-07-29 14:00:44 +03:00
Timo Kreuzer
7c6e4d38c7
[NTOS:Mm] Handle failure to allocate pages in the page fault handler
2023-07-29 14:00:44 +03:00
Jérôme Gardou
708dc6b7d6
[NTOS:MM] Do not zero-fill pages when not needed
2021-08-04 17:48:39 +02:00
Jérôme Gardou
1c5ce8d11c
[NTOS:MM] Fix-up call site of traced PFNs when serving a page fault
2021-06-24 18:48:31 +02:00
Jérôme Gardou
afc27ab1aa
[NTOS:MM] Handle PT references for page table faults in MmAccessFault
...
Idea from Timo Kreuzer
2021-06-09 11:27:18 +02:00
Jérôme Gardou
c8fb3f7514
[NTOS:MM] Implement proper refcounting of page tables on amd64
...
CORE-17552
2021-06-09 11:27:18 +02:00
Jérôme Gardou
7eff8a36d5
Revert "[NTOS:MM] Add private pages to process working sets"
...
This is so full of bugs, I don't know what to say.
This reverts commit 374fef2d59
.
2021-05-20 00:19:43 +02:00
Jérôme Gardou
374fef2d59
[NTOS:MM] Add private pages to process working sets
2021-05-18 23:42:19 +02:00
Jérôme Gardou
0187c1e113
[NTOS:MM] Fix PFN tracing
2021-03-30 16:26:43 +02:00
Timo Kreuzer
4b4bff0642
[NTOS:MM] Handle demand zero PTEs with MM_EXECUTE_READWRITE and MM_READWRITE
2021-02-16 18:02:57 +01:00
Timo Kreuzer
d4b4cf7448
[NTOS:MM] Make sure PXEs/PPEs and PDEs are always MM_EXECUTE_READWRITE
...
This is required since the NX protection proagates from the highest level, enforcing NX on the entire range, independent of whether lower level P*Es have the bit set or not. It might be useful to add a platform specific constant to allow making page tables NX on architectures that have a different behavior.
2020-11-01 09:32:27 +01:00
Jérôme Gardou
1c528cbf84
Revert "[NTOS/MM]
...
- Fix PFNs tracing
- Add private pages to the process working set"
This reverts commit 4c5351bf55
.
Not ready for prime time
2020-10-20 15:56:21 +02:00
Jérôme Gardou
4c5351bf55
[NTOS/MM]
...
- Fix PFNs tracing
- Add private pages to the process working set
2020-10-20 15:20:59 +02:00
Timo Kreuzer
7523a7b138
[NTOS:KE] Rename some locking functions to reflect the IRQL level changes
...
* KiAcquireApcLock -> KiAcquireApcLockRaiseToSynch
* KiAcquireApcLockAtDpcLevel -> KiAcquireApcLockAtSynchLevel
* KiReleaseApcLockFromDpcLevel -> KiReleaseApcLockFromSynchLevel
* KiAcquireApcLockAtApcLevel -> KiAcquireApcLockRaiseToDpc
* KiAcquireProcessLock -> KiAcquireProcessLockRaiseToSynch
* KiReleaseProcessLockFromDpcLevel -> KiReleaseProcessLockFromSynchLevel
* KiAcquireDispatcherLockAtDpcLevel -> KiAcquireDispatcherLockAtSynchLevel
* KiReleaseDispatcherLockFromDpcLevel -> KiReleaseDispatcherLockFromSynchLevel
* Add some ASSERTs
2019-12-31 15:30:27 +01:00
Andrew Boyarshin
3ba51dc218
[NTOS:MM] Fix typo in MiCheckForUserStackOverflow
2018-12-12 12:57:08 +01:00
Bernhard Feichtinger
8a0495063b
[NTOS:MM] Handle unimplemeted case for MiCheckForUserStackOverflow
2018-11-25 11:29:18 +01:00
Timo Kreuzer
1014d50a4b
[NTOS:MM] Pass FaultCode to MiDispatchFault
2018-01-06 18:20:24 +01:00
Timo Kreuzer
3f426aabde
[NTOS:MM] Mark local functions with static
2018-01-06 18:20:24 +01:00
Timo Kreuzer
a00378a1a1
[NTOS:MM] Add support for NX page-faults
2018-01-06 18:20:24 +01:00
Timo Kreuzer
4d043aa05e
[NTOS:MM] Make use of FaultCode and MI_IS_NOT_PRESENT_FAULT and MI_IS_WRITE_ACCESS macros in MmArmAccessFault.
2018-01-06 18:20:24 +01:00
Timo Kreuzer
d5c71429d7
[NTOS:MM] Pass The FaultCode to MmArmAcceessFault as well and translate it there to what was declared as "StoreInstruction"
...
No functional changes.
2018-01-06 18:20:24 +01:00
Timo Kreuzer
d17812f933
[NTOS:MM] Use MiResolveDemandZeroFault instead of MiDispatchFault
2018-01-03 23:07:19 +01:00
Timo Kreuzer
d4765fe366
[NTOS:MM] Implement resolving PXE/PPE page table demand zero faults
2018-01-03 23:07:19 +01:00
Timo Kreuzer
2eff510074
[NTOS:MM] Increment Prcb->MmDemandZeroCount while holding the Pfn lock
2018-01-03 23:07:19 +01:00
Timo Kreuzer
1240ed9e18
[NTOS/MM] Add Protection parameter to MiResolveDemandZeroFault
2018-01-03 23:07:19 +01:00
Amine Khaldi
4d4e4bb68a
[NTOS] Deduplicate MiSynchronizeSystemPde(). #179
2017-12-25 20:14:46 +01:00
Thomas Faber
da5949280c
[NTOS:MM] Use inline functions to acquire/release the PFN lock.
2017-12-08 10:32:08 +01:00
Colin Finck
c2c66aff7d
Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
2017-10-03 07:45:34 +00:00