Timo Kreuzer
2dade10d54
[NTOS] Fix 64 bit warnings
2018-01-14 13:54:14 +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
3021c2d571
[NTOS:MM] Pass page fault code to MmAccessFault
...
Note: before we had a BOOLEAN parameter called StoreInstruction, but in reality it was not specifying whether the fault was from a store store instruction, but whether it was an access violation rather than a page-not-present fault. On x86 without PAE there are only 2 kinds of access violations: (1) Access of a kernel mode page from user mode, which is handled early and (2) access of a read-only (or COW) page with a writing instruction. Therefore we could get away with this, even though it relied on the wrong assumption that a fault, which was not a page-not-present-fault, was automatically a write access. This commit only changes one thing: we pass the full fault-code to MmAccessFault and handle the rest from there in exactly the same way as before. More changes are coming to make things clear.
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
Timo Kreuzer
a2f7de7ee8
Amd64/misc 64bit fixes ( #236 )
...
[REACTOS] Misc 64 bit fixes
* [NTOS:MM] Allow MEM_DOS_LIM in NtMapViewOfSection on x64 as well
* [NTOS:MM] Implement x64 version of MmIsDisabledPage
* [HAL] Remove obsolete code
* [NTOS:KE] Fix amd64 version of KeContextToTrapFrame and KeTrapFrameToContext
* [XDK] Fix CONTEXT_XSTATE definition
* [PCNET] Convert physical address types from pointers to PHYSICAL_ADDRESS
2018-01-01 12:07:50 +01:00
Pierre Schweitzer
7fecde4a20
[NTOSKRNL] Print tags which contains numerics in the memory dumper.
...
This fixes i8042prt.sys allocations not properly being rendered.
2017-12-29 20:37:43 +01:00
Pierre Schweitzer
4663d02cd7
[NTOSKRNL] In the memory dumper, print in the direct order to make !poolused TAG usage easier
2017-12-29 20:37:43 +01:00
Pierre Schweitzer
ca3143b9ab
[NTOSKRNL] Add support for verbose output in the !poolused command
2017-12-29 20:37:43 +01:00
Pierre Schweitzer
2daf2391a6
[NTOSKNRL] Addendum to 9a633f7
2017-12-29 18:22:37 +01:00
Pierre Schweitzer
9a633f7b48
[NTOSKRNL] Fix MSVC build
2017-12-29 18:03:33 +01:00
Pierre Schweitzer
4e34bf2a0b
[NTOSKRNL] Add support for the ? wildcard in the !poolused command
2017-12-29 17:23:36 +01:00
Pierre Schweitzer
454e8738f2
[NTOSKRNL] Allow filtering !poolused output using a tag
2017-12-29 17:23:36 +01:00
Pierre Schweitzer
879d8f2104
[NTOSKRNL] Now that the memory dumper handles paged pool, make use of it in any situation
2017-12-29 17:23:36 +01:00
Pierre Schweitzer
1433ade827
[NTOSKRNL] Add support for the paged pool in the memory dumper
2017-12-29 17:23:36 +01:00
Pierre Schweitzer
bb63841b57
[NTOSKRNL] Prettify the memory dumper output and add number of allocs
2017-12-29 17:23:36 +01:00
Pierre Schweitzer
78b55550bb
[NTOSKRNL] Make the memory dumper available as a kdbg command: !poolused
2017-12-29 17:23:36 +01:00
Amine Khaldi
4d4e4bb68a
[NTOS] Deduplicate MiSynchronizeSystemPde(). #179
2017-12-25 20:14:46 +01:00
Timo Kreuzer
12e2c48a25
[NTOS:MM] Fix a bug in MiBuildPfnDatabase
...
MxPfnAllocation is in pages, not in bytes!
2017-12-20 06:56:09 +01:00
Timo Kreuzer
18cd763160
[NTOS:MM] Make debug code in MmArmInitSystem portable
2017-12-20 06:56:09 +01:00
Ivan Labutin
4d35d59fb9
[NTOS:MM] Quick fix: use SIZE_T instead of ULONG, because ULONG is 32-bit and on 64-bit truncates values
2017-12-20 06:56:09 +01:00
Ivan Labutin
5857733996
[NTOS:KE] Remove duplicate NX enabling
2017-12-20 06:56:09 +01:00
Ivan Labutin
39dd47cebb
[NTOS:MM] Comment out debug code for x86 that should not run on x64
2017-12-20 06:56:09 +01:00
Serge Gautherie
614ace03fa
[NTOS:MM] Fix NtFreeVirtualMemory() FreeType parameter checks. CORE-13126
2017-12-15 11:56:35 +01:00
Amine Khaldi
24f35397c6
[NTOS] Add some header guards.
2017-12-12 12:42:13 +01:00
Thomas Faber
81532227b6
[NTOS:MM] Implement and use MiAcquirePfnLockAtDpcLevel/MiReleasePfnLockFromDpcLevel.
2017-12-08 10:32:22 +01:00
Thomas Faber
da5949280c
[NTOS:MM] Use inline functions to acquire/release the PFN lock.
2017-12-08 10:32:08 +01:00
Pierre Schweitzer
c473b1a4d6
[NTOSKRNL] Only activate dumper in DBG builds
2017-12-05 23:28:04 +01:00
Pierre Schweitzer
149e1a2610
[NTOSKRNL] Add a non paged memory dumper in case of low memory situation.
...
Its purpose is to dump the non paged consumption, tag by tag,
to allow tracking potential faulting driver in case ReactOS starts lacking memory.
This will look like what !poolused outputs, even though it doesn't deal with paged pool.
Thanks to Thomas for his kind review and improvement suggestions.
CORE-14048
2017-12-05 23:19:11 +01:00
Amine Khaldi
840320cbd1
[NTOS] Add missing brackets. Comment out some unused statements. CORE-11799 ( #94 )
2017-10-28 15:19:17 +01:00
Timo Kreuzer
c66b66656b
[NTOSKRNL] Add ASSERTs to make sure, we never use an uninitialized variable
2017-10-19 08:36:57 +02:00
Hermès Bélusca-Maïto
221ed4cefe
Remove unwanted .gitignore files.
2017-10-04 10:28:36 +02: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