util/u_process: add MESA_PROCESS_NAME override to util_get_process_name()
Allow processes to set a custom process name before loading drivers. Especially useful for virtualized workloads hidden behind a generically-named host renderer process (e.g. Venus render_server) to retain game-specific driconf option matching. Signed-off-by: Ryan Neph <ryanneph@google.com> Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20779>
This commit is contained in:
@@ -86,6 +86,12 @@ Core Mesa environment variables
|
||||
print error and performance messages to stderr (or
|
||||
``MESA_LOG_FILE``).
|
||||
|
||||
.. envvar:: MESA_PROCESS_NAME
|
||||
|
||||
if set, overrides the process name string used internally for various
|
||||
purposes (e.g. for driconf option matching, logging, artifact storage,
|
||||
etc.).
|
||||
|
||||
.. envvar:: MESA_LOG_FILE
|
||||
|
||||
specifies a file name for logging all errors, warnings, etc., rather
|
||||
|
@@ -206,10 +206,11 @@ free_program_name(void)
|
||||
static void
|
||||
util_get_process_name_callback(void)
|
||||
{
|
||||
program_name = __getProgramName();
|
||||
if (program_name) {
|
||||
const char *override_name = os_get_option("MESA_PROCESS_NAME");
|
||||
program_name = override_name ? strdup(override_name) : __getProgramName();
|
||||
|
||||
if (program_name)
|
||||
atexit(free_program_name);
|
||||
}
|
||||
}
|
||||
|
||||
const char *
|
||||
|
Reference in New Issue
Block a user