Commit Graph

112 Commits

Author SHA1 Message Date
Patryk Wrobel
c0342a0ab5 Optimize binaries' size by adjusting linkage of constants in headers
When header is included for the first time in translation unit,
then preprocessor simply copy-pastes its content. If we define a
constant in a header file and this constant has internal linkage
then each and every translation unit, which includes this header
will have its own copy of this constant.

C++17 introduces inline variables, which are meant to allow creation
of variables in header files, which do not cause multiple instances.

The inline variable has a single instance when:
- constexpr is used without static (constexpr implicitly implies inline)
- inline is used without static
- inline const is used without static (const does not imply internal linkage
when used with inline)

Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-08-26 22:52:04 +02:00
Artur Harasimiuk
d14e45c8e6 infra update
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-08-25 12:25:16 +02:00
Artur Harasimiuk
99c5de855c improve error reporting from ULTs
- preserve original stdout and restore in signal handler what is needed
if stdout capture was enabled by GTest framework
- print information about time elapsed on SIGALRM

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-08-18 15:21:53 +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
Mateusz Jablonski
bfc0919999 Remove usage of TestLegacy from shared tests
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-16 14:36:33 +02:00
Mateusz Jablonski
5ffeac44c5 Correct shared fixture methods name to meet clang-tidy requirements
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-16 12:52:49 +02:00
Mateusz Jablonski
6a46e8f0ca Correct method names in device and module fixtures
correct naming in derived classes

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-12 10:40:56 +02:00
Mateusz Jablonski
e6fc458d4b Add a struct for test fixtures with correct method naming convention
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-11 12:55:52 +02:00
Mateusz Jablonski
db2d1a53b9 Cleanup includes in drm_memory_manager.h
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-26 20:53:21 +02:00
Mateusz Jablonski
b49e2237c5 Pass drm to MemoryInfo ctor
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-25 15:44:10 +02:00
Mateusz Jablonski
9683d23e2f ULT: include vm destroy ioctls in expected ioctls on destroy
Related-To: NEO-6852, NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-25 14:32:32 +02:00
Mateusz Jablonski
2d151ec0fe Move Drm cleanup logic to separated method
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-25 12:23:37 +02:00
Compute-Runtime-Validation
ead3a95be3 Revert "Support for L0 to read Device LUID from the WDDM driver using ext Pro...
This reverts commit 8124bff387.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-23 08:01:24 +02:00
Spruit, Neil R
8124bff387 Support for L0 to read Device LUID from the WDDM driver using ext Properties
- Added Support for reading the Device LUID of the given device used in
Windows WDDM.
- Added inital support for passing back the NodeMask of 1.

Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2022-07-22 21:21:32 +02:00
Igor Venevtsev
547dd59272 Debugger L0 Win: Implement CREATE_DEBUG_DATA/MODULE_CREATE events handling
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-20 13:20:50 +02:00
Mateusz Jablonski
a4e9ede440 Dont use global namespaces of i915 definitions
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-19 13:17:59 +02:00
Mateusz Jablonski
78c96db2fa Create wrappers for different version of i915 headers
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-18 10:15:44 +02:00
Artur Harasimiuk
4bdd8860a1 test.h refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-07-04 18:20:07 +02:00
Artur Harasimiuk
0e65d3e667 hw_cmds.h usage refactor
create header with include for DEFAULT_PLATFORM what can be used in some
places

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-29 18:03:21 +02:00
Mateusz Jablonski
c9e2b4bc32 Pass Drm to ioctl helper ctor
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-29 15:47:01 +02:00
Milczarek, Slawomir
30071599df Create buffer object with multiple lmem regions for kmd-migrated buffers
This commit enables cross-tile kmd migration for buffers in local memory

