mesa/src/util
Chad Versace 94a6384f1b util/vma: Track size of free memory in heap
This allows users to detect fragmentation on allocation failure.
If heap allocation fails but the allocation size is not larger than the
total free size, then the allocation failed due to fragmentation.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20289>
2022-12-16 07:18:38 +00:00
..
format gallium/dri: Add P030 format 2022-11-21 09:08:44 +00:00
indices util/indicies: convert u_unfilled_gen.py to write a file 2022-10-19 20:21:08 +00:00
perf util: Remove redundant #include "util/u_inlines.h" in u_trace.c 2022-11-19 01:37:46 +00:00
sha1 util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
tests meson: replace deprecated meson.get_cross_property(...) with meson.get_external_property(...) 2022-12-01 22:09:55 +00:00
00-mesa-defaults.conf driconf/intel: Use fake vendor to WA bad detection in Source engine games 2022-11-25 18:21:17 +00:00
00-radv-defaults.conf radv: Force non uniform texture sampling with NV Remix 2022-12-12 18:18:32 +00:00
anon_file.c util: Add os_create_anonymous_file support on win32 2022-08-12 16:34:32 +00:00
anon_file.h util: Add os_create_anonymous_file support on win32 2022-08-12 16:34:32 +00:00
bigmath.h
bitpack_helpers.h util: Add util_bitpack_[su]fixed_clamp helpers 2022-08-30 04:28:34 +00:00
bitscan.c
bitscan.h util: remove needless c99_compat.h includes 2022-06-02 13:09:16 +00:00
bitset.h util: Remove EXPLICIT_CONVERSION macro and use c++11 explicit directly 2022-11-22 15:42:15 +08:00
blob.c util/blob: use memcpy in read functions 2022-07-07 12:25:05 +00:00
blob.h util/blob: Add align helpers 2022-04-22 19:38:52 +00:00
build_id.c
build_id.h
cnd_monotonic.h c11/threads: Re-align return values for timed waits 2021-11-16 10:02:08 -06:00
compiler.h util: Fixes -Wundef in util/compiler.h 2022-11-24 04:33:07 +00:00
compress.c
compress.h
crc32.c util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
crc32.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
dag.c util/dag: Add a validation function. 2022-09-29 23:40:18 +00:00
dag.h util/dag: Add a validation function. 2022-09-29 23:40:18 +00:00
detect.h util: Rename src/gallium/include/pipe/p_config.h to src/util/detect_arch.h 2022-11-15 20:35:55 +00:00
detect_arch.h util: Remove the unused PIPE_(ARCH|OS|CC) macro defines from src/util/detect_arch.h and src/util/detect_cc.h 2022-11-15 20:35:55 +00:00
detect_cc.h util: Remove the unused PIPE_(ARCH|OS|CC) macro defines from src/util/detect_arch.h and src/util/detect_cc.h 2022-11-15 20:35:55 +00:00
detect_os.h
disk_cache.c disk_cache: add env var to show stats 2022-11-12 03:04:35 +00:00
disk_cache.h util/disk_cache: Prevent ‘sha1’ may be used uninitialized warnings. 2022-11-14 23:00:03 +00:00
disk_cache_os.c utils: Merge util/debug.* into util/u_debug.* and remove util/debug.* 2022-11-02 07:25:39 +00:00
disk_cache_os.h disk_cache: add env var to show stats 2022-11-12 03:04:35 +00:00
double.c
double.h
driconf.h radv: Add a driconf option to force non uniform texture sampling 2022-12-12 18:18:32 +00:00
driconf_static.py driconf: add support for multiple input files in the static script 2022-12-01 16:55:31 +00:00
enum_operators.h util: tune signatures of generated enum operators 2021-05-14 11:00:52 +00:00
fast_idiv_by_const.c util: Use util_sign_extend in fast_idiv_by_const 2022-07-06 11:23:18 +00:00
fast_idiv_by_const.h
fast_urem_by_const.h
format_r11g11b10f.h
format_rgb9e5.h include: drop c99_math.h 2022-06-02 13:09:16 +00:00
format_srgb.h util: remove needless c99_compat.h includes 2022-06-02 13:09:16 +00:00
format_srgb.py python: drop python2 support 2021-08-14 21:44:32 +00:00
fossilize_db.c util/fossilize_db: Fix double free in error handling. 2022-01-24 01:09:21 +00:00
fossilize_db.h util/fossilize_db: Add extra flock mutex. 2021-08-08 13:34:42 +02:00
futex.c util: include sys/time.h for timespec functions 2022-11-16 19:09:30 +00:00
futex.h util: Move the implementation of futex_wake and futex_wait from futex.h to futex.c 2022-10-18 23:20:25 +00:00
glheader.h util: include gles header instead of hand crafted macros 2022-11-04 19:28:19 +00:00
glsl2spirv.py util/glsl2spirv: don't store preprocessed files in source tree 2022-11-22 12:25:12 +00:00
half_float.c util: remove unused half_to_unorm8 2022-11-04 23:20:02 +00:00
half_float.h util: remove unused half_to_unorm8 2022-11-04 23:20:02 +00:00
hash_table.c util/hash_table: Clear special 0/1 entries for u64 hash table too 2021-11-02 11:02:18 -07:00
hash_table.h util: remove needless c99_compat.h includes 2022-06-02 13:09:16 +00:00
libsync.h replace sys/poll.h with poll.h 2022-11-14 20:13:20 +00:00
list.h util/list: rename LIST_ENTRY() to list_entry() 2022-07-28 10:10:44 +00:00
log.c util/log: Don't print an extra \n if the format string had one. 2022-04-05 21:37:46 +00:00
log.h util/perf: add cpu_trace.h 2022-08-26 21:47:44 +00:00
macros.h util: Rename PIPE_CDECL to UTIL_CDECL and moved into util/macros.h 2022-11-24 06:21:39 +00:00
memstream.c util: Remove include of windows.h in memstream.h 2022-10-20 03:04:56 +00:00
memstream.h util: Remove include of windows.h in memstream.h 2022-10-20 03:04:56 +00:00
mesa-sha1.c util: minor refactor _mesa_sha1_print() 2022-12-07 12:59:33 +00:00
mesa-sha1.h util: remove needless c99_compat.h includes 2022-06-02 13:09:16 +00:00
mesa_cache_db.c util: fix missing fcntl.h on musl 2022-09-16 23:43:13 +00:00
mesa_cache_db.h util/disk_cache: Add new mesa-db cache type 2022-08-04 17:52:49 +00:00
meson.build radv,driconf: fix static driconf by parsing 00-radv-defaults.conf 2022-12-01 16:55:31 +00:00
os_file.c util: replaced ENODATA with ENOATTR for non-Linux systems 2021-06-28 21:12:24 +03:00
os_file.h misc: replace #ifdef\s\s__cplusplus with #ifdef\s__cplusplus 2022-04-21 14:43:39 +00:00
os_memory.h gallium/util: Remove the EMBEDDED_DEVICE macro because nobody use it 2022-11-08 02:37:20 +00:00
os_memory_aligned.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
os_memory_debug.h util: Replace all usage of __FUNCTION__ with __func__ in src/util/* 2022-11-11 06:15:42 +00:00
os_memory_fd.c util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
os_memory_fd.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
os_memory_stdc.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
os_misc.c gallium/util: Remove the EMBEDDED_DEVICE macro because nobody use it 2022-11-08 02:37:20 +00:00
os_misc.h util: Include the needed util/detect*.h headers in multiple files 2022-11-15 20:35:55 +00:00
os_mman.h util: Move src/gallium/auxiliary/os/os_mman.h to src/util/os_mman.h 2022-11-15 19:55:01 +00:00
os_socket.c
os_socket.h
os_time.c util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
os_time.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
ptralloc.h util: remove needless c99_compat.h includes 2022-06-02 13:09:16 +00:00
ralloc.c util: add freelist allocator with mark/sweep 2022-08-30 18:21:44 +00:00
ralloc.h util: add freelist allocator with mark/sweep 2022-08-30 18:21:44 +00:00
rand_xor.c
rand_xor.h
rb_tree.c
rb_tree.h util: Convert rb_tree_test to gtest 2021-10-20 21:40:31 -07:00
reallocarray.h util/reallocarray: add errno.h include. 2022-07-29 06:47:28 +10:00
register_allocate.c util/ra: Fix numeric overflow during bitset allocation 2021-12-19 13:10:26 -08:00
register_allocate.h ra: Add fast-path support for register classes of contiguous regs. 2021-06-04 19:08:57 +00:00
register_allocate_internal.h util/ra: use adjacency matrix for undirected graph 2021-12-14 09:19:01 +00:00
rgtc.c util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
rgtc.h
rounding.h include: drop c99_math.h 2022-06-02 13:09:16 +00:00
rwlock.c util: Remove include of windows.h in rwlock.h 2022-10-20 03:04:56 +00:00
rwlock.h util: Remove include of windows.h in rwlock.h 2022-10-20 03:04:56 +00:00
set.c util: remove unused set_random_entry 2022-11-04 23:20:02 +00:00
set.h util: remove unused set_random_entry 2022-11-04 23:20:02 +00:00
simple_mtx.c util: Add util_call_once for optimize call to util_call_once_with_context out for hot path 2022-09-22 04:16:29 +00:00
simple_mtx.h util: #include "c11/threads.h" when necessary in simple_mtx.h 2022-10-20 03:04:56 +00:00
slab.c util/slab: add slab_zalloc 2022-03-09 08:48:59 +00:00
slab.h util/slab: add slab_zalloc 2022-03-09 08:48:59 +00:00
softfloat.c util: Keep quiet NaNs quiet when converting to half float. 2022-05-02 23:36:50 +00:00
softfloat.h
sparse_array.c
sparse_array.h util: use c11 alignas instead of rolling our own 2022-06-14 15:08:37 +00:00
streaming-load-memcpy.c util: Use util_get_cpu_caps instead cpu_has_sse4_1 macro 2022-11-15 19:06:07 +00:00
streaming-load-memcpy.h streaming-memcpy: move to src/util/ and compile unconditionally 2022-06-07 03:33:20 +00:00
string_buffer.c
string_buffer.h
strndup.h
strtod.c
strtod.h
texcompress_rgtc_tmp.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
timespec.h util: Remove unused function timespec_passed 2022-06-09 17:23:34 +00:00
u_atomic.c util/u_atomic: fix build on clang archs without 64-bit atomics 2022-02-28 14:28:23 +00:00
u_atomic.h util: Implement atomic operations consistently across compilers and testing for it 2022-10-13 13:51:18 +00:00
u_call_once.c util: Add util_call_once for optimize call to util_call_once_with_context out for hot path 2022-09-22 04:16:29 +00:00
u_call_once.h util: Add util_call_once for optimize call to util_call_once_with_context out for hot path 2022-09-22 04:16:29 +00:00
u_cpu_detect.c util: Rename PIPE_ALIGN_STACK to UTIL_ALIGN_STACK and moved into util/compiler.h 2022-11-19 01:37:46 +00:00
u_cpu_detect.h util: Drop include "pipe/p_config.h" in src/util/u_cpu_detect.h 2022-11-15 19:06:07 +00:00
u_debug.c util: Replace all usage of __FUNCTION__ with __func__ in src/util/* 2022-11-11 06:15:42 +00:00
u_debug.h util: Replace all usage of __FUNCTION__ with __func__ in src/util/* 2022-11-11 06:15:42 +00:00
u_debug_describe.c util: import u_debug_refcnt, u_hash_table, u_debug_describe from gallium 2021-10-01 14:51:23 +00:00
u_debug_describe.h util: import u_debug_refcnt, u_hash_table, u_debug_describe from gallium 2021-10-01 14:51:23 +00:00
u_debug_memory.c util: Rename src/gallium/include/pipe/p_config.h to src/util/detect_arch.h 2022-11-15 20:35:55 +00:00
u_debug_refcnt.c tree-wide: Convert all usage of defined(PIPE_(OS|ARCH|CC)_*) to DETECT_(OS|ARCH|CC)_* by use grep 2022-11-15 20:35:55 +00:00
u_debug_refcnt.h util: Rename src/gallium/include/pipe/p_config.h to src/util/detect_arch.h 2022-11-15 20:35:55 +00:00
u_debug_stack.c tree-wide: Convert all usage of PIPE_(OS|ARCH|CC)_* to DETECT_(OS|ARCH|CC)_* by use grep 2022-11-15 20:35:55 +00:00
u_debug_stack.h util: Include the needed util/detect*.h headers in multiple files 2022-11-15 20:35:55 +00:00
u_debug_stack_android.cpp util: Remove os/os_thread.h and replace #include "os/os_thread.h" with #include "util/u_thread.h" 2022-11-08 05:21:42 +00:00
u_debug_symbol.c tree-wide: Convert all usage of PIPE_(OS|ARCH|CC)_* to DETECT_(OS|ARCH|CC)_* by use grep 2022-11-15 20:35:55 +00:00
u_debug_symbol.h misc: Replace #ifdef\t__cplusplus with #ifdef\s\s__cplusplus 2022-04-21 14:43:39 +00:00
u_dl.c gallium/util: Move u_dl and u_pointer to src/util 2022-07-01 21:15:07 +00:00
u_dl.h gallium/util: Move u_dl and u_pointer to src/util 2022-07-01 21:15:07 +00:00
u_drm.h
u_dynarray.h util/dynarray: Add an append_array helper 2022-12-01 12:26:27 +00:00
u_endian.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
u_hash_table.c util: Remove the usage of enum pipe_error in u_hash_table.* 2022-11-19 01:37:46 +00:00
u_hash_table.h util: Remove the usage of enum pipe_error in u_hash_table.* 2022-11-19 01:37:46 +00:00
u_idalloc.c util/idalloc: add util_idalloc_alloc_range 2021-07-09 10:05:46 +00:00
u_idalloc.h util/idalloc: add util_idalloc_alloc_range 2021-07-09 10:05:46 +00:00
u_math.c tree-wide: Convert all usage of defined(PIPE_(OS|ARCH|CC)_*) to DETECT_(OS|ARCH|CC)_* by use grep 2022-11-15 20:35:55 +00:00
u_math.h util: Include the needed util/detect*.h headers in multiple files 2022-11-15 20:35:55 +00:00
u_memory.h util: Move EXCLUSIVE_CACHELINE and CACHE_LINE_SIZE macros into u_memory.h 2022-11-24 06:21:39 +00:00
u_memset.h tree-wide: Convert all usage of defined(PIPE_(OS|ARCH|CC)_*) to DETECT_(OS|ARCH|CC)_* by use grep 2022-11-15 20:35:55 +00:00
u_mm.c util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
u_mm.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
u_pointer.h gallium/util: Move u_dl and u_pointer to src/util 2022-07-01 21:15:07 +00:00
u_printf.c util: Remove va_copy fixup because of c11 is required 2022-11-11 06:15:42 +00:00
u_printf.h printf: extract clovers printf impl 2022-08-04 23:53:49 +00:00
u_process.c util: Merge the code from os_process.c into u_process.c 2022-11-15 19:55:01 +00:00
u_process.h util: Merge the code from os_process.c into u_process.c 2022-11-15 19:55:01 +00:00
u_qsort.cpp util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
u_qsort.h util: Fixes -Wundef in u_qsort.h 2022-11-24 04:33:07 +00:00
u_queue.c util: Call function mtx_init on exit_mutex to replace the usage of _MTX_INITIALIZER_NP in u_queue.c 2022-10-20 01:32:47 +00:00
u_queue.h glthread,hud: draw per-frame values and expose the number of batches per frame 2022-09-26 22:58:16 +00:00
u_string.h
u_thread.c util: Move the function implementation from u_thread.h to u_thread.c 2022-10-20 03:04:56 +00:00
u_thread.h util: Move pipe_semaphore to u_thread.h and rename it to util_semaphore 2022-11-08 05:21:42 +00:00
u_vector.c util/vector: make util_vector_init harder to misuse 2021-10-08 00:15:11 +00:00
u_vector.h util: trim trailing space for files src/util/**/* 2022-03-21 17:57:15 +00:00
u_worklist.c util: Add a generic worklist implementation 2022-04-25 23:50:57 +00:00
u_worklist.h util: Add a generic worklist implementation 2022-04-25 23:50:57 +00:00
vl_rbsp.h util/vl: move gallium vl_vlc.h and vl_rbsp.h to shared code. 2021-11-15 21:57:28 +00:00
vl_vlc.h util/vl_vlc: Support compiling in C++ 2022-05-17 21:02:24 +00:00
vma.c util/vma: Track size of free memory in heap 2022-12-16 07:18:38 +00:00
vma.h util/vma: Track size of free memory in heap 2022-12-16 07:18:38 +00:00
xmlconfig.c util/xmlconfig: allow drivers to override option values 2022-08-12 06:06:48 +00:00
xmlconfig.h util: Define WITH_XMLCONFIG from Meson 2022-11-23 23:14:10 +00:00
xxd.py python: drop python2 support 2021-08-14 21:44:32 +00:00
xxhash.h