reactos/ntoskrnl/mm
Joachim Henze c7d9b470e6 [0.4.9][NTOS:MM] Fix Regression, "Precision" demo executable doesn't load CORE-12400 (#503), + follow-up (#5002)
This fixes the "Farbrausch - Precision" demo
https://files.scene.org/view/parties/2006/assembly06/in64/fr-048_precision_by_farbrausch.zip
from not loading any longer.
It broke by SVN r72989 == git 63bbaff803

The fix is a combined backport of 2 commits:
1.)
0.4.10-dev-136-g c7eb46d9fd (#503)
where Mark Jansen aimed to fix loading executables treated with the binary packer "mPress".
This is what fixed the "Farbrausch - Precision" demo as well.
Marks commit back then referenced CORE-12582 and CORE-14556 although it never was enough to solve any of the 2 tickets entirely.
I do just reference them here again to preserve that ancient (questionable) linkage.

2.)
Since Marks commit back then introduced a very severe regression as well, I do have to port back also the following commit:
0.4.15-dev-5589-g 0d4a8d0ea6 (#5002)
to prevent me to introduce into older releases the bug
CORE-18797 "SizeOfRawData of BSS section should not be processed"
(which had many duplicates, e.g. Doom95, compiled with Watcom-C-compilers would not longer work without that)

-------------

I felt the need to underline that I have tested that porting back the following commit
0.4.10-dev-474-g dfff8ed0d8
is *NOT* needed in the older branches to prevent
CORE14838 "Antivir 6 deadlocks RtlpWaitForCriticalSection when 'scanning the process list'"
although the JIRA-tickets referenced the same unhiding commit 0.4.10-dev-136-g c7eb46d9fd for the master branch.
I consider that as being a temporary workaround that has been applied to master, which seems to be not needed in the older branches,
and it may be possible that we may get rid of that on master too at some point in the future.

------------

NTOSKRNL binary size unchanged:
releases/0.4.9 RosBEWin2.1.6 GCC4.7.2dbg  4.311.552 -> 4.311.552
releases/0.4.8 RosBEWin2.1.6 GCC4.7.2dbg  4.296.704 -> 4.296.704
releases/0.4.7 RosBEWin2.1.6 GCC4.7.2dbg  4.231.168 -> 4.231.168
2023-12-18 15:01:30 +01:00
..
amd64 Amd64/misc 64bit fixes (#236) 2018-01-01 12:07:50 +01:00
arm Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
ARM3 [0.4.9][NTOS][USERSRV] Silence noisy debug output. 2020-12-21 08:52:41 +01:00
i386 [NTOS:MM] Improve debug prints in MmCreateVirtualMappingUnsafe. CORE-14478 2018-03-18 23:49:48 +01:00
powerpc Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
balance.c [NTOS:MM] Use inline functions to acquire/release the PFN lock. 2017-12-08 10:32:08 +01:00
freelist.c [NTOS:MM] Use inline functions to acquire/release the PFN lock. 2017-12-08 10:32:08 +01:00
marea.c [NTOS] Fix 64 bit warnings 2018-01-14 13:54:14 +01:00
mmfault.c [NTOS:MM] Pass The FaultCode to MmArmAcceessFault as well and translate it there to what was declared as "StoreInstruction" 2018-01-06 18:20:24 +01:00
mminit.c [NTOSKRNL] Define the Mm global variables related to Cc on Mm init. 2018-02-06 13:41:23 +01:00
pagefile.c [NTOS] Add missing brackets. Comment out some unused statements. CORE-11799 (#94) 2017-10-28 15:19:17 +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 Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
section.c [0.4.9][NTOS:MM] Fix Regression, "Precision" demo executable doesn't load CORE-12400 (#503), + follow-up (#5002) 2023-12-18 15:01:30 +01:00