Commit Graph

42 Commits

Author SHA1 Message Date
Jack Myers 7f9fadc314 fix: regression caused by tbx fault mngr
Addresses regressions from the reverted merge
of the tbx fault manager for host memory.

Recursive locking of mutex caused deadlock.

To fix, separate tbx fault data from base
cpu fault data, allowing separate mutexes
for each, eliminating recursive locks on
the same mutex.

By separating, we also help ensure that tbx-related
changes don't affect the original cpu fault manager code
paths.

As an added safe guard preventing critical regressions
and avoiding another auto-revert, the tbx fault manager
is hidden behind a new debug flag which is disabled by default.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2025-01-09 07:48:53 +01:00
Compute-Runtime-Validation 124e755b9d Revert "fix: regression caused by tbx fault mngr"
This reverts commit 9a14fe2478.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-19 17:35:03 +01:00
Jack Myers 9a14fe2478 fix: regression caused by tbx fault mngr
Addresses regressions from the reverted merge
of the tbx fault manager for host memory.

This fixes attempts by the tbx fault manager
to protect/unprotect host buffer memory, even
if the host ptr was not driver-allocated.

In the case of the smoke test that triggered
the critical regression, clCreateBuffer was
called with the CL_MEM_USE_HOST_PTR flag.
The subsequent `mprotect` calls on the
provided host ptr then failed.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-18 23:16:36 +01:00
Marcel Skierkowski ee0648c365 refactor: use virtualFileSystem in FileLogger ULTs
restored the possibility of different writing modes in the FileLogger
mocked writeToFile in TestFileLogger

Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2024-12-18 19:01:39 +01:00
Marcel Skierkowski e27a6dc280 refactor: use virtualFileSystem in ULTs
reducing the number of tests that have interactions with filesystem.
writeDataToFile() saves filename and content in std::map.
fileExistsHasSize() checks if file was previously written to virtualFileSystem
loadDataFromVirtualFile() fetches data from std::map based on filename

Related-To: NEO-7006
Signed-off-by: Marcel Skierkowski <marcel.skierkowski@intel.com>
2024-12-13 17:57:07 +01:00
Compute-Runtime-Validation 6c5d9a6ed7 Revert "feature: extend TBX page fault manager from CPU implementation"
This reverts commit 51c0e80299.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-12-12 12:30:22 +01:00
Jack Myers 51c0e80299 feature: extend TBX page fault manager from CPU implementation
In TBX mode, the host could not write to host buffers after access from device
code due to the lack of a migration mechanism post-initial TBX upload.
Migration is unnecessary with real hardware, but required for TBX.

This patch introduces a new page fault manager type that extends the original
CPU fault manager, enabling automatic migration of host buffers in TBX mode.

Refactoring was necessary to avoid diamond inheritance, achieved by using a
template parameter as the base class for OS-specific fault managers.

Related-To: NEO-12268
Signed-off-by: Jack Myers <jack.myers@intel.com>
2024-12-11 09:09:50 +01:00
Maciej Bielski 45e78fea76 fix: use productHelper in getPatIndexInfoString() on Windows
Fix the PAT-index reporting in logger as currently on Windows reported
values are simply wrong.

The changed logic dependends on `RootDeviceEnvironment` and in order to
avoid introducing such dependencies into logger.[ch] the
`logAllocation()` is no longer a member of `FileLogger` but
a free-function instead (and a separate .cpp file). This is important
because the source files `logger.[ch]` are also used by ocloc library
and there is no point to contaminate ocloc code structure with
unnecessary dependencies.

Related-To: NEO-9421
Signed-off-by: Maciej Bielski <maciej.bielski@intel.com>
2024-10-22 19:27:13 +02:00
Jitendra Sharma b816f6e127 test: check space also in timestamp logs of debugger print
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-09 15:03:01 +02:00
Jitendra Sharma a111c18fb1 refactor: Add timestamp to all debugger log
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-08 18:12:20 +02:00
Jaroslaw Warchulski 63da79798d refactor: reduce the number of GraphicsAllocation constructors and derivatives
Signed-off-by: Jaroslaw Warchulski <jaroslaw.warchulski@intel.com>
2024-06-18 21:31:37 +02:00
Brandon Yates cb6e63ed05 feature: Add elapsed time to debugger logs
Related-to: NEO-11469

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-06-07 01:14:14 +02:00
Mateusz Hoppe 5e15543b14 test: improve unit tests - use virtual file system
- use virtualFileSystem in ULTs, writeDataToFile() does not create file
but instead saves filename. Call to fileExists() checks if file was
previously written

Related-To: NEO-7006

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-03-08 13:34:19 +01:00
Katarzyna Cencelewska 7bbe57c671 feature: add debug info for logging pat indexes
Related-To: HSD-18031172224
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-01-23 13:34:35 +01:00
Mateusz Jablonski 01dd503e47 refactor: correct naming of MemoryPool enum values
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 07:51:39 +01:00
Mateusz Jablonski b182917d9d refactor: correct naming of allocation types
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-11 16:23:37 +01:00
Mateusz Jablonski da957d1a37 refactor: correct naming of enum class constants 1/n
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-05 14:26:42 +01:00
Mateusz Jablonski c9664e6bad refactor: rename global debug manager to debugManager
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-30 13:00:59 +01:00
Mateusz Jablonski c7daa7a960 test: add per test case timeout
fail unit test when takes more than 5s
fail aub test when takes more than 20s