Related-To: NEO-6977

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-06-29 13:47:58 +02:00
Mateusz Jablonski
b72fcad1be Drm: call ioctl using ioctl helper if possible
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-29 11:29:40 +02:00
Artur Harasimiuk
2cc2d05c37 remove unused include
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-28 10:59:30 +02:00
Artur Harasimiuk
a701e28ca5 DrmMM fixtures refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-27 22:50:56 +02:00
Artur Harasimiuk
4dff4e165c includes simplification
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-06-27 15:08:46 +02:00
Mateusz Jablonski
70cef0cfe8 Create enum values for I915 tiling mode
Related-To: NEO-6852, NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-21 23:33:50 +02:00
Mateusz Jablonski
e67307b724 Add DrmParam enum values for I915_EXEC values
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-15 08:39:39 +02:00
Bartosz Dunajski
d3da44c9aa GEM_MMAP removal
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-10 11:57:47 +02:00
Mateusz Jablonski
ffe77d06e3 Ensure that ioctl helper is initialized only once
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-08 17:54:21 +02:00
Mateusz Jablonski
cd2f36db5f Remove redundant mock class
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-08 14:18:31 +02:00
Bartosz Dunajski
9e1c9ec95e Use MMAP_OFFSET ioctl to lock BufferObject
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-06-07 11:12:31 +02:00
Mateusz Jablonski
695958bd10 Move I915_PARAM values to DrmParam enum class
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-06 18:46:04 +02:00
Naklicki, Mateusz
65ca31d817 Remove magic number from createGemExt method
Related-to: NEO-6730
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-05-31 17:10:50 +02:00
Naklicki, Mateusz
58ec879c46 Add support for gem create extension to create VM_PRIVATE BOs
Add support for PRELIM_I915_GEM_CREATE_EXT_VM_PRIVATE extension
to create VM_PRIVATE BOs.

Related-to: NEO-6730
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-05-31 15:18:33 +02:00
Mateusz Jablonski
9938b4001d Use ioctl helper when creating VM
Related-To: NEO-6999, NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-27 21:52:07 +02:00
Mateusz Jablonski
b3814e41b4 Create enum for Ioctl request values
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-27 13:22:59 +02:00
Mateusz Jablonski
05cb48976f Create wrappers for drm getparam, query, gem close, prime handle, version
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-24 19:51:27 +02:00
Mateusz Jablonski
7d3fc9ab74 Create wrappers for gem context destroy, gem vm control, gem wait, reset stats
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-24 16:01:05 +02:00
Mateusz Jablonski
51d1752a68 Create a wrapper for drm_i915_gem_context_create_ext
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-24 15:21:58 +02:00
Mateusz Jablonski
b6a9ed98c9 test: move drm mocks/fixtures and related tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-23 17:48:07 +02:00
Mateusz Jablonski
2202d05ea1 Create a wrapper for drm_i915_gem_context_param
Related-To: NEO-6852, NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-20 16:11:51 +02:00
Mateusz Jablonski
47d9d8f9e2 test: add missing include
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-20 16:02:52 +02:00
Mateusz Jablonski
d5771d2e93 Create a wrapper for drm_i915_gem_set_domain
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-20 15:19:40 +02:00
Mateusz Jablonski
c47c6b9d94 test: correct parameters for memcpy_s function, limit source buffer size
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-20 14:34:38 +02:00
Artur Harasimiuk
dc78375d46 use test_files from source location in ults
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-20 14:20:13 +02:00
Mateusz Jablonski
3ac5853e8d Add a method to check drm support
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-20 12:44:19 +02:00
Kamil Diedrich
ddd8a08fac Add mechanism to avoid calling gdi calls while process exit
Signed-off-by: Kamil Diedrich <kamil.diedrich@intel.com>
2022-05-20 11:11:52 +02:00
Mateusz Jablonski
2f63131f0d Create wrappers for drm_i915_gem_mmap and drm_i915_gem_mmap_offset
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-19 18:51:09 +02:00
Daniel Chabrowski
7463e1970b Cleanup headers
Make TUs and headers self-contained, remove unused headers

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-05-18 11:42:06 +02:00
Mateusz Jablonski
ac3005a463 Create a wrapper for drm_i915_query_item
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-18 11:32:44 +02:00