compute-runtime/shared/source/memory_manager
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
..
definitions refactor: remove not needed code 2024-11-28 16:16:30 +01:00
CMakeLists.txt performance(ocl): add usm allocation pooling flag 2023-12-27 11:42:01 +01:00
address_mapper.cpp
address_mapper.h
alignment_selector.cpp refactor: correct naming of HeapIndex enum values 2023-12-12 11:46:17 +01:00
alignment_selector.h Cleanup includes 13 2022-12-16 12:36:27 +01:00
allocation_properties.h refactor: remove not needed code 2024-11-28 16:16:30 +01:00
allocation_type.h fix: create and use new allocation type for syncBuffer 2024-09-06 14:11:33 +02:00
allocations_list.cpp fix: clear AllocationsList tail on free all 2023-11-02 18:06:13 +01:00
allocations_list.h Copy command buffer into ring buffer 2023-02-22 16:37:34 +01:00
compression_selector.cpp refactor: rename global debug manager to debugManager 2023-11-30 13:00:59 +01:00
compression_selector.h Refactor: reduce global productHelper getter usage 2023-01-04 16:35:20 +01:00
deferrable_allocation_deletion.cpp fix: store registered engines per root device 2023-04-27 10:54:07 +02:00
deferrable_allocation_deletion.h
deferrable_deletion.h performance: Ensure hostptrs removed before creating new one 2024-11-12 13:55:15 +01:00
deferred_deleter.cpp performance: Ensure hostptrs removed before creating new one 2024-11-12 13:55:15 +01:00
deferred_deleter.h performance: Ensure hostptrs removed before creating new one 2024-11-12 13:55:15 +01:00
dynamic_memory_tracking.cpp
gfx_partition.cpp Revert "fix: use full size for HEAP_EXTENDED initialization" 2024-10-22 19:27:31 +02:00
gfx_partition.h Revert "fix: use full size for HEAP_EXTENDED initialization" 2024-10-22 19:27:31 +02:00
graphics_allocation.cpp fix: use productHelper in getPatIndexInfoString() on Windows 2024-10-22 19:27:13 +02:00
graphics_allocation.h fix: remove destroyed allocations from eviction lists 2024-11-25 22:19:54 +01:00
host_ptr_defines.h performance: align structures for 64-bit platforms 2025-01-09 06:03:39 +01:00
host_ptr_manager.cpp refactor: correct naming of enum class constants 4/n 2023-12-13 08:08:51 +01:00
host_ptr_manager.h Cleanup includes 31 2023-01-16 11:45:55 +01:00
internal_allocation_storage.cpp Revert "performance: Stop direct submission before removing host ptrs" 2024-05-13 10:10:51 +02:00
internal_allocation_storage.h Cleanup includes 42 2023-01-25 09:16:39 +01:00
local_memory_usage.cpp refactor: rename global debug manager to debugManager 2023-11-30 13:00:59 +01:00
local_memory_usage.h Cleanup includes 42 2023-01-25 09:16:39 +01:00
memadvise_flags.h feature: Add support for memadvise with system preferred location 2023-08-31 13:09:55 +02:00
memory_allocation.cpp refactor: correct naming of MemoryPool enum values 2023-12-13 07:51:39 +01:00
memory_allocation.h feature: Initial CB events IPC support 2024-10-16 13:33:59 +02:00
memory_banks.h refactor: rename variables from MemoryBanks namespace 2023-12-04 16:46:46 +01:00
memory_manager.cpp fix: regression caused by tbx fault mngr 2025-01-09 07:48:53 +01:00
memory_manager.h fix: regression caused by tbx fault mngr 2025-01-09 07:48:53 +01:00
memory_operations_handler.h fix: submit dummy exec to pin memory during zeContextMakeMemoryResident call 2024-09-23 14:43:59 +02:00
memory_operations_status.h refactor: correct naming of enum class constants 6/n 2023-12-13 14:48:52 +01:00
memory_pool.h refactor: correct naming of MemoryPool enum values 2023-12-13 07:51:39 +01:00
migration_sync_data.cpp Use dedicated using type for TaskCount 2022-11-28 16:44:44 +01:00
migration_sync_data.h Use dedicated using type for TaskCount 2022-11-28 16:44:44 +01:00
multi_graphics_allocation.cpp Cleanup includes 47 2023-02-10 17:07:30 +01:00
multi_graphics_allocation.h fix: explicitly remove assign operators when not needed 2023-10-12 10:25:15 +02:00
os_agnostic_memory_manager.cpp performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00
os_agnostic_memory_manager.h performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00
page_table.cpp
page_table.h Cleanup includes 57 2023-02-17 11:19:59 +01:00
page_table.inl
physical_address_allocator.h refactor: rename variables from MemoryBanks namespace 2023-12-04 16:46:46 +01:00
prefetch_manager.cpp refactor: correct naming of unified memory enums 2023-12-13 15:58:21 +01:00
prefetch_manager.h fix: memory prefetch for kmd migrated shared alloc to check for invalid usm ptr 2023-08-08 11:29:14 +02:00
residency.cpp
residency.h
residency_container.h
surface.cpp refactor: Rename member variables to camelCase 3/n 2023-04-28 16:01:14 +02:00
surface.h refactor: Rename member variables to camelCase 3/n 2023-04-28 16:01:14 +02:00
unified_memory_manager.cpp performance: Align host USM to 2MB 2025-01-07 14:32:26 +01:00
unified_memory_manager.h fix: usm reuse, check for in use before returning 2024-12-20 18:24:18 +01:00
unified_memory_pooling.cpp performance: redesign usm alloc reuse mechanism 2024-09-10 18:12:14 +02:00
unified_memory_pooling.h performance: Pass RootDeviceIndicesContainer by reference 2024-12-17 14:18:30 +01:00