Package: libvulkan1
Version: 1.3.290.0-1
Severity: important
X-Debbugs-Cc: witold.bary...@gmail.com

Dear Maintainer,

user@debian:~$ dpkg -l | grep vulkan
ii  libvulkan-dev:amd64                                         1.3.290.0-1     
                          amd64        Vulkan loader library -- development 
files
ii  libvulkan-dev:i386                                          1.3.290.0-1     
                          i386         Vulkan loader library -- development 
files
ii  libvulkan1:amd64                                            1.3.290.0-1     
                          amd64        Vulkan loader library
ii  libvulkan1:i386                                             1.3.290.0-1     
                          i386         Vulkan loader library
ii  mesa-vulkan-drivers:amd64                                   24.2.2-1        
                          amd64        Mesa Vulkan graphics drivers
ii  mesa-vulkan-drivers:i386                                    24.2.2-1        
                          i386         Mesa Vulkan graphics drivers
ii  vulkan-tools:i386                                           
1.3.290.0+dfsg1-1                         i386         Miscellaneous Vulkan 
utilities
ii  vulkan-validationlayers:amd64                               1.3.290.0-1     
                          amd64        Vulkan validation layers
ii  vulkan-validationlayers:i386                                1.3.290.0-1     
                          i386         Vulkan validation layers



Notice, vulkan-tools is i386. This is on purpose as I want to test
32-bit libraries.  (I cannot coinstall vulkan-tools:i386 and
vulkan-tools:amd64, something like mesa-utils-bin:i386
mesa-utils-bin:amd64 split but for vulkan-tools will be appreciated).


user@debian:~$ vulkaninfo --summary
ERROR: [Loader Message] Code 0 : vkCreateInstance: Found no drivers!
Cannot create Vulkan instance.
This problem is often caused by a faulty installation of the Vulkan driver or 
attempting to use a GPU that does not support Vulkan.
ERROR at ./vulkaninfo/./vulkaninfo.h:456:vkCreateInstance failed with 
ERROR_INCOMPATIBLE_DRIVER
user@debian:~$ vkcube
vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface 
extension.

Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.


strace

