Commit Graph

289 Commits

Author SHA1 Message Date
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
Mateusz Jablonski
2cca28af07 Create wrappers for drm_i915_gem_get_tiling and drm_i915_gem_set_tiling
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-17 11:08:08 +02:00
Mateusz Jablonski
06517f429f Create wrappers for drm_i915_gem_create and drm_i915_gem_userptr
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-16 17:03:29 +02:00
Mateusz Jablonski
3c18744d10 Create a wrapper for drm_i915_gem_execbuffer2
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-12 17:58:16 +02:00
Mateusz Jablonski
40e00e5c08 Create a wrapper struct for drm_i915_reg_read
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-12 14:59:18 +02:00
Mateusz Jablonski
268393d776 Create wrapper for drm_i915_gem_exec_object2
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-12 13:14:27 +02:00
Mateusz Hoppe
c021e2ec5e L0 Debugger - DebugSession linux implementation
- new feature, enabled with PRELIM build
- implementation of debug session for linux
- move ResourceClass enum from Drm to drm_debug.h

Resolves: NEO-6814


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-05-11 15:30:32 +02:00
Artur Harasimiuk
e9be9b64c6 clang-tidy configuration cleanup
Define single .clang-tidy configuration with all used checks and use
NOLINT to selectively silence tool. That way cleanup should be easier.
third_part/ has its own configuration that disables clang-tidy for this
folder.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-11 14:02:04 +02:00
Bartosz Dunajski
c4fcd7ed9b Capability to set low scheduling priority for Wddm context
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-10 16:44:25 +02:00
Jaime Arteaga
3f26f45c10 Add support for IPC handles with implicit scaling
When using implicit scaling, device allocations may have
more than one internal allocation created internally. In that case,
a separate dma-buf handle per internal allocation needs to be
exported.

So introduced two driver experimental extensions to export and
import more than one IPC handle:

- zexMemGetIpcHandles
- zexMemOpenIpcHandles

Related-To: LOCI-2919

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-05-09 00:38:17 +02:00
Bartosz Dunajski
06fa316a75 Assign pat_index to BO during creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-21 13:25:13 +02:00
Mateusz Jablonski
b5b8762faf refactor direct submission: Pass command stream receiver to ctor
Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-19 23:02:55 +02:00
Patryk Wrobel
352583b9d9 Detect GPU hang in evictUnusedAllocations()
This change introduces checking of the return value
of wait function in case of blocking version of
evictUnusedAllocations(). Furthermore, it propagates
the error to the callers. It contains also ULTs.

Related-To: NEO-6681
Signed-off-by: Patryk Wrobel <patryk.wrobel@intel.com>
2022-04-13 15:39:02 +02:00
Daniel Chabrowski
4d4ccfd128 Remove cache info base class
There is only one implementation of said class and we don't
even adhere to the interface it provides.

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-04-07 18:15:57 +02:00
Mateusz Jablonski
b45ffdb334 Move drm command stream fixture to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-01 15:58:37 +02:00
Joshua Santosh Ranjan
71abef22bd Code cleanup
This patch fixes missed type-casting.

Related-To: LOCI-3022

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-03-23 19:05:48 +01:00
Fabian Zwolinski
3d8effcd69 Clean-Up unused code related to GMock
This commit:
- Removes usings e.g. ::testing::Return
- Removes unnecessary gmock inclues
- Replaces Gmock macros (e.g. EXPECT_THAT) with our custom implementations

Related-To: NEO-4941
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-22 16:16:34 +01:00
Fabian Zwolinski
726b676983 Remove DrmMockImpl and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-18 15:45:48 +01:00
Fabian Zwoliński
08d1af76c3 Revert "Remove DrmMockImpl class and use DrmMock instead"
This reverts commit 4ccbbfa41476ecccdee181b4e6b2e72eed5eaab1.
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-16 13:56:14 +01:00
Fabian Zwolinski
2e6d8fefa3 Remove DrmMockImpl class and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-11 15:12:11 +01:00
Joshua Santosh Ranjan
c7ce397b17 Metrics IP Sampling Add Support for Streamer APIs
This Patch adds support for collecting IP Metrics using
StreamerOpen, StreamerClose and StreamerReadData

Related-To: LOCI-2755
Related-To: LOCI-2756

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-03-11 03:03:22 +01:00
Daniel Chabrowski
10e7b9d5be Test prelim buffer object ext
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-09 12:39:43 +01:00
Jaime Arteaga
a010fb3634 Dont close shared handle on imported allocations
Related-To: LOCI-2272

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-03-06 04:35:47 +01:00
Joshua Santosh Ranjan
10f98b45db Metrics Add Os specific implementation Structure for IP Sampling
This patch adds OS specific implementation for IP Sampling.
Implementation for linux is provided as part of this patch.

Related-To: LOCI-2787

--- master-files
level_zero/tools/source/metrics/linux/os_metric_ip_sampling_imp_linux.cpp
level_zero/tools/source/metrics/os_metric_ip_sampling.h
level_zero/tools/source/metrics/windows/os_metric_ip_sampling_imp_windows.cpp
level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_ip_sampling_linux_prelim.cpp
level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_ip_sampling_linux_upstream.cpp
level_zero/tools/test/unit_tests/sources/metrics/windows/test_metric_ip_sampling_windows.cpp
--- master-files

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-02-18 23:15:44 +01:00