Lukasz Jobczyk
5bcf500c13
fix: Extend ULLS light mutex range
...
If some operatioins requires ULLS light stop, execute such operations
under mutex in pair with ULLS stop to ensure no other thread will start
ULLS.
Related-To: NEO-14406, NEO-13922
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-04-07 17:35:04 +02:00
Maciej Plewka
36fa6d66ae
fix: lock csr in stopDirectSubmission if needed
...
Related-To: NEO-13875, NEO-14143, HSD-16026538384, HSD-16026780358
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2025-03-18 09:30:38 +01:00
Szymon Morek
f08b32761e
fix: avoid race when evicting resources
...
Related-To: NEO-13843
DrmMemoryOperationsHandler::mutex is used for residency
handling.
However, this mutex is not being locked during eviction when vm bind
failed.
This is causing races for example when ULLS controller wants to make
resources resident, and user thread wants to evict
them.
Fix is to explicitly obtain lock in problematic path.
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2025-03-07 07:01:41 +01:00
Lukasz Jobczyk
051f7928f1
performance: tiny improvements for ULLS light
...
Related-To: NEO-13922
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-17 23:52:33 +01:00
Lukasz Jobczyk
bc2b49b958
feature: Introduce ULLS light
...
Add core implementation of ULLS without VM_BIND interface aka ULLS
light.
Related-To: NEO-13922
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2025-02-12 17:52:02 +01:00
Chandio, Bibrak Qamar
7149743162
fix: Set vmbind user fence when makeMemoryResident
...
Related-To: NEO-11977, GSD-10293
Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-02-10 14:20:09 +01:00
Compute-Runtime-Validation
d23249b061
Revert "fix: Set vmbind user fence when makeMemoryResident"
...
This reverts commit 80dc4fb43a
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2025-01-31 11:36:29 +01:00
Chandio, Bibrak Qamar
80dc4fb43a
fix: Set vmbind user fence when makeMemoryResident
...
Related-To: NEO-11977, GSD-10293
Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2025-01-28 22:04:37 +01:00
Chandio, Bibrak Qamar
27c7fbc611
feature: set error description in os_interface/linux
...
Added setErrorDescription for drm_buffer_object, drm_memory_manager,
and ioctl_helper_prelim
Related-To: NEO-12456
Signed-off-by: Chandio, Bibrak Qamar <bibrak.qamar.chandio@intel.com>
2024-09-12 18:48:41 +02:00
Young Jin Yoon
675ec13439
fix: add rootDeviceIndex for BufferObjectHandleWrapper
...
Modified sharedBoHandles to use the (boHandle, rootDeviceIndex) pair
as a key instead of boHandle, and added rootDeviceIndex variable in
the BufferObjectHandleWrapper class of drm_buffer_object.h.
Previously sharedBoHandles uses boHandle as a key. However, this will
not work with the system using multiple devices, because each devices
can return the same handle to refer different memory region.
Related-To: GSD-9024
Signed-off-by: Young Jin Yoon <young.jin.yoon@intel.com>
2024-09-10 19:27:19 +02:00
Slawomir Milczarek
0258667a6e
fix: Set control block in buffer object handle wrapper to null after deletion
...
Related-To: HSD-18039543925
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2024-08-29 12:06:59 +02:00
Mateusz Jablonski
6af9856e33
fix: reorder members in BufferObject class
...
Related-To: HSD-13011781488
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-25 11:44:38 +01:00
Mateusz Jablonski
ec19ce536a
refactor: store userptr value in buffer object
...
Related-To: NEO-10496
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-22 12:49:13 +01:00
Compute-Runtime-Validation
94cc48f81b
Revert "fix: don't use fake userptr flag in ioctl helper xe"
...
This reverts commit d3ab256f55
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-03-15 03:08:01 +01:00
Mateusz Jablonski
d3ab256f55
fix: don't use fake userptr flag in ioctl helper xe
...
Related-To: NEO-10496
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-14 18:41:17 +01:00
Compute-Runtime-Validation
ef7dbc99f1
Revert "fix: don't use fake userptr flag in ioctl helper xe"
...
This reverts commit 98824fdaf6
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-03-14 14:35:14 +01:00
Mateusz Jablonski
98824fdaf6
fix: don't use fake userptr flag in ioctl helper xe
...
Related-To: NEO-10496
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-14 10:07:38 +01:00
Michal Mrozek
27f4eab52f
fix: restore previous order of variables
...
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
Resolves: NEO-10439
2024-02-19 14:13:54 +01:00
Dominik Dabek
0120d8a58d
performance: program pat index on mtl linux
...
Enable programming pat indexes on mtl linux for device buffers.
Change DrmMemoryManager::allocateMemoryByKMD to use gemCreateExt.
Set mmap flags based on coherency.
Map as write back on legacy and coherent.
On non-coherent map as write combined.
Changes currently disabled, to enable use debug keys:
DisableGemCreateExtSetPat=0
UseGemCreateExtInAllocateMemoryByKMD=1
Reorder BufferObject to decrease padding.
Related-To: NEO-7896
Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
2024-02-16 17:33:07 +01:00
Mateusz Jablonski
de93bc6928
refactor: correct naming of enum class constants 10/n
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-19 11:30:39 +01:00
Mateusz Jablonski
2eba5b35e4
refactor: correct naming of DrmParam enum values
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 15:43:46 +01:00
Mateusz Jablonski
739d181026
refactor: correct naming of enum class constants 6/n
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-13 14:48:52 +01:00
Mateusz Jablonski
cff6c81be0
refactor: correct naming of DrmIoctl enums
...
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-12-12 10:02:19 +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
Cencelewska, Katarzyna
a6ea67bd09
fix: add empty functions to set and get gemTiling in xeIoctlHelper
...
it is needed until there is no support in xe kmd for image tiling
Related-To: NEO-8325
Signed-off-by: Cencelewska, Katarzyna <katarzyna.cencelewska@intel.com>
2023-09-12 16:11:37 +02:00
Mateusz Jablonski
32d8a3bc6d
fix: store registered engines per root device
...
in most cases we need to iterate over engines associated to single root device
Related-To: NEO-7925
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2023-04-27 10:54:07 +02:00
Wrobel, Patryk
4c58eda90d
Ensure that BO handle is closed only once
...
When one process had exported and then opened IPC handle
of memory, then close function was called twice for the
same BO handle. It caused debugBreak() and aborted
an application.
This change allows multiple separate BOs to share one
handle. The last shared handle owner calls close() function.
Related-To: NEO-7200
Signed-off-by: Wrobel, Patryk <patryk.wrobel@intel.com>
2023-02-13 14:42:49 +01:00
Warchulski, Jaroslaw
be647d42d9
Cleanup includes 12
...
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-12-07 13:14:15 +01:00
Maciej Plewka
4b42b066f8
Use dedicated using type for TaskCount
...
Related-To: NEO-7155
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-11-28 16:44:44 +01:00
Warchulski, Jaroslaw
1c03361273
Cleanup includes 6
...
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-11-21 12:02:14 +01:00
Warchulski, Jaroslaw
f35f59b573
Cleanup includes 5
...
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-11-18 22:46:38 +01:00
Warchulski, Jaroslaw
fb25f96081
Cleanup includes 2
...
Related-To: NEO-5548
Signed-off-by: Warchulski, Jaroslaw <jaroslaw.warchulski@intel.com>
2022-11-07 10:36:50 +01:00
Compute-Runtime-Validation
95434f446f
Revert "Retry in loop when exec or bind fails with ENXIO"
...
This reverts commit ec13b185a3
.
Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-10-01 12:13:35 +02:00
Maciej Plewka
ec13b185a3
Retry in loop when exec or bind fails with ENXIO
...
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2022-09-29 06:23:41 +02:00
Mateusz Jablonski
e88bad79a6
Dont pass drm to ioctl helper methods - use Ioctl Helper's member instead
...
Related-To: NEO-6999
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-06-30 11:11:12 +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
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
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
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
de465b1e6c
Move drm wrappers to a separate file
...
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-17 17:58:19 +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
Artur Harasimiuk
819e0f5515
style: configure readability-identifier-naming.LocalVariableCase
...
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-16 12:39:44 +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
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
Krzysztof Gibala
143694aa0a
Adjust gmmHelper canonize method accessing point in Drm
...
Accessing canonize method as a member of GmmHelper class object
Related-To: NEO-6523
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-11 17:35:08 +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
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
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