...
...
openat(AT_FDCWD, "/lib/i386-linux-gnu/libvulkan.so.1", 
O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\0\0\0004\0\0\0"..., 
512) = 512
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFREG|0644, stx_size=570992, ...}) = 0
mmap2(NULL, 569760, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0xf7b03000
mmap2(0xf7b08000, 299008, PROT_READ|PROT_EXEC, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x5000) = 0xf7b08000
mmap2(0xf7b51000, 245760, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 
0x4e000) = 0xf7b51000
mmap2(0xf7b8d000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x8a000) = 0xf7b8d000
close(4)                                = 0
mprotect(0xf7b8d000, 4096, PROT_READ)   = 0
munmap(0xf7f32000, 318866)              = 0
access("/home/user/.local/share/vulkan/loader_settings.d/vk_loader_settings.json",
 F_OK) = -1 ENOENT (No such file or directory)
access("/etc/vulkan/loader_settings.d/vk_loader_settings.json", F_OK) = -1 
ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/user/.config/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such 
file or directory)
openat(AT_FDCWD, "/etc/xdg/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such 
file or directory)
openat(AT_FDCWD, "/etc/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFDIR|0755, stx_size=3, ...}) = 0
getdents64(4, 0x572e213c /* 2 entries */, 32768) = 48
close(4)                                = 0
...


openat(AT_FDCWD, "/etc/vulkan/icd.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFDIR|0755, stx_size=3, ...}) = 0
getdents64(4, 0x572e493c /* 2 entries */, 32768) = 48
close(4)                                = 0
...

openat(AT_FDCWD, "/usr/share/vulkan/icd.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFDIR|0755, stx_size=367, ...}) = 0
getdents64(4, 0x572e493c /* 14 entries */, 32768) = 584
close(4)                                = 0

...

openat(AT_FDCWD, "/etc/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFDIR|0755, stx_size=3, ...}) = 0
getdents64(4, 0x572e69cc /* 2 entries */, 32768) = 48
close(4)                                = 0
...


openat(AT_FDCWD, "/usr/share/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFDIR|0755, stx_size=159, ...}) = 0
getdents64(4, 0x572e69cc /* 7 entries */, 32768) = 272
close(4)                                = 0
openat(AT_FDCWD, "/var/lib/snapd/desktop/vulkan/implicit_layer.d", 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such 
file or directory)
readlink("/proc/self/exe", "/usr/bin/vkcube", 1024) = 15
statx(1, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, 
STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, 
stx_mode=S_IFCHR|0620, stx_size=0, ...}) = 0
write(1, "vkEnumerateInstanceExtensionProp"..., 
84vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface 
extension.
) = 84
write(1, "\n", 1
)                       = 1
write(1, "Do you have a compatible Vulkan "..., 145Do you have a compatible 
Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.

) = 145
exit_group(1)                           = ?



but

user@debian:~$ cat /usr/share/vulkan/icd.d/radeon_icd.i686.json
{
    "ICD": {
        "api_version": "1.3.289",
        "library_path": "/usr/lib/i386-linux-gnu/libvulkan_radeon.so"
    },
    "file_format_version": "1.0.0"
}user@debian:~$ 

user@debian:~$ ldd /usr/lib/i386-linux-gnu/libvulkan_radeon.so
    linux-gate.so.1 (0xf7ee9000)
    libLLVM-18.so.18.1 => /lib/i386-linux-gnu/libLLVM-18.so.18.1 (0xeecb1000)
    libdrm_amdgpu.so.1 => /lib/i386-linux-gnu/libdrm_amdgpu.so.1 (0xeeca4000)
    libelf.so.1 => /lib/i386-linux-gnu/libelf.so.1 (0xeec84000)
    libxcb-dri3.so.0 => /lib/i386-linux-gnu/libxcb-dri3.so.0 (0xeec7d000)
    libwayland-client.so.0 => /lib/i386-linux-gnu/libwayland-client.so.0 
(0xeec6e000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xeec51000)
    libzstd.so.1 => /lib/i386-linux-gnu/libzstd.so.1 (0xeeb8f000)
    libxcb.so.1 => /lib/i386-linux-gnu/libxcb.so.1 (0xeeb61000)
    libX11-xcb.so.1 => /lib/i386-linux-gnu/libX11-xcb.so.1 (0xeeb5c000)
    libxcb-present.so.0 => /lib/i386-linux-gnu/libxcb-present.so.0 (0xeeb55000)
    libxcb-xfixes.so.0 => /lib/i386-linux-gnu/libxcb-xfixes.so.0 (0xeeb4a000)
    libxcb-sync.so.1 => /lib/i386-linux-gnu/libxcb-sync.so.1 (0xeeb41000)
    libxcb-randr.so.0 => /lib/i386-linux-gnu/libxcb-randr.so.0 (0xeeb2e000)
    libxcb-shm.so.0 => /lib/i386-linux-gnu/libxcb-shm.so.0 (0xeeb29000)
    libxshmfence.so.1 => /lib/i386-linux-gnu/libxshmfence.so.1 (0xeeb24000)
    libdrm.so.2 => /lib/i386-linux-gnu/libdrm.so.2 (0xeeb0a000)
    libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xeeade000)
    libstdc++.so.6 => /lib/i386-linux-gnu/libstdc++.so.6 (0xee876000)
    libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xee76a000)
    libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xee730000)
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xee4fd000)
    libffi.so.8 => /lib/i386-linux-gnu/libffi.so.8 (0xee4f3000)
    libedit.so.2 => /lib/i386-linux-gnu/libedit.so.2 (0xee4bb000)
    libz3.so.4 => /lib/i386-linux-gnu/libz3.so.4 (0xecc38000)
    libtinfo.so.6 => /lib/i386-linux-gnu/libtinfo.so.6 (0xecc0a000)
    libxml2.so.2 => /lib/i386-linux-gnu/libxml2.so.2 (0xeca2e000)
    /lib/ld-linux.so.2 (0xf7eeb000)
    libXau.so.6 => /lib/i386-linux-gnu/libXau.so.6 (0xeca29000)
    libXdmcp.so.6 => /lib/i386-linux-gnu/libXdmcp.so.6 (0xeca22000)
    libbsd.so.0 => /lib/i386-linux-gnu/libbsd.so.0 (0xeca0a000)
    libicuuc.so.72 => /lib/i386-linux-gnu/libicuuc.so.72 (0xec800000)
    liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xec7ca000)
    libmd.so.0 => /lib/i386-linux-gnu/libmd.so.0 (0xec7b8000)
    libicudata.so.72 => /lib/i386-linux-gnu/libicudata.so.72 (0xea9e6000)
