Timothy Arceri
22bd26079f
util/mesa: move mesa/main log code to util
...
This removes the unrequired dependance on _mesa_init_debug() and moves
all log code to the util file so that _mesa_log* can now be used without
creating a dependance on mesa/main. Since the code we are moving depends
on the code already in the util (as it was moved here previously) this is
also a much better spot for the code.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30012 >
2024-07-10 17:00:33 +00:00
Aleksi Sapon
0441c69527
util: macOS support for cnd_monotonic
...
Reviewed-by: Tatsuyuki Ishi <ishitatsuyuki@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29900 >
2024-07-10 15:23:53 +00:00
Aleksi Sapon
345c198c22
util: fix memory related OS calls on macOS
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29900 >
2024-07-10 15:23:53 +00:00
Faith Ekstrand
bf3052009a
util/cnd_monotonic: Use a void * on Windows
...
This is the same thing that our win32 implementation of c11/threads does
and it allows us to avoid using CONDITION_VARIABLE in a header.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29924 >
2024-07-08 22:09:06 +00:00
Faith Ekstrand
71524fc82e
util/cnd_monotonic: Move the guts to a c file
...
We need to be able to include windows.h which is pretty mean to pull in
globally.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29924 >
2024-07-08 22:09:06 +00:00
Jesse Natalie
74ba5cf885
blake3: fix Windows ARM64 build and detect ARM64EC as ARM64
...
Cherry-picked upstream 0816badf3ada3ec48e712dd4f4cbc2cd60828278
Reviewed-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29971 >
2024-07-02 22:17:17 +00:00
David Heidelberg
68215332a8
build: pass licensing information in SPDX form
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Dylan Baker <dylan.c.baker@intel.com >
Acked-by: Eric Engestrom <eric@igalia.com >
Acked-by: Daniel Stone <daniels@collabora.com >
Signed-off-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29972 >
2024-06-29 12:42:49 -07:00
Sushma Venkatesh Reddy
d52dd5a9e9
anv/drirc: add option to provide low latency hint
...
GuC offers a mechanism for KMD/UMD to provide workload hints and one of
that strategy is low latency hint. We can utilize this hint when the
workload is more latency sensitive like compute usecases.
Signed-off-by: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28282 >
2024-06-28 21:45:59 +00:00
Konstantin Seurer
eb64ce4386
util: Add a helper for querying sparse tile sizes
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29408 >
2024-06-27 09:29:33 +00:00
Tapani Pälli
7934b70ff1
isl/iris/anv: provide drirc toggle intel_sampler_route_to_lsc
...
Some applications may benefit from this while some can get a performance
hit. Default to false and make it possible to toggle only for selected
workloads.
See workaround 14022483228 for some measurements.
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: José Roberto de Souza <jose.souza@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29760 >
2024-06-24 09:23:07 +00:00
Bas Nieuwenhuizen
9b775d26c4
util/disk_cache: Fix cache marker refresh.
...
Refresh if older than a day, not less than a day old.
Fixes: 3f119a1fd8 ("util/disk_cache: Add marker on cache usage")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29728 >
2024-06-23 23:29:33 +00:00
Juan A. Suarez Romero
a407285ff2
util: use unsigned types when performing bitshift
...
Ensure unsigned integers are used instead of signed ones when performing
left bit shifts.
This has been detected by the Undefined Behaviour Sanitizer (UBSan).
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29772 >
2024-06-21 21:07:05 +00:00
Karol Herbst
d51a14aab8
util/u_printf: properly handle %%
...
Cc: mesa-stable
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29776 >
2024-06-21 13:58:14 +00:00
Lucas Fryzek
6a2309b676
u_gralloc/fallback: Set fd from handle directly
...
Fix returned fd by populating directly from the handle, instead of
from the fds array which is never populated.
Fixes: 7ae4a2ae34 ("u_gralloc/fallback: Extract modifier from QCOM native_handle")
Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29785 >
2024-06-20 05:57:06 +00:00
David Heidelberg
a0c09eef93
util: bump blake3 from 1.3.3 to 1.5.1, improve armv7 and aarch64 performance
...
Steps for uprev:
- copy files from BLAKE3/c src/util/blake3/
- edit README
- `for file in *.asm; do mv "$file" "${file%.asm}.masm"; done`
- keep
- blake3.h (no relevant changes), only change BLAKE3_VERSION_STRING
- blake3_sse2_x86-64_unix.S (no changes)
- blake3_avx512_x86-64_unix.S (no changes)
- blake3_sse41_x86-64_unix.S (no changes)
Acked-by: Marek Olšák <marek.olsak@amd.com >
Signed-off-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29687 >
2024-06-19 12:27:30 -07:00
Faith Ekstrand
bd961343d3
util: Make format_srgb.h C++ safe
...
This fixes link errors with MSVC if used in C++ files
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Faith Ekstrand
cd8a3ea04b
util/format: Handle denorms when converting to R11G11B10F
...
The spec allows denormals and the R11G11B20F decoder handles them but
the encoder always flushes them to zero. We should be consistent and
handle denorms going both directions.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Faith Ekstrand
ef5e441274
util/format: Round to nearest even when converting to R11G11B20F
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Faith Ekstrand
3797fc18d8
util/format_pack: Clamp SNORM values to [-1, 1] when unpacking
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Faith Ekstrand
354f0958af
util/format_pack: Also use iround for SCALED formats
...
This is probably not necessary but more correct.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Faith Ekstrand
b187be5b1c
util/format_pack: Fix packing of signed 1010102 SSCALED formats
...
Previously, [SU]SCALED formats would hit the integer path and we would
generate:
((uint32_t)CLAMP(src[i], min, max)) & MASK
This is fine for unsigned scaled formats. However, for signed formats,
a negative float value cast to an unsigned integer yields undefined
results. On x86, it implicitly clamps to 0. This change makes us
generate:
((uint32_t)(int32_t)CLAMP(src[i], min, max)) & MASK
hich gets us correct casting.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28793 >
2024-06-19 01:56:22 +00:00
Daniel Schürmann
d5821bdf7d
radv: emit discard as demote by default
...
Also removes radv_lower_discard_to_demote debug option.
Totals from 1506 (1.90% of 79439) affected shaders: (GFX11)
MaxWaves: 46432 -> 46448 (+0.03%)
Instrs: 664515 -> 667914 (+0.51%); split: -0.15%, +0.67%
CodeSize: 3569656 -> 3583440 (+0.39%); split: -0.12%, +0.51%
VGPRs: 50100 -> 49680 (-0.84%); split: -0.96%, +0.12%
Latency: 4221359 -> 4217875 (-0.08%); split: -0.67%, +0.59%
InvThroughput: 628809 -> 625565 (-0.52%); split: -0.53%, +0.02%
VClause: 9948 -> 9965 (+0.17%); split: -0.36%, +0.53%
SClause: 19656 -> 19695 (+0.20%); split: -0.77%, +0.97%
Copies: 32113 -> 33513 (+4.36%); split: -1.59%, +5.95%
Branches: 8406 -> 8378 (-0.33%)
PreSGPRs: 42328 -> 42555 (+0.54%); split: -0.39%, +0.93%
PreVGPRs: 38451 -> 38203 (-0.64%); split: -0.78%, +0.14%
VALU: 390770 -> 390208 (-0.14%); split: -0.16%, +0.02%
SALU: 43318 -> 46374 (+7.05%); split: -0.08%, +7.14%
VMEM: 15052 -> 15051 (-0.01%)
SMEM: 37225 -> 37215 (-0.03%); split: -0.03%, +0.01%
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27617 >
2024-06-17 19:37:15 +00:00
Danylo Piliaiev
0aa0c065df
util/u_trace: Add support for fixed-length string params in tracepoints
...
The argument would look like:
Arg(type='str', var='ubwc', c_format='%s', length_arg='12', copy_func='strncpy')
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29707 >
2024-06-14 20:18:32 +00:00
Eric Engestrom
99af53c6fd
driconf: drop param for setting default gpu vendor id in DRI_CONF_FORCE_VK_VENDOR()
...
The macro was ignoring the param and hard-coding 0, and it doesn't make
much sense to allow drivers to override it by default, so remove the
appearance of the ability to do so.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29632 >
2024-06-10 10:11:56 +00:00
Craig Stout
d0b3b2eb54
util: os_time: add Fuchsia support
...
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539 >
2024-06-07 18:29:20 +00:00
C Stout
d39faf7f3d
util: u_dl: add Fuchsia support
...
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539 >
2024-06-07 18:29:20 +00:00
C Stout
2a3f53bd3b
util: os_misc: add Fuchsia support
...
v2: cleaner detect os check (robclark@)
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539 >
2024-06-07 18:29:20 +00:00
C Stout
d6096ce8c8
util: u_thread: add Fuchsia support
...
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539 >
2024-06-07 18:29:20 +00:00
C Stout
ebe4a8d75f
util: detect_os: add DETECT_OS_FUCHSIA and DETECT_OS_POSIX_LITE
...
Fuchsia is a microkernel-like OS. It strategically implements
some POSIX and Unix APIs to promote software re-use.
It considers itself POSIX lite.
"In order to reduce the amount of source modification needed to
run on Fuchsia, Fuchsia offers a POSIX compatibility layer, POSIX
Lite, that this software can target. POSIX Lite is layered on
top of the underlying Fuchsia System ABI as a client library.
However, POSIX Lite is not a complete implementation of POSIX."
In the case of Fuchsia + src/util, these heavy-weight POSIX
functions shouldn't be used:
- file descriptors
- syslog.h
- signals
- process creation
To differentiate POSIX Lite, which Fuchsia and all heavy-weight
POSIX implementations support, add DETECT_OS_POSIX_LITE.
The use case is incrementally upstreaming functionality used in
downstream drivers (lavapipe, ..). Being in-tree for obvious
patches helps until the full driver can be merged.
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Reviewed-by: Eric Engestrom <eric@igalia.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539 >
2024-06-07 18:29:20 +00:00
Sviatoslav Peleshko
94989b45a5
anv,driconf: Add fake non device local memory WA for Total War: Warhammer 3
...
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8721
Signed-off-by: Sviatoslav Peleshko <sviatoslav.peleshko@globallogic.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29127 >
2024-06-07 04:14:10 +00:00
Yonggang Luo
85ff3f525c
util: Rename DETECT_OS_UNIX to DETECT_OS_POSIX
...
Looking at each usage of DETECT_OS_UNIX, it's more about the POSIX API usage, not the
Unix-like OS, so let's rename it
And for POSIX it's a standard to claim which API present, but for UNIX there is no such thing
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29555 >
2024-06-07 01:56:28 +00:00
Lionel Landwerlin
3984875792
u_trace: extend tracepoint end_of_pipe bit into flags
...
We ran into an issue with Intel drivers where it became tricky to tell
whether a timestamp must be recorded with a special end-of-pipe
compute instruction or something else.
We initially tried to deal with that internally by checking some state
in the command buffers but turns out it doesn't work.
This change adds a flag field to the tracepoint to have that
information there and the flags are passed to the record_ts vfunc.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29438 >
2024-05-30 06:38:04 +00:00
Erik Faye-Lund
cd37384985
util/format: correct a typo
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29380 >
2024-05-28 15:04:14 +00:00
Dylan Baker
46644ba371
meson: use glslang --depfile argument when possible
...
This reduces the amount of manual dependency tracking developers need to
do. This is turned on if glslang >= 11.3.0 is used, or 11.9.0 on
Windows, but otherwise the status quo is maintained. This means I have
not removed any use of `depend_files`. We could make make these hard
requirements and remove the use of `depend_files` too.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28329 >
2024-05-20 17:34:17 +00:00
Roman Stratiienko
7ae4a2ae34
u_gralloc/fallback: Extract modifier from QCOM native_handle
...
After Turnip moved to u_gralloc, some users started complaining
about issues. It turns out that modern platforms do not have
grallocs{0,1} but have gralloc4 only. There's no
known way to build mesa3d with gralloc4 support using NDK.
So we add this workaround to fallback gralloc to mimic the original
behavior of the Turnip driver before switching to u_gralloc.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11171
Fixes: 1373b0966c ("turnip: ANB/AHB support")
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com >
Reviewed-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29260 >
2024-05-17 15:03:53 +00:00
Danylo Piliaiev
4510350d55
util/u_trace: Pass explicit frame_nr argument to delimit frames
...
Otherwise u_trace has to think that each submission is a frame,
and that's not great if we want to gather statistics on per real
frame basis.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29220 >
2024-05-16 18:12:30 +00:00
Danylo Piliaiev
57a3f0f949
util/u_trace: Allow mixing of ArgStruct and Arg
...
Would allow to define such arguments:
args=[ArgStruct(type='const struct tu_framebuffer *', var='fb'),
ArgStruct(type='const struct tu_tiling_config *', var='tiling'),
Arg(type='uint8_t', var='maxSamples', c_format='%u'),
Arg(type='uint8_t', var='clearCPP', c_format='%u'),
Arg(type='uint8_t', var='loadCPP', c_format='%u'),
Arg(type='uint8_t', var='storeCPP', c_format='%u'),],
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Reviewed-by: Karmjit Mahil <karmjit.mahil@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29222 >
2024-05-16 15:57:10 +00:00
Marek Olšák
5502ecd771
util: shift the mask in BITSET_TEST_RANGE_INSIDE_WORD to be relative to b
...
so that users don't have to shift it at every use. It was supposed to be
like this from the beginning.
Fixes: fb994f44d9 - util: make BITSET_TEST_RANGE_INSIDE_WORD take a value to compare with
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29187 >
2024-05-14 10:13:15 +00:00
Eric Engestrom
8c22112a7d
util/format: add missing null check in util_format_is_srgb()
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11137
Fixes: ff6cf60cb8 ("gallium/util: add util_format_is_srgb() helper")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29160 >
2024-05-14 07:16:02 +00:00
Bas Nieuwenhuizen
79cb884275
radv: Use zerovram for Enshrouded.
...
Two users now reporting that zerovram fixes hangs.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10500
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29149 >
2024-05-12 09:13:01 +00:00
Sathishkumar S
afd15f481b
util/format: add planar3 y8_u8_v8_440 pipe format
...
add pipe format to represent yuv440 surface
Signed-off-by: Sathishkumar S <sathishkumar.sundararaju@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28866 >
2024-05-09 20:43:02 +00:00
Saroj Kumar
7c0b0e660a
mesa: Add functions to print blake3
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Acked-by: David Heidelberg <david.heidelberg@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28156 >
2024-05-09 20:08:17 +00:00
Derek Foreman
e9596149cf
perfetto: Add some functions for timestamped events
...
This can be useful if we know when an event happened, but our code isn't
running at that time (such as reporting when an image was presented in
the wayland wsi).
We can't really mix these with events that we log at the current time,
because there could be overlap, so also add a function for creating
custom tracks.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28634 >
2024-05-02 19:37:26 +00:00
Derek Foreman
60eb27591f
perfetto: Add simple support for counters
...
Perfetto can report time varying numberic values (counters) in tracks.
Add some simple functions to use this.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28634 >
2024-05-02 19:37:26 +00:00
Derek Foreman
16b8dbedfa
perfetto: Add flows
...
Perfetto can assign flow ids to events, which can be used to connect
related events in tracks when they share the same id.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28634 >
2024-05-02 19:37:26 +00:00
Marek Olšák
e5f133ccc4
util: import pipe_box and its helpers
...
We'll use them. There are also new helpers that we'll use.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28733 >
2024-04-22 01:42:52 +00:00
Marek Olšák
959891e33f
util: add new format helpers
...
we'll use them
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28733 >
2024-04-22 01:42:52 +00:00
Manuel Stoeckl
04f232ed99
util/disk_cache: try getenv(HOME) before getpwuid->pw_dir
...
getenv("HOME") is significantly faster than getpwuid_r(...)->pw_dir,
because the latter may require loading NSS libraries, reading
/etc/passwd, etc.
Furthermore, the Linux man pages for getpwuid_r recommend using
getenv("HOME") instead of getpwuid_r, because the user may wish to
change the value of HOME after logging in.
Signed-off-by: Manuel Stoeckl <code@mstoeckl.com >
Reviewed-by: Zoltán Böszörményi <zboszor@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13614 >
2024-04-20 13:43:50 +00:00
Eric Engestrom
f008f6a33b
util/futex: replace double-cast check with a simple sign check
...
We want to know whether the signed int can be represented by an unsigned int
of the same size (no down-cast); for that, all we need is for it to be `>= 0`,
so let's check that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28804 >
2024-04-19 06:38:58 +00:00
Eric Engestrom
b3e6ef964f
util: simplify loop logic in util_format_get_first_non_void_channel()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28800 >
2024-04-18 14:26:37 +00:00