llvmpipe is reported as hardware accelerated since 5.4, so software rendering is never detected
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
Línea de trabajo
Start with cogl/cogl/cogl-gpu-info.c and src/backends/meta-renderer.c, then compare the renderer checks mentioned from muffin 5.2 and Mutter. Reproduce the mismatch with the llvmpipe setup described in the issue; done when hardware acceleration is reported as false for software renderers and Cinnamon enables software rendering as expected.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Since the rebase onto mutter 3.36 (8599127f, first released in 5.4.0), meta_backend_is_rendering_hardware_accelerated() returns true under llvmpipe. As a result Cinnamon's software rendering mode (animations disabled, "Check your video drivers" notification) is never enabled automatically.
meta_renderer_is_hardware_accelerated() (meta-renderer.c) relies on cogl_context->gpu.architecture. In cogl-gpu-info.c the llvmpipe/softpipe/swrast architectures are only looked up after check_mesa_vendor() has matched GL_VENDOR, and it only knows "Tungsten Graphics, Inc", "VMware, Inc." and "Mesa Project". llvmpipe reports "Mesa/X.org" (Mesa 20.3 and 22.3) or plain "Mesa" (Mesa 25.0 and later), so the vendor is unknown, the architecture is unknown, and unknown counts as hardware.
Before the rebase, muffin 5.2 checked GL_RENDERER directly in src/core/main.c (llvmpipe, Rasterizer, softpipe) and set CINNAMON_SOFTWARE_RENDERING, which is how the notification still showed up on 5.2 (e.g. in a VM without 3D: linuxmint/lmde-5-cinnamon-beta#20). Mutter dropped the vendor-based check in 2020 and only looks at the renderer string (d133f94f).
Tested on Cinnamon/muffin 6.7.8 in a VM with virtio-gpu without 3D: glxinfo -B shows llvmpipe and Accelerated: no, while in Looking Glass Meta.get_backend().is_rendering_hardware_accelerated() is true, software_rendering is false and animations are enabled.
Two possible fixes:
- add the new vendor strings to
check_mesa_vendor(); - check only
GL_RENDERERinmeta_renderer_is_hardware_accelerated(), as muffin 5.2 and mutter do.
I'd go with 2, since the vendor string has already changed twice.
Either way it changes what users see: on llvmpipe (VMs without 3D, machines without a working GPU driver) Cinnamon would again disable animations and show the notification at every login (not in live sessions), which hasn't happened since 5.4. On the native backend it would also let should_force_shadow_fb() apply. That's why I'm asking before opening a PR: which way would you prefer?
This was first raised in linuxmint/Cinnamon#13996, which I'm closing because its premise turned out to be wrong.
- Lenguaje dominante
- C
- Estrellas
- 249
- Forks
- 131
- Merge medio
- 13 d 16 h
- PR fusionados (30 d)
- 7
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 linuxmint/muffin
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 18/100
-
Dificultad 4/5 3-5 días Aptitud para principiantes 52/100
Todos los issues de linuxmint/muffin
Issues similares
-
Dificultad 2/5 Medio día Aptitud para principiantes 72/100
vercel-labs/scriptc#2910 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
darktable-org/darktable#22939 ·
Los mantenedores suelen responder en 1 día
-
os: input_password leaves terminal echo disabled when reading failsPosiblemente ocupada @davlgd la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
armv7l: `close`, `unlink` and `chroot` pass the kernel their argument's addressPosiblemente ocupada @aoinoikaz la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
colbymchenry/codegraph#3223 ·
Los mantenedores suelen responder en 1 día