add mechanism to control timeout per aub/mt/unit test
disable tests with fstream

Related-To: NEO-7006

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-11-27 12:58:11 +01:00
John Falkowski d49190f4ae feature: Add debug/release variables prefixes
Add debug/release variables with prefixes for Level Zero, OpenCL and NEO

Resolves: NEO-6357

Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-08-22 15:15:45 +02:00
Artur Harasimiuk f6e0c0cf89 Revert "feature: Add debug/release variable prefixes"
This reverts commit ec95d9314a.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2023-08-18 12:42:39 +02:00
John Falkowski ec95d9314a feature: Add debug/release variable prefixes
Resolves:  NEO-6357
Signed-off-by: John Falkowski <john.falkowski@intel.com>
2023-08-10 14:01:09 +02:00
Konstanty Misiak 1f37e69fd2 Refactor of IO functions
Related-To: NEO-4562

Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2023-04-13 10:46:47 +02:00
Mateusz Hoppe 43d089f011 fix: unit test fix for redirecting logs to file
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-12-29 12:53:05 +01:00
Mateusz Hoppe 734a9fb952 feature: Allow redirecting debugger logs to log file
- enhacement for logging debug messages to file

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-12-27 16:01:19 +01:00
Warchulski, Jaroslaw cf7e7fbc4e CMake: don't include shared/test/unit_test when shared tests are skipped
opencl/test/unit_test/gen9/hw_helper_tests_gen9.cpp -> unit_test/gen9
opencl/test/unit_test/gen11/hw_helper_tests_gen11.cpp -> unit_test/gen11
unit_test/device_binary_format/elf/elf_tests_data.h -> common/device_binary/elf

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-25 10:48:37 +02:00
Warchulski, Jaroslaw d795182eae Move files from shared/test/unit_test to /common (preamble, utilities)
unit_test/preamble/preamble_fixture.h -> common/fixtures
unit_test/source_level_debugger -> common/
unit_test/utilities/base_object_utils.h -> common/utilities
unit_test/utilities/destructor_counted.h -> common/utilities
unit_test/utilities/logger_tests.h -> common/utilities

Related-To: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-08-17 11:24:58 +02:00
Warchulski, Jaroslaw 1388818a0e Move neo_shared_tests sources from /common to /unit_test
Resolves: NEO-6524
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-07-26 10:47:38 +02:00
Pawel Cieslak 8a700c5187 Move non-ult shared files to single directory
Add SKIP_SHARED_UNIT_TESTS flag

Related-To: NEO-5201
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2021-02-10 21:03:13 +01:00
Adam Cetnerowski a3097ae21a ULT renaming: Debug Settings tests
Related-To: NEO-2236

Signed-off-by: Adam Cetnerowski <adam.cetnerowski@intel.com>
2021-01-06 07:27:51 +01:00
Konstanty Misiak a199ae4d8b Add linux-only switch to enable debug env variables read
Related-To: NEO-4941

Change-Id: I47ebddd5a902f20b79c37e18a49f0bba652fd119
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-08-27 08:35:32 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Lukasz Jobczyk 8f30d87a1e Unify release variables
Resolves: NEO-4719

Change-Id: Ib2ab959c0a1eb45f24a4e0e2f02c437d96d47751
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-06-18 08:56:29 +02:00
Konstanty Misiak 9e8945ca83 Move shared tests to the new target [3/n]
Change-Id: I2479d283cffc9c7f8b49ac616026d9afa491da29
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-06-09 13:01:36 +02:00
Konstanty Misiak a3a1f49dc0 Move shared tests to the new target [2/n]
Change-Id: I6d4f955adfecccc8c33ffa7a6c36605ccf5ab7a4
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-05-28 14:21:35 +02:00
Sebastian Luzynski fd195f0967 LoopAtPlatformInitialize renamed to LoopAtDriverInit and triggers earlier
Related-To: NEO-4526
Change-Id: I13067badfbaf9f46c993b08126fb35e53d68f6d3
2020-04-28 13:47:04 +02:00
Michal Mrozek 7b5778c048 Add debug flag to force system memory placement.
-remove not needed Report64BitIdentifier
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>

Change-Id: Ic6ae96e2a575a088742f3b08eb40c5b400f93088
2020-04-07 09:53:00 +02:00
Lukasz Jobczyk 85ec469bd4 Add support for int64_t registry keys
Resolves: NEO-4505

Change-Id: I583d26a5932193acfd58eac50462ec81cd460d8f
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-31 16:14:44 +02:00
Mateusz Jablonski 441ff1fcdf Don't use the entire std namespace
Change-Id: I2014117a154fb2c1a61af5c31baa228b4fb3dbc2
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-27 19:57:11 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski ee5ebde417 Add absolute include paths
Change-Id: I5b8631603b0f0b2ed8eb1a61f7e7770b27867423
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 01:21:00 +01:00
kamdiedrich 9e97b42ee6 Reorganization directory structure [4/n]
Change-Id: Ib868ed62d12ea8f9f123644219ba299e86a658ac
2020-02-24 01:04:42 +01:00