Restores *inferior* code for older branches.
I recently ported back the *proper* 0.4.15-dev-4352-g cfe387a9b0
as part of:
0.4.10-release-186-g e5d8019d24
0.4.9-release-197-g 557db9a1ac
0.4.8-release-203-g 78daf4169a
0.4.7-release-229-g e0a3b0c8f5
That backport worked very well in releases/0.4.11 to releases/0.4.14
and it also caused no severe issues for releases/0.4.7 to releases/0.4.10
e.g. the mouse and keyboard works well, tested with VBox4.3.12 & MS VirtualPC 2007 SP1 6.0.192.0
but I noticed some logspam that happens for releases/0.4.7 to releases/0.4.10 and only during 2nd stage:
bad-path (with the commas):
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\kbdclass.sys' with status 0xc000003a
(../ntoskrnl/io/iomgr/driver.c:696) Failed to load class upper filters: C000003A
(../ntoskrnl/io/iomgr/device.c:434) No DriverUnload function on PnP driver! '\Driver\I8042PRT' will not be unloaded!
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\mouclass.sys' with status 0xc000003a
(../ntoskrnl/io/iomgr/driver.c:696) Failed to load class upper filters: C000003A
(../ntoskrnl/io/iomgr/device.c:434) No DriverUnload function on PnP driver! '\Driver\I8042PRT' will not be unloaded!
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\vbemp.sys' with status 0xc000003a
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\kbdclass.sys' with status 0xc000003a
(../ntoskrnl/io/iomgr/driver.c:696) Failed to load class upper filters: C000003A
(../ntoskrnl/io/iomgr/device.c:434) No DriverUnload function on PnP driver! '\Driver\I8042PRT' will not be unloaded!
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\mouclass.sys' with status 0xc000003a
(../ntoskrnl/io/iomgr/driver.c:696) Failed to load class upper filters: C000003A
(../ntoskrnl/io/iomgr/device.c:434) No DriverUnload function on PnP driver! '\Driver\I8042PRT' will not be unloaded!
...
(../base/services/umpnpmgr/umpnpmgr.c:3653) Removal pending: ACPI\PNP0303\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3623) Safe removal: ACPI\PNP0303\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3653) Removal pending: ACPI\PNP0F03\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3623) Safe removal: ACPI\PNP0F03\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3653) Removal pending: ACPI\PNP0303\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3623) Safe removal: ACPI\PNP0303\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3653) Removal pending: ACPI\PNP0F03\2&ccb86d17&0000
(../base/services/umpnpmgr/umpnpmgr.c:3623) Safe removal: ACPI\PNP0F03\2&ccb86d17&0000
good-path (without the commas):
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\System32\DRIVERS\i8042prt.sys' with status 0xc000003a
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\System32\DRIVERS\i8042prt.sys' with status 0xc000003a
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\system32\drivers\vbemp.sys' with status 0xc000003a
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\System32\DRIVERS\i8042prt.sys' with status 0xc000003a
(../ntoskrnl/mm/ARM3/sysldr.c:3025) ZwOpenFile failed for '\SystemRoot\System32\DRIVERS\i8042prt.sys' with status 0xc000003a
...
(../../ntoskrnl/mm/ARM3/sysldr.c:176) Loading: \SystemRoot\System32\DRIVERS\i8042prt.sys at F771B000 with 1b pages
...
and no such 'Removal pending'
So we do still miss some unknown commit from 0.4.11-dev'ing that will avoid that additional logspam with the corrected hivesys.inf.
I have not identified that commit yet, and until I will, I do play safe by restoring the wrong List-multi-string in hivesys.inf.
0.4.15-dev-5102-g 18d40ebe81 [BOOTDATA] hivesys.inf: Remove redundant fastfat "Start" entry. The one in the [AddReg] section has the very same value.
-------
0.4.15-dev-5012-g e3f8f52f3d [BOOTDATA] Delete "Layout Id" from Japanese/Korean Keyboard Layout
Katayama explained: These registry values are for pre-installed IMEs we don't have. It is safe to remove them also in the older branches.
-------
0.4.15-dev-4352-g cfe387a9b0 [BOOTDATA] Add two missing separating commas in the ServiceGroupOrder List multi-string.
-------
PARTIALLY PICK: 0.4.15-dev-4412-g 94d144f8a5 [BOOTDATA] Fix some services groups
- AudioSrv belongs to "AudioGroup" (and not "Audio" that doesn't exist).
- lanmanworkstation belongs to "NetworkProvider" (without a space).
I dared only to pick the "NetworkProvider" and "AudioGroup" part for now. The MUP part I might do later when actually being able to retest CORE12107 "VMWare tools" myself.
-------
0.4.15-dev-1097-g 0689455bb3 [BOOTDATA] Comment out biosinfo.inf (#3266)
This allows ros to boot with its LiveCD files using MS NTLDR!
I stripped the line here, instead of commenting it as the master commit did. The file does not exist.
-------
Additionally to those backports I cleaned up some of the stuff that was previously commented out and/or broken:
- instead of following 0.4.15-dev-3322-g c6e002bfb3 to fix the Latvian kbdlv1.dll QUERTY->QWERTY typo, I just stripped those lines, as
they are commented out anyway. And were added in the broken and already commented way by 0.4.9-dev-825-g c2089d5319
We never had them active. No such file even.
- Also strip some 'translated' service strings that were just copy-pasted from the english strings section
without actually getting translated at all. The english ones will be used anyway.
It is enough to have that redundant stuff in master to allow translators to see it.
- Also strip the disabled kbdfo.dll Faeroese keyboard layout. Enough to have those commented lines in master as a TODO reminder. Was never active ever. No such file even.
- Also strip the disabled BENGALI_INSCRIPT kbdinben.dll. Where the existing lines even had bugs in the older branches as proven by 0.4.15-dev-3322-g c6e002bfb3
It was always disabled and was neither localizable, nor did it have the correct layout code even. No such file even.
None of those changes will introduce any additional diff or break any existing features.
They just slightly move the already existing diffs position in time towards newer release-branches.
by partially porting back:
0.4.15-dev-xxx [WMISVC][WUAUSERV] Fix 2 DPRINTs that lack arguments
0.4.13-dev-684-g eab73ad1a4 [SRVSVC] Make the server service stoppable
0.4.13-dev-683-g 4073a8c58d [WKSSVC] Make the workstation service stoppable
0.4.13-dev-680-g eb532bc641 [WMISVC] Accept stop and shutdown commands when the service is running
0.4.12-dev-1063-g 15a828c86d [DHCPCSVC] Eliminate unused code and associated parameters
and revert 0.4.10-dev-558-g 55368bacc8 (#355) [WUAUSERV][WUSA]
on this branch as that Service stub does not even start in releases/0.4.10-0.4.12.
And it doesn't allow any application to run that wouldn't have run before.
Even with those changes the .NET4.5 and Python 3.5 mentioned in that PR don't work yet.
We postpone introduction of WUAUSERV to releases/0.4.13 therefore.
This will avoid triggering a FAT repair on
unclean FAT volumes.
If dosfstools.fsck works fine in Linux, its
usage on ReactOS triggers worse corruption
than unclean shutdown.
'autochk during OS startup' has been added during 0.4.9-dev-xxxx.
Given I've no time for debugging this, I
kill it off. This is just a workaround of course.
For now the best chances to repair a FAT FS corruption after non-clean-shutdown
is to mount that FS within 2k3sp2 and give the MS chkdsk an attempt to repair it.
Success is not guaranteed, but it works surprisingly often.
The earlier you do that after non-clean-shutdown,
the better your chances for success will be.
The workaround was picked from
0.4.13-dev-169-g ab69736a1d
- In HKLM\SYSTEM\CurrentControlSet\Control\Windows, add "Directory"
and "SystemDirectory" values, giving the ReactOS installation
directories (purely informative).
- Also add the "ErrorMode" value that specifies how the hard-error
popups are displayed. This value will be used later.
- Fix event log sources ordering.
[BOOTDATA] - Add a commented-out section to hivesys.inf which can add the required key to enable NTFS write support.
svn path=/branches/GSoC_2016/NTFS/; revision=74685