160 Commits
Author SHA1 Message Date
Timo Kreuzer 29e8ed11af [KMTEST] Fix ObType test to use NT6 callbacks for ReactOS 2026-07-28 12:16:32 +00:00
Timo Kreuzer 9675f756ce [NDK] Fix definition of OB_CLOSE_METHOD 2026-07-28 12:16:32 +00:00
Timo Kreuzer e45b639372 [KMTEST] Make Ob type tests work on Vista+ 2026-07-12 07:44:53 +00:00
Timo Kreuzer 72425186d7 [KMTEST] Rename kmtest_.exe back to kmtest.exe 2026-07-07 11:32:08 +00:00
Justin Miller 4cba65d760 [NTOS:ARM3] Change calculation for more system PTEs (#8613)
* [NTOSKRNL] Increase MI_NUMBER_SYSTEM_PTES for AMD64
* [NTOS:MM] Move the system PTE space on x86 to a different spot
* [KMTESTS] Adjust KmTest
2026-03-05 14:57:09 +00:00
Adam Słaboń afbadf5c44 [NTOS:MM][KMTESTS] MmMapViewOfSection: Handle PAGE_NOCACHE and PAGE_WRITECOMBINE flags (#8502)
- Remove the hack for PAGE_NOCACHE flag that was introduced in commits aa52dc7498 (r68611) and 33d53d44da (r68612) for CORE-9808. The test case for PAGE_NOCACHE, introduced in 7346aece52 (r68351), did not expose any additional problems without it anymore.
- Allow a PAGE_WRITECOMBINE flag. Fixes a regression introduced in 59ae6b3e15 (CORE-20298) that caused the OpenGL ICD in Nvidia 78.05 driver to not use GPU hardware to accelerate OpenGL anymore (reported and tested by winterhell on Discord).
- Add a test case for MmMapViewOfSection with PAGE_WRITECOMBINE. The test passes on Windows 2003 SP2 and Vista RTM.
- Fix ASSERTs in MI_MAKE_HARDWARE_PTE functions.
2025-12-18 12:30:40 +03:00
Mohammed al-Ramadany ef03e090a6 [KMTESTS] ExResource fixes (#8341)
- Check Windows version at runtime for select tests
- Check ActiveEntries too on NT6+
2025-11-17 14:27:00 -06:00
Mohammed al-Ramadany 03f4387231 [KMTEST] ExHardError and RtlCaptureContextKM fixes (#8342)
- Adjust expected values according to NT version and architecture
2025-10-18 09:28:59 -05:00
Carl J. Bialorucki d992cf0ba2 [KMTEST] Skip tests that bugcheck on Vista (#8406)
- [kmtest_drv] Increase timeout period from 10 seconds to 30 seconds. This was needed on my machine because of log spam in the kmtest:IoDeviceInterface test. I also reduced the log spam in that test, making this not necessary. However, I left it in as I figured if I ran into this issue, others may too in the future with other tests.
- [kmtest:ExFastMutex] Skip concurrent fast mutex tests on Vista+. It appears that this was also causing hangs on WS03 x64 so I moved the skip logic there and combined it with the vista+ skip.
- [kmtest:IoDeviceInterface] Change some traces to DPRINTs since it was creating excessive log spam that slowed down the test enough to trigger the previous timeout.
- [kmtest:KeEvent] Skip concurrent event tests on Vista+.
- [kmtest:KeGuardedMutex] Skip on Vista+.
- [kmtest:ObType] Disable making custom object types as this is invalid on Vista+.
- [kmtest:PoIrp] Skip on Vista+ (already skipped on WS03 x64).
- [kmtest:SeInheritance] Skip on Vista+.
2025-10-07 12:17:13 -05:00
Mohammed al-Ramadany 2a0acdbadc [KMTESTS] Kmtest fixes (#8308)
- [KMTEST:IOFILESYSTEM] Add support for NTFS
- [KMTEST:IODEVICEOBJECT] Work around a Windows 7 bug, account for struct size changes on x64, accept Vista+ behavior
- [KMTEST:EXPOOLS] Accept pool being promoted to NonPaged on Vista+, accept 2GB allocation on x64, guard an undocumented behavior
- [KMTEST:CMSECURITY] Add tests for Vista-Win8.1
2025-09-30 10:57:23 -05:00
Hermès Bélusca-Maïto e250b3fd01 [NDK][KMTESTS] Move the LOGICAL type definition to NDK
The LOGICAL (32-bit boolean) type is already defined for kernel-mode
in the XDK/DDK ntdef.h header. Add the type in the NDK for usage in
user-mode NT code also.

The definition present in kmt_platform.h can now be removed, since
it can now use the one from the NDK.
2025-08-25 23:11:45 +02:00
Serge Gautherie d68a9d7aa4 [KMTESTS] KmtAreInterruptsEnabled(): Be explicit about architectures (#8295)
Let this function compile/run on other architectures, like ARM*.
And improve code a bit.

ROSTESTS-363
2025-08-16 19:03:17 +02:00
Carl J. Bialorucki 19e8fbb20e [KMTESTS] Fixes for 2003, Vista, 7, 8, 10 x86 and x64 (#8175)
Fix several kmtests in preparation for testbots with newer versions of Windows. There's still more kmtests to fix, but this fixes all the kmtests that bugchecked during my testing.
2025-07-03 14:33:59 -06:00
Timo Kreuzer 00f45a4a73 [KMTEST] Remove totally broken PoolsCorruption test
It was already disabled.
2025-07-01 10:50:48 +00:00
Stanislav Motylkov 21d02b8266 [KMTESTS] Allocate buffer for the test list dynamically
Fixes broken test list output.
Addendum to 7c3a119d6d. CORE-20078
2025-06-04 22:04:03 +02:00
Dmitry Borisov 7c3a119d6d [KMTESTS:HAL] Add a test for string I/O intrinsic functions
CORE-20078
2025-06-04 10:52:34 +03:00
Dmitry Borisov 4a3a446ba7 [KMTESTS] Add the ability to detect a virtual machine
This allows the tests to interact directly with hardware
CORE-20078
2025-06-04 10:52:34 +03:00
Timo Kreuzer e326b06983 [KMTEST] Improve MmSection test 2025-05-22 18:39:14 +00:00
Timo Kreuzer 281855e88c [KMTEST] Fix MmSection tests 2025-05-20 16:30:06 +00:00
Timo Kreuzer d1f9e06a4f [REACTOS] Change manifest architecture from "X86"/"" to "*" 2025-05-05 10:02:51 +00:00
Oleg Dubinskiy 6b2f00e70a [KMTESTS:IO] Rewrite IoDeviceInterface kmtest
Add new kernel-mode test for Device Interface functions, based on the patch by Mark Jansen.
The previous one was buggy and crashed even on Windows.
The new one doesn't fail, and works without bugs. Although there is missing one test case (for IoRegisterDeviceInterface).
Also perhaps IoRegister/UnregisterPlugPlayNotification testcases should be keept, if they correspond to Device Interface functions.
CORE-17361
2025-02-02 23:30:38 +01:00
Hermès Bélusca-Maïto 40ea081198 [KMTESTS] Temporarily disable the debugger disable/reenable tests (#7424)
They will be re-enabled ONCE our KDBG and KDCOM dlls correctly support
disabling and re-enabling.
2025-01-28 15:54:04 +01:00
Hermès Bélusca-Maïto 94cb4d6c0c [KMTESTS] Add tests for KdSystemDebugControl and NtSystemDebugControl (#7424)
Tested on Windows 2003 SP1.
Partially tested (but not completely) on higher versions.
2025-01-28 15:53:58 +01:00
Hermès Bélusca-Maïto 6ede6ac246 [KMTESTS] Remove "EnablePrivilege*" helpers + Fix typo
Their functionality is already ensured by RtlAdjustPrivilege().
2025-01-28 15:37:10 +01:00
Katayama Hirofumi MZ fe11f7a2e5 [REACTOS] Refresh old URLs (#7632)
URLs are getting old. We have to
update URLs for documentation
purpose.
JIRA issue: CORE-19963
- Refresh old URLs.
- Add " (DEAD_LINK)" labels
  to dead links.
- Use MS Learn links rather
  than MSDN ones.
- Some dead links revived by
  Web Archive.
- Don't change Wine Tests
  and Wine Sync.
- Don't change 3rd party libraries.
- Don't append "redirected" labels.
2025-01-28 13:36:45 +09:00
Hermès Bélusca-Maïto bae799382a [KMTESTS] Improve IoVolumeDeviceToDosName() tests (#6990)
- Limit the HarddiskVolume loop to 32 trials (instead of an unknown
  number of them). Ideally the list of volumes has to be queried from
  the volume manager, instead of hardcoding them (TODO).

- Verify that the buffer returned by IoVolumeDeviceToDosName() is
  indeed a unicode multi-string (ends with two NULs), and, in the
  case it specifies a volume GUID, that it's a valid one.
2025-01-21 19:15:58 +01:00
Hermès Bélusca-Maïto 02a394ea57 [NTDLL_APITEST][KMTESTS] Add tests for NtQueryObject(ObjectNameInformation) (#7592)
CORE-13525
2025-01-06 21:30:17 +01:00
Doug Lyons e0759a5e35 [NTOS:MM] Finish MmAllocateMappingAddress and MmFreeMappingAddress and fix test failures. (#7491)
* [NTOS:MM] Fix MmAllocateMappingAddress and MmFreeMappingAddress and their regression test failures.
Follow up of #7260.
This fixes kmtest:MmReservedMapping failures and hang.
Based on mm-implement-mappingaddress.patch by Thomas Faber and some changes by Oleg Dubinskiy.
kmtest:MmReservedMapping revisions and updates to Vista+ method by Timo Kreuzer.

Signed-off-by: Oleg Dubinskiy <[email protected]>
Signed-off-by: Timo Kreuzer <[email protected]>

CORE-10147, CORE-14635, CORE-17409, CORE-19318
2024-11-18 02:44:51 -06:00
Timo Kreuzer 0c2cdcae83 [REACTOS] Add missing line breaks at end of file 2024-10-06 10:47:11 +03:00
Thomas Faber 44bdafa17e [KMTESTS:SE] Fix failing tests. 2024-09-12 17:44:13 +03:00
Thomas Faber 156053cafd [NDK] Match AUX_ACCESS_DATA definition with publicly available version.
Looks like public symbols contain this structure starting with Win7,
so we can deduce what it looked like in Win2003.
Note that our previous definition was missing a second ULONG at the
end, which can be seen in the SeQueryInfoToken kmtest -- if you
allocated only sizeof(AUX_ACCESS_DATA), the test would crash with
a 4 byte buffer overflow.
2024-09-12 17:44:13 +03:00
Thomas Faber ff410211e9 [KMTESTS:SE] Don't modify internal data structure, this might cause buffer overrun. 2024-09-12 17:44:13 +03:00
Thomas Faber 206df96bc4 [KMTESTS:SE] Correctly allocate PrivilegeSet buffers. 2024-09-12 17:44:13 +03:00
Thomas Faber 64a6bd4c3e [KMTESTS:SE] Avoid use of uninitialized pool and hardcoded offsets. 2024-09-12 17:44:13 +03:00
Timo Kreuzer e77da17f68 [KMTEST] Add test for FileEndOfFileInformation 2024-04-29 22:50:18 +02:00
Dmitry Borisov f4a38a05ec [KMTESTS:NTOS_IO] Add a simple test for IoConnectInterrupt
CORE-17256
2024-02-11 20:24:15 +03:00
Timo Kreuzer 908cda5ee4 [KMTEST] Fix duplicated test names to stop testman from blowing up 2023-11-18 15:01:06 +02:00
Timo Kreuzer a3d22bba1a [RTL_APITEST] Move RtlIntSafe test from kmtest to rtl_apitest 2023-11-10 19:00:41 +02:00
Timo Kreuzer bdf52a9868 [RTL_APITEST] Add rtl_unittest
First test is RtlCaptureContext
2023-11-10 19:00:41 +02:00
Timo Kreuzer 520cf2294d [APITESTS] Share ok_eq_* macros between apitests and kmtests
This makes it possible to share sources between kmtest and apitests, e.g. for rtl.
2023-11-10 19:00:41 +02:00
Timo KreuzerandStanislav Motylkov e7cb6f4920 [KMTEST:TcpIp] Use 10 second timeout value instead of INFINITE (#5586)
* [KMTEST:TcpIp] Use 10 second timeout value instead of INFINITE

On x64 the test sometimes fails to connect and then times out on the testbot, causing the system to be rebooted.

Co-authored-by: Stanislav Motylkov <[email protected]>
2023-08-21 21:46:20 +03:00
George Bișoc f364bfc8f4 [KMTESTS:OB] Refactor OBJ_DIRECTORY_TYPE_INFO_SIZE define construct
Object types are mere type names with no backslash. Also remove wcslen()
from the define, it's not needed.
2023-03-25 19:47:26 +01:00
George Bișoc 1b33c9415c [KMTESTS:OB] Write some object information querying tests 2023-03-25 11:55:11 +01:00
Joachim Henze 09dde2cff9 [REACTOS] "http://www.reactos" -> "https://reactos" (#5043)
To harmonize, to save some bytes, and last but not least for security reasons.
This can be understood as an addendum to (#2619).
2023-02-06 17:01:52 +03:00
Mark Jansen 3bf4ef6fec [KMTESTS:CC] Disable Cc tests that seem to hang TestWHS 2023-02-02 19:08:00 +01:00
Mark Jansen 83f076918a [KMTESTS:CC] Disable broken CcCopyRead / CcCopyWrite 2023-02-02 15:08:40 +01:00
Thomas Faber 04b35ecc23 [KMTESTS:IO] Fix some failures in IoDeviceObject test. ROSTESTS-380 2023-02-01 20:05:57 -05:00
Thomas Faber 6b863f63c2 [KMTESTS:MM] Fix MmReservedMapping test failures on PAE kernels. 2023-01-29 11:39:56 -05:00
Thomas Faber 5f1fff696b [KMTESTS:KE] Correctly handle MP builds in KeSpinLock test. 2023-01-28 23:26:30 -05:00
Thomas Faber 2f63da62e3 [KMTESTS:MM] Fix failures in MmMdl test on machines with 2GB of free RAM. 2023-01-28 23:17:52 -05:00