user@debian:~$ 

I am not sure what linux-gate.so.1 is, maybe it is vdso stuff.

But libvulkan is not even attempting to read radeon_icd.i686.json or
dlopen /usr/lib/i386-linux-gnu/libvulkan_radeon.so so that is probably
not a problem.

PS.

user@debian:~$ ls -l /usr/share/vulkan/implicit_layer.d
total 5
-rw-r--r-- 1 root root 600 Sep  3 00:31 libMangoApp.x86_64.json
-rw-r--r-- 1 root root 611 Sep  3 00:31 MangoHud.x86_64.json
-rw-r--r-- 1 root root 606 Sep  3 00:31 MangoHud.x86.json
-rw-r--r-- 1 root root 574 Feb 10  2024 vkBasalt.json
-rw-r--r-- 1 root root 473 Sep  5 22:28 VkLayer_MESA_device_select.json
user@debian:~$ 

but that does not to be important either (libvulkan is not opening of
these json files).

I have same issue with vulkaninfo

64-bit version of vulkaninfo and vkcube work perfectly fine:

openat(AT_FDCWD, "/usr/share/vulkan/icd.d", 
O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
fstat(4, {st_mode=S_IFDIR|0755, st_size=367, ...}) = 0
getdents64(4, 0x55fc72361f70 /* 14 entries */, 32768) = 584
access("/usr/share/vulkan/icd.d/.", F_OK) = 0
access("/usr/share/vulkan/icd.d/..", F_OK) = 0
access("/usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/intel_hasvk_icd.x86_64.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/intel_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/intel_icd.x86_64.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/lvp_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/lvp_icd.x86_64.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/nouveau_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/nouveau_icd.x86_64.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/radeon_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/radeon_icd.x86_64.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/virtio_icd.i686.json", F_OK) = 0
access("/usr/share/vulkan/icd.d/virtio_icd.x86_64.json", F_OK) = 0
getdents64(4, 0x55fc72361f70 /* 0 entries */, 32768) = 0
close(4)                                = 0
openat(AT_FDCWD, "/var/lib/snapd/desktop/vulkan/icd.d", 
O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = -1 ENOENT (No such file or 
directory)
openat(AT_FDCWD, "/usr/share/vulkan/icd.d/intel_hasvk_icd.i686.json", O_RDONLY) 
= 4
fstat(4, {st_mode=S_IFREG|0644, st_size=167, ...}) = 0
read(4, "{\n    \"ICD\": {\n        \"api_vers"..., 4096) = 167
read(4, "", 4096)                       = 0
lseek(4, 0, SEEK_CUR)                   = 167
lseek(4, 0, SEEK_SET)                   = 0
read(4, "{\n    \"ICD\": {\n        \"api_vers"..., 4096) = 167
close(4)                                = 0
openat(AT_FDCWD, "/usr/lib/i386-linux-gnu/libvulkan_intel_hasvk.so", 
O_RDONLY|O_CLOEXEC) = 4
...
...

Regards,
Witold



-- System Information:
Debian Release: trixie/sid
  APT prefers trixie
  APT policy: (500, 'trixie'), (500, 'testing-debug'), (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.11.0 (SMP w/32 CPU threads; PREEMPT)
Kernel taint flags: TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages libvulkan1:i386 depends on:
ii  libc6  2.40-2

Versions of packages libvulkan1:i386 recommends:
ii  mesa-vulkan-drivers [vulkan-icd]  24.2.2-1

libvulkan1:i386 suggests no packages.

-- no debconf information

Reply via email to