sysmon -d fails assertion from non-root user
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 92/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- cpp, linux, ubuntu
- Área
- operating-systems, tooling
Línea de trabajo
Comience en tools/sysmon/main.cc, en PrintEngineInfo, y reproduzca el problema con sysmon -d como usuario normal. Gestione el resultado de permisos insuficientes sin activar la aserción y, a continuación, verifique que la ejecución sin root termina correctamente mientras el comportamiento existente de la información del motor permanece sin cambios.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi,
On Ubuntu 26.04 (kernel 7.0.0-34-generic, compute-runtime 26.35.39758.10, B390 with xe driver), sysmon -d crashes when run as a regular user:
$ sysmon -d
...
Free Memory(MB), 13931.6
Total Allocatable Memory(MB), 34993.5
Memory Health, UNKNOWN
sysmon: /home/aland/pti-gpu/tools/sysmon/main.cc:878: void PrintEngineInfo(zes_device_handle_t, uint32_t): Assertion `status == ZE_RESULT_SUCCESS' failed.
Aborted (core dumped) ./sysmon -d
The root cause seems to be the recent-ish change in compute-runtime: https://github.com/intel/compute-runtime/commit/ed742e46400a7a19086425ff43b0ff5301495a0d: starting from 26.22.38646.4, zesDeviceEnumEngineGroups returns ZE_RESULT_ERROR_INSUFFICIENT_PERMISSIONS when run without root permissions.
An early exit like below is sufficient to handle this case:
diff --git tools/sysmon/main.cc tools/sysmon/main.cc
index 72d9dab..d8377c4 100644
--- tools/sysmon/main.cc
+++ tools/sysmon/main.cc
@@ -875,6 +875,11 @@ void PrintEngineInfo(
uint32_t engine_groups_count = 0;
status = zesDeviceEnumEngineGroups(device, &engine_groups_count, nullptr);
+ if (status == ZE_RESULT_ERROR_INSUFFICIENT_PERMISSIONS) {
+ // Compute-runtime 26.22+ returns INSUFFICIENT_PERMISSIONS for non-root users
+ // Exit silently like we do when empty set is returned
+ return;
+ }
PTI_ASSERT(status == ZE_RESULT_SUCCESS);
std::map<int, std::string> engine_types = {
- Lenguaje dominante
- C++
- Estrellas
- 276
- Forks
- 73
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de intel/pti-gpu
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
-
Dificultad 3/5 1-2 días Aptitud para principiantes 50/100
-
[unitrace] Do not fetch for 3rd party projects 1) at build stage, 2) if they are already installedAbierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
Dificultad 3/5 Medio día Aptitud para principiantes 45/100
Todos los issues de intel/pti-gpu
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Mac mini M6 (16 GB): Q2_0 streaming works - measured 11.7->27.2 tok/s + arena fix for sub-32 GB MacsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
champion good first issue remake source/qq
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
metasequoiaime/msime-windows#1025 ·
Los mantenedores suelen responder en 1 día
-
backlog bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
EchoTools/nevr-runtime#653 ·
Los mantenedores suelen responder en 1 día
-
`--fail-require-skip` never fires: run_tests.py searches stdout, but the unittest binary writes the skip summary to stderrPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día