reactos/ntoskrnl
George Bișoc 7dd8a30cf9
[NTOS:CM] Remove orphaned KCBs of keys during normal hive unload
A hive whose KCBs have a reference count of 0, meaning nobody is using these keys anymore, will not get removed from the cache table.
As a result during a normal hive unloading operation you will get orphaned KCBs which results in an unload failure.

This is wrong, because this is what a normal hive unloading is supposed to do. What it cannot do of course is that it cannot
scramble the references of opened keys by the users who use the Registry, as it is the job of force unloading mechanism to do that.

Also remove a misleading debug print. Force unloading works as intended by scrambling the references of keys and marking the KCB for deletion,
which is what how a force unload works. Namely Windows does exactly that.

CORE-10705
2024-03-24 19:03:47 +01:00
..
cache [NTOS:Mm] Fix race condition in _MmSetPageEntrySectionSegment 2023-07-29 14:00:44 +03:00
cc [NTOS:CC] Do not access VACB after decrementing it's reference count 2023-11-17 20:07:55 +02:00
config [NTOS:CM] Remove orphaned KCBs of keys during normal hive unload 2024-03-24 19:03:47 +01:00
dbgk [NTOSKRNL] Regroup the pool allocation tags in one dedicated place 2021-12-27 18:57:03 +01:00
ex [NTOS:IO] IopDisplayLoadingMessage(): Display the loading messages only in SOS mode. 2024-02-09 17:13:30 +01:00
fsrtl [NTOS] Properly implement and use FsRtlAcquireFileForModWriteEx 2022-11-02 19:41:04 +01:00
fstub [NTOS:FSTUB] Pack the MASTER_BOOT_RECORD structure (#6416) 2024-02-08 01:02:19 +03:00
inbv [NTOS:EX] Fix a loop bug 2024-03-19 07:43:20 +01:00
include [NTOS:CM] Lock the cached KCB before removing it from cache entries 2024-03-24 19:03:43 +01:00
io [NTOS:IO] Initialize InterruptObject to NULL on failure 2024-02-11 20:24:15 +03:00
kd [NTOS:KD] Fix release builds. 2023-08-31 17:10:34 +02:00
kd64 [NTOS] Include kdbg/kdb.h only in the files that really need it. 2023-04-11 00:44:10 +02:00
kdbg [NTOS:KD:KDBG] Integration into KD framework (Part 2/3) 2023-08-31 16:09:49 +02:00
ke [NTOS/x64] Gracefully handle invalid Vector in KeConnectInterrupt 2024-03-02 07:30:06 +01:00
lpc [NTOS:LPC] Fix input parameter for ProbeAndCaptureUnicodeString (#5815) 2023-10-23 18:18:45 +02:00
mm [NTOS:EX] Remove an ASSERT in ExpInsertPoolTracker 2024-03-03 07:19:35 +01:00
ntkrnlmp [CMAKE] Use the "kernel" module type for ntoskrnl and ntkrnlmp 2021-03-23 11:18:43 +01:00
ob [NTOS:OB] Fix the SAL2 annotation of ObQueryTypeInfo 2023-04-22 17:18:57 +02:00
po [NTOS:PO] Set SystemBatteriesPresent when having a battery device in the system 2024-02-05 18:04:02 +01:00
ps [NTOS:MM/PS] Remove code duplication between LookupEntryPoint/MiLocateExportName/MiFindExportedRoutineByName. (#4918) 2023-08-29 17:26:57 +02:00
rtl [RTL] Minor formatting, remove redundant 'return'. 2023-11-16 17:06:40 +01:00
se [NTOS:SE] Mute the access denied DPRINTs 2023-10-04 18:04:30 +02:00
tests Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
vdm [FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces 2021-06-11 15:33:08 +03:00
vf Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
wmi [REACTOS] Fix traces with missing arguments. 2021-11-21 12:57:35 -05:00
CMakeLists.txt [CMAKE] Elimitate the use of GCC and CLANG variables 2022-05-27 01:37:34 +03:00
guid.c [NTOSKRNL] Rewrite IoAssignDriveLetters to make NT5 compliant 2019-10-21 18:28:40 +02:00
KrnlFun.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
ntdll.S Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
ntos.cmake [NTOS:KE/x64] Implement initial IPI code 2023-12-18 23:16:39 +02:00
ntoskrnl.rc [NTOS:INBV] Isolate the bitmap resources pertaining to the boot theme/animation into their resource sub-file. 2023-12-24 22:39:36 +01:00
ntoskrnl.spec [NTOS:IO] Implement IoConnectInterruptEx for fully specified interrupt types (#5416) 2023-07-14 16:17:27 -07:00
sysfuncs.lst Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00