Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[BUG] Vulkan: driver name of a previous device is concatenated on multi-GPU systems

Cerrado Apto para principiantes
#2,619 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
1/5
Tiempo estimado
Menos de una hora
Aptitud para principiantes
88/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
c
Área
cli

Línea de trabajo

Comienza en src/detection/vulkan/vulkan.c, leyendo detectVulkan y applyDriverName junto con el comentario existente sobre la sobrescritura. Reproduce el problema con fastfetch -s vulkan --pipe -l none en un sistema con varias GPU y, a continuación, verifica que el nombre del controlador mostrado sea únicamente el del dispositivo con la versión de API más alta y no esté concatenado con el nombre de un dispositivo anterior.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

  • I have checked the FAQ but the issue is not covered
Description

On a system with two Vulkan devices, the Vulkan module prints the driver names of both devices glued together:

$ fastfetch -s vulkan --pipe -l none
Vulkan  1.4.354 - NVIDIA [615.71.09]radv [Mesa 26.2.2-arch1.1]

Expected: radv [Mesa 26.2.2-arch1.1], the driver of the device with the highest API version.

In detectVulkan (src/detection/vulkan/vulkan.c), the comment says the driver name should be overwritten whenever a device with a higher API version is found:

// If the device api version is higher than the current highest device api version, overwrite it
// In this case, also use the current device driver name as the shown driver name

However, applyDriverName only appends to result with ffStrbufAppendS and never clears it first. The NVIDIA device is enumerated first and sets the name. The RADV device comes second with a higher API version, and its name is appended to the NVIDIA one instead of replacing it.

As far as I can tell this has been the case since the Vulkan module was added. It only shows up when the device with the highest API version is not the first one enumerated.

A PR with the fix follows: it clears the buffer at the start of applyDriverName.

Version used: fastfetch 2.68.1 (Arch package); also reproduced on dev @ 9801d89 built from source
Bug prevalence: Always
Regression: No
Installation: Package manager
Package manager: pacman

System information
OS      Arch Linux (rolling), kernel 6.18.52-1-lts, x86_64
GPU 1   AMD Raphael [Integrated]   (Vulkan driver: radv, Mesa 26.2.2)
GPU 2   NVIDIA GeForce RTX 5060 [Discrete]   (Vulkan driver: NVIDIA 615.71.09, nvidia-open)
Lenguaje dominante
C
Estrellas
24.7k
Forks
895
Merge medio
22 h 43 min
PR fusionados (30 d)
20

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de fastfetch-cli/fastfetch

Todos los issues de fastfetch-cli/fastfetch

Issues similares

Más issues de C

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.