Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

addpkg(main/mesa-vulkan-icd-wrapper): Android Vulkan wrapper #22500

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

xMeM
Copy link
Contributor

@xMeM xMeM commented Dec 10, 2024

Wrap the Android system Vulkan library into an ICD and provides X11 platform surface support.

@twaik
Copy link
Member

twaik commented Dec 10, 2024

@truboxl @licy183 @sylirre probably this driver can replace vulkan-loader-android and implement default vulkan ICD at the same time. Probably you want to test it a bit more deep.

@twaik
Copy link
Member

twaik commented Dec 10, 2024

For some reasons latest termux-x11 falls with segmentation fault if I launch vkcube. Will investigate it.

@Biswa96
Copy link
Member

Biswa96 commented Dec 10, 2024

Does this support Adreno 505 GPU? I got the following errors.

$ termux-x11 -xstartup vkcube
Selected WSI platform: xcb
Selected GPU 0: Adreno (TM) 505, type: IntegratedGpu
ERROR(/home/builder/.termux-build/vulkan-wsi-layer/src/wsi/swapchain_base.cpp:323): init_platform(device, swapchain_create_info, use_presentation_thread)
ERROR(/home/builder/.termux-build/vulkan-wsi-layer/src/layer/swapchain_api.cpp:65): Failed to initialise swapchain
23377 killed by signal 11

$ termux-x11 -xstartup vulkaninfo
WARNING: [Loader Message] Code 0 : Layer VK_LAYER_window_system_integration uses API version 1.3 which is older than the application specified API version of 1.4. May cause issues.
...more info...

@xMeM
Copy link
Contributor Author

xMeM commented Dec 10, 2024

Uninstall vulkan-wsi-layer , it is no longer needed.

@Biswa96
Copy link
Member

Biswa96 commented Dec 10, 2024

Thanks for the hint. Now, vkcube is working but vulkaninfo fails.

$ vulkaninfo
../src/src/vulkan/wsi/wsi_common_x11.c:938: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed
Aborted

@twaik
Copy link
Member

twaik commented Dec 10, 2024

Does not work fine on my device. I get this in X server log.

12-10 12:33:14.825 10980 10992 E [Gralloc-ERROR]: validate_lock_input_parameters:227 Lock is not supported for AFBC enabled buffers. wxh(500 500) Internal Format:0x100000001
12-10 12:33:14.825 10980 10992 W Gralloc2: lock(0x7e50a94500, ...) failed: 7
12-10 12:33:14.825 10980 10992 E LorieNative: DRI3: AHardwareBuffer_lock failed: 7

@xMeM
Copy link
Contributor Author

xMeM commented Dec 10, 2024

Thanks for the hint. Now, vkcube is working but vulkaninfo fails.

$ vulkaninfo
../src/src/vulkan/wsi/wsi_common_x11.c:938: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed
Aborted

This is an issue with vulkan-tools , fixed by KhronosGroup/Vulkan-Tools@2744de9.

@twaik
Copy link
Member

twaik commented Dec 10, 2024

Is there any reason why CI built libwayland-protocols and not the actual package? @sylirre ?

@twaik twaik closed this Dec 10, 2024
@twaik twaik reopened this Dec 10, 2024
@sylirre
Copy link
Member

sylirre commented Dec 10, 2024

@twaik CI built these packages:

  • libwayland-protocols_1.38_all.deb
  • mesa-vulkan-icd-wrapper_24.3.1-1_aarch64.deb
  • mesa-vulkan-icd-wrapper_24.3.1-1_arm.deb

icd wrapper has TERMUX_PKG_BLACKLISTED_ARCHES="i686, x86_64"

I don't see missing packages.

@twaik
Copy link
Member

twaik commented Dec 10, 2024

Oh, I was checking the x86_64 version.
@xMeM is there any reason to make it only arm and arm64?

@xMeM
Copy link
Contributor Author

xMeM commented Dec 10, 2024

Not tested on x86_64 devices.

@xMeM
Copy link
Contributor Author

xMeM commented Dec 10, 2024

Does not work fine on my device. I get this in X server log.

12-10 12:33:14.825 10980 10992 E [Gralloc-ERROR]: validate_lock_input_parameters:227 Lock is not supported for AFBC enabled buffers. wxh(500 500) Internal Format:0x100000001
12-10 12:33:14.825 10980 10992 W Gralloc2: lock(0x7e50a94500, ...) failed: 7
12-10 12:33:14.825 10980 10992 E LorieNative: DRI3: AHardwareBuffer_lock failed: 7

I changed the Usage of AHardwareBuffer, can you try again?

@twaik
Copy link
Member

twaik commented Dec 10, 2024

Unfortunately the package is stripped and debug symbols are disabled so there is no much info.

Selected WSI platform: xlib
Selected GPU 0: Mali-G77, type: IntegratedGpu                                                   
Segmentation fault                                                                              
--------- beginning of crash
12-10 16:32:52.306  9822  9822 F libc    : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), faul
t addr 0xe0 in tid 9822 (vkcube), pid 9822 (vkcube)
--------- beginning of main                                                                     
12-10 16:32:52.324  9831  9831 I crash_dump64: obtaining output fd from tombstoned, type: kDebug
gerdTombstoneProto                                                                              
12-10 16:32:52.326  9831  9831 I crash_dump64: performing dump of process 9822 (target tid = 982
2)                                                                                              
12-10 16:32:52.369  9831  9831 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *
** *** ***                                                                                      
12-10 16:32:52.369  9831  9831 F DEBUG   : Build fingerprint: 'samsung/r8sxx/r8s:13/TP1A.220624.
014/G780FXXSLFXK8:user/release-keys'
12-10 16:32:52.369  9831  9831 F DEBUG   : Revision: '5'                                        
12-10 16:32:52.369  9831  9831 F DEBUG   : ABI: 'arm64'
12-10 16:32:52.369  9831  9831 F DEBUG   : Processor: '4'                                       
12-10 16:32:52.369  9831  9831 F DEBUG   : Timestamp: 2024-12-10 16:32:52.330705687+0200        
12-10 16:32:52.369  9831  9831 F DEBUG   : Process uptime: 1s                                   
12-10 16:32:52.369  9831  9831 F DEBUG   : Cmdline: vkcube                                      
12-10 16:32:52.369  9831  9831 F DEBUG   : pid: 9822, tid: 9822, name: vkcube  >>> vkcube <<<   
12-10 16:32:52.369  9831  9831 F DEBUG   : uid: 10677                                           
12-10 16:32:52.369  9831  9831 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr
 0x00000000000000e0                                                                             
12-10 16:32:52.369  9831  9831 F DEBUG   : Cause: null pointer dereference                      
12-10 16:32:52.369  9831  9831 F DEBUG   :     x0  0000000000000000  x1  00000074a6c02800  x2  0
0000074a9a6a008  x3  000000000000001d                                                           
12-10 16:32:52.369  9831  9831 F DEBUG   :     x4  0000000000000000  x5  0000000000000000  x6  0
000000000000000  x7  7f7f7f7f7f7f7f7f
12-10 16:32:52.369  9831  9831 F DEBUG   :     x8  0a032e85271b5fb7  x9  0a032e85271b5fb7  x10 0
0000074a6c00ae0  x11 00000074a6c01450                                                           
12-10 16:32:52.369  9831  9831 F DEBUG   :     x12 00000074a6c01430  x13 0000000000081708  x14 0
000000000080308  x15 ffffffffffffffff
12-10 16:32:52.369  9831  9831 F DEBUG   :     x16 00000074a71d2a60  x17 00000074a71c227c  x18 0
0000074a9574000  x19 0000007fe2413590
12-10 16:32:52.369  9831  9831 F DEBUG   :     x20 0000005a79ed9180  x21 0000005a79e89f09  x22 0
0000074a6d71754  x23 0000000000000001
12-10 16:32:52.369  9831  9831 F DEBUG   :     x24 0000005a79ed7000  x25 0000000000000000  x26 0
000000000000055  x27 0000007fe2413590                                                           
12-10 16:32:52.369  9831  9831 F DEBUG   :     x28 0000000000000000  x29 0000007fe2414690
12-10 16:32:52.369  9831  9831 F DEBUG   :     lr  0000005a79e9de24  sp  0000007fe24134d0  pc  0
000005a79e9de28  pst 0000000060000000
12-10 16:32:52.369  9831  9831 F DEBUG   : backtrace:                                           
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE: Function names and BuildId information is mis
sing for some frames due                                                                        
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE: to unreadable libraries. For unwinds of apps,
 only shared libraries
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE: found under the lib/ directory are readable.
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE: On this device, run setenforce 0 to make the 
libraries readable.
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE: Unreadable libraries:
12-10 16:32:52.369  9831  9831 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/bin/vkcube
12-10 16:32:52.369  9831  9831 F DEBUG   :       #00 pc 000000000001de28  /data/data/com.termux/
files/usr/bin/vkcube
12-10 16:32:52.369  9831  9831 F DEBUG   :       #01 pc 0000000000083198  /apex/com.android.runt
ime/lib64/bionic/libc.so (__libc_init+96) (BuildId: ae97b4676db8ce3f620ba6bf7932eba6)
12-10 16:32:52.376  9831  9831 E crash_dump64: AM data write failed: Broken pipe
~/.../downloads/debs $

@hansm629
Copy link

@xMeM
Xclipse 940 GPU : vkmark [clear] flickering issue

vkmark_clear_flickering_issue.mp4

@hansm629
Copy link

@xMeM
Adreno 750 GPU : clvk not work Issue

~$ clinfo
[CLVK] Could not initialise any device!

@hansm629
Copy link

@xMeM
Could you please make MESA_VK_WSI_DEBUG=nosync environment variable work like it did in the old debug build version?

@Artewar67
Copy link

Artewar67 commented Dec 10, 2024

This version (24.3.1) stopped working with all applications except vulkaninfo compared to 24.2.5. I tested all variations of 24.3.1 and none of them works.

Selected WSI platform: xcb
Selected GPU 0: Mali-G76, type: IntegratedGpu
termux :0 -xstartup "vkmark"
7482 killed by signal 11

@paulowesll
Copy link

It's working with lasted termux-x11 update

https://github.com/termux/termux-x11/releases/tag/nightly

This version (24.3.1) stopped working with all applications except vulkaninfo compared to 24.2.5. I tested all variations of 24.3.1 and none of them works.

Selected WSI platform: xcb
Selected GPU 0: Mali-G76, type: IntegratedGpu
termux :0 -xstartup "vkmark"
7482 killed by signal 11

@Artewar67
Copy link

It's working with lasted termux-x11 update

https://github.com/termux/termux-x11/releases/tag/nightly

Updated termux-x11 and install new version of termux-x11-nightly. Nothing change

@twaik
Copy link
Member

twaik commented Dec 10, 2024

I managed to get better crash log

twaik@twaik:~/termux-x11$ adb -s phone:5555 logcat -c; adb -s phone:5555 logcat | ~/Android/Sdk/ndk/28.0.12674087/ndk-stack -i /dev/stdin --sym=/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/src/vulkan/wrapper
********** Crash dump: **********
Build fingerprint: 'samsung/r8sxx/r8s:13/TP1A.220624.014/G780FXXSLFXK8:user/release-keys'
#00 0x000000000076dacc /vendor/lib64/egl/libGLES_mali.so (vulkan::image::image_init_info::handle_image_format(gfx::host_mem_allocator&)+216) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#01 0x000000000076e46c /vendor/lib64/egl/libGLES_mali.so (vulkan::image::image_init_info::parse_image_info(gfx::host_mem_allocator&, bool, hal::surface_metadata const*)+376) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#02 0x000000000076b5b4 /vendor/lib64/egl/libGLES_mali.so (vulkan::image::init(vulkan::device*, VkImageCreateInfo const&, gfx::host_mem_allocator const&, bool, hal::surface_metadata const*, unsigned long const*, unsigned long const*)+276) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#03 0x000000000076f8cc /vendor/lib64/egl/libGLES_mali.so (vulkan::image::init_external_common(vulkan::device*, VkImageCreateInfo const&, unsigned long const*, unsigned long const*, gfx::host_mem_allocator const&, bool, hal::surface_metadata const&, int, hal::drm_format_modifier)+272) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#04 0x0000000000783960 /vendor/lib64/egl/libGLES_mali.so (vulkan::android_deferred_image_init_and_bind(vulkan::device*, vulkan::image*, vulkan::device_memory*)+612) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#05 0x000000000076baf4 /vendor/lib64/egl/libGLES_mali.so (vkBindImageMemory+20) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#06 0x00000000001f7f60 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_create_ahardware_buffer_blit_context
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:2359:13
#07 0x00000000001f4b70 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_create_image
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:777:13
#08 0x00000000001fce0c /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
x11_image_init
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common_x11.c:2073:13
#09 0x00000000001fbb90 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
x11_surface_create_swapchain
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common_x11.c:2791:16
#10 0x00000000001f52e0 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_CreateSwapchainKHR
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:1058:22
#11 0x000000000007a254 /data/data/com.termux/files/usr/lib/libvulkan.so.1.3.302
#12 0x000000000007c0ec /data/data/com.termux/files/usr/lib/vkmark/xcb.so
#13 0x000000000005c0c4 /data/data/com.termux/files/usr/lib/vkmark/xcb.so
#14 0x00000000000501d4 /data/data/com.termux/files/usr/lib/vkmark/xcb.so
#15 0x00000000000ad458 /data/data/com.termux/files/usr/bin/vkmark
#16 0x0000000000083198 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+96) (BuildId: ae97b4676db8ce3f620ba6bf7932eba6)
Crash dump is completed

********** Crash dump: **********
Build fingerprint: 'samsung/r8sxx/r8s:13/TP1A.220624.014/G780FXXSLFXK8:user/release-keys'
#00 0x000000000076dacc /vendor/lib64/egl/libGLES_mali.so (vulkan::image::image_init_info::handle_image_format(gfx::host_mem_allocator&)+216) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#01 0x000000000076e46c /vendor/lib64/egl/libGLES_mali.so (vulkan::image::image_init_info::parse_image_info(gfx::host_mem_allocator&, bool, hal::surface_metadata const*)+376) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#02 0x000000000076b5b4 /vendor/lib64/egl/libGLES_mali.so (vulkan::image::init(vulkan::device*, VkImageCreateInfo const&, gfx::host_mem_allocator const&, bool, hal::surface_metadata const*, unsigned long const*, unsigned long const*)+276) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#03 0x000000000076f8cc /vendor/lib64/egl/libGLES_mali.so (vulkan::image::init_external_common(vulkan::device*, VkImageCreateInfo const&, unsigned long const*, unsigned long const*, gfx::host_mem_allocator const&, bool, hal::surface_metadata const&, int, hal::drm_format_modifier)+272) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#04 0x0000000000783960 /vendor/lib64/egl/libGLES_mali.so (vulkan::android_deferred_image_init_and_bind(vulkan::device*, vulkan::image*, vulkan::device_memory*)+612) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#05 0x000000000076baf4 /vendor/lib64/egl/libGLES_mali.so (vkBindImageMemory+20) (BuildId: 6ee02575d06e4ab1887c2e4c9f5e690b)
#06 0x00000000001f7f60 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_create_ahardware_buffer_blit_context
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:2359:13
#07 0x00000000001f4b70 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_create_image
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:777:13
#08 0x00000000001fce0c /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
x11_image_init
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common_x11.c:2073:13
#09 0x00000000001fbb90 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
x11_surface_create_swapchain
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common_x11.c:2791:16
#10 0x00000000001f52e0 /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
wsi_CreateSwapchainKHR
/home/twaik/.termux-build/mesa-vulkan-icd-wrapper/build/../src/src/vulkan/wsi/wsi_common.c:1058:22
#11 0x000000000007a254 /data/data/com.termux/files/usr/lib/libvulkan.so.1.3.302
#12 0x000000000001f8ac /data/data/com.termux/files/usr/bin/vkcube
#13 0x000000000001e70c /data/data/com.termux/files/usr/bin/vkcube
#14 0x0000000000083198 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+96) (BuildId: ae97b4676db8ce3f620ba6bf7932eba6)
Crash dump is completed

@paulowesll
Copy link

It's working with lasted termux-x11 update
https://github.com/termux/termux-x11/releases/tag/nightly

Updated termux-x11 and install new version of termux-x11-nightly. Nothing change

It's working here with lasted mesa wrapper and lasted termux-x11

~ $ termux-x11 -xstartup vkcube
Selected WSI platform: xcb
Selected GPU 0: Samsung Xclipse 530, type: IntegratedGpu

@twaik
Copy link
Member

twaik commented Dec 10, 2024

@xMeM suggestion. Some devices support BGRA format of AHardwareBuffers. It is enough to pass 5 as AHardwareBuffer_Desc::format to make it work. It will work on most devices (works fine in termux-x11), but you can write a runtime check for it (probe for this feature and check for errors?). So you can avoid blitting in this case and improve performance.

@Artewar67
Copy link

Artewar67 commented Dec 10, 2024

I also that when running vulkaninfo with termux-x11 this error occurs

~ $ termux-x11 -xstartup "vulkaninfo"
../src/src/vulkan/wsi/wsi_common_x11.c:938: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed
19564 killed by signal 6

This error also occurs in version 24.2.5 vulkan wrapper

@Xtr126
Copy link

Xtr126 commented Dec 11, 2024

Even though the blacklist was removed it does not work on x86_64:

 ~ $ termux-x11 -xstartup vkcube
Selected WSI platform: xcb
12183 killed by signal 11

vulkaninfo and glxgears with zink works fine somehow.

@xMeM
Copy link
Contributor Author

xMeM commented Dec 19, 2024

It does not. It literally does not contain the wrapper code.

I have moved the source files to https://github.com/xMeM/mesa/tree/wrapper

@twaik
Copy link
Member

twaik commented Dec 19, 2024

Oh, I missed that part. Sorry.

@PhytochromeFr
Copy link

~ $ vulkaninfo
../src/src/vulkan/wsi/wsi_common_x11.c:942: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed
Aborted
~ $ logcat
--------- beginning of main
12-19 21:48:42.425 29329 29359 D gles-renderer: 11 frames in 5.0 seconds = 2.2 FPS
12-19 21:48:45.085 29329 29359 D LorieNative: Trying to input keysym 118
12-19 21:48:45.287 29329 29359 D LorieNative: Trying to input keysym 117
12-19 21:48:45.454 29329 29359 D LorieNative: Trying to input keysym 108
12-19 21:48:45.635 29329 29359 D LorieNative: Trying to input keysym 107
12-19 21:48:45.737 29329 29359 D LorieNative: Trying to input keysym 97
12-19 21:48:45.872 29329 29359 D LorieNative: Trying to input keysym 110
12-19 21:48:46.275 29329 29359 D LorieNative: Trying to input keysym 105
12-19 21:48:46.402 29329 29359 D LorieNative: Trying to input keysym 110
12-19 21:48:46.590 29329 29359 D LorieNative: Trying to input keysym 102
12-19 21:48:46.725 29329 29359 D LorieNative: Trying to input keysym 111
12-19 21:48:47.425 29329 29359 D gles-renderer: 10 frames in 5.0 seconds = 2.0 FPS
12-19 21:48:49.123  6608  6608 W bash    : type=1400 audit(0.0:5187024): avc:  granted  { execute } for  name="vulkaninfo" dev="dm-75" ino=337390 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:49.123  6608  6608 W bash    : type=1400 audit(0.0:5187025): avc:  granted  { execute } for  name="vulkaninfo" dev="dm-75" ino=337390 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:49.123  6608  6608 W bash    : type=1400 audit(0.0:5187026): avc:  granted  { execute_no_trans } for  path="/data/data/com.termux/files/usr/bin/vulkaninfo" dev="dm-75" ino=337390 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:49.123  6608  6608 W vulkaninfo: type=1400 audit(0.0:5187027): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/bin/vulkaninfo" dev="dm-75" ino=337390 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:49.135  6608  6608 W vulkaninfo: type=1400 audit(0.0:5187028): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/lib/libtermux-exec.so" dev="dm-75" ino=612195 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:49.180  6608  6608 D colorx  : VulkanExtImpl Init
12-19 21:48:49.182  6608  6608 D colorx  : I can't find colorx layer , let's enumerate colorx layers first.
12-19 21:48:49.185  6608  6608 I AdrenoVK-0: ===== BEGIN DUMP OF OVERRIDDEN SETTINGS =====
12-19 21:48:49.185  6608  6608 I AdrenoVK-0: ===== END DUMP OF OVERRIDDEN SETTINGS =====
12-19 21:48:49.187  6608  6608 D qdgralloc: Fetching IMapper5 from QtiMapper5
12-19 21:48:49.191  6608  6608 I SnapAlloc: Graphics lib is available
12-19 21:48:49.194  6608  6608 I Adreno-UNKNOWN: Using previously loaded IMapper library.
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: QUALCOMM build          : 6b8ca81d17, Ibf13033040
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Build Date              : 10/28/24
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Shader Compiler Version : E031.47.18.10
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Local Branch            : 
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Remote Branch           : refs/tags/AU_LINUX_ANDROID_LA.VENDOR.15.4.0.11.00.00.1088.497
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Remote Branch           : NONE
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Reconstruct Branch      : NOTHING
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Build Config            : S P 18.0.0 AArch64
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Driver Path             : /vendor/lib64/hw/vulkan.adreno.so
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Driver Version          : 0800.13
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: PFP                     : 0x01500062
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: ME                      : 0x01500012
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Application Name    : vulkaninfo
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Application Version : 0x00000001
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Engine Name         : (null)
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Engine Version      : 0x00000000
12-19 21:48:49.194  6608  6608 I AdrenoVK-0: Api Version         : 0x00403000
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f040f provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba151e0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f4671 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e92c0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ef468 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9d5270 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9deaca provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9b8d50 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9de6e0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e7380 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba14a10 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba14df8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9d4aa1 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba06f50 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ddf10 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9fcb40 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e6bb0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba11360 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e8320 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e96a8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ea260 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f3ea0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9c8f20 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e9a90 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9dfa68 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9d2390 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e9e78 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x37 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e4888 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba1bb58 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f5de0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba06b69 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba0f420 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9fc371 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba12ad0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba2c8e0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba25798 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba38460 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba3ab70 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba07339 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba34db0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ee8b0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba1e268 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba2a5b8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba33a31 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba29dec provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f07f0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9fd310 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9fc759 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba374c0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba009c0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba001f0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba159b0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba228b8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba132a0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba1abb8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba1c710 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba0d4e5 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba07721 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9fafe8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba13a70 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9bd3a1 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba23088 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ff638 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba26350 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba25f68 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba082d8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba26738 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9efc38 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f1b78 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba24410 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba24be0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba224d0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba0d0f8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba20d60 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba31ed0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba2a9a0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba126e9 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9c77b0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba14240 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba36138 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ef080 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba341f8 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba35198 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba39018 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba36520 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba04c28 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba3d668 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba3cab0 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba41100 provided to vkGetPhysicalDeviceFeatures2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9e0620 provided to VkGetPhysicalDeviceProperties2
12-19 21:48:49.196  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3ba02ce8 provided to VkGetPhysicalDeviceProperties2
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f9c61 provided to VkGetPhysicalDeviceProperties2
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9fdae1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9e1d91 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9e3cd2 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9ebdba provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba1f5f1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba31ae9 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9ef081 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba0c541 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9eaa32 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9c0280 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9f2731 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9cf89b provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba1d6b1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9b3761 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba2ccc8 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9db030 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x32 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x34 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x36 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ef081 provided to VkGetPhysicalDeviceProperties2
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9f9c61 provided to VkGetPhysicalDeviceProperties2
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9fdae1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9e1d91 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9e3cd2 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9ebdba provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba1f5f1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba31ae9 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9ef081 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba0c541 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9eaa32 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9c0280 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9f2731 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9cf89b provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba1d6b1 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9b3761 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3ba2ccc8 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x3b9db030 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x32 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x34 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct type 0x36 provided to DescriptorBufferProp
12-19 21:48:49.200  6608  6608 I AdrenoVK-0: Unknown struct with type 0x3b9ef081 provided to VkGetPhysicalDeviceProperties2
--------- beginning of crash
12-19 21:48:49.206  6608  6608 F libc    : ../src/src/vulkan/wsi/wsi_common_x11.c:942: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed
12-19 21:48:49.206  6608  6608 F libc    : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 6608 (vulkaninfo), pid 6608 (vulkaninfo)
12-19 21:48:49.236  6614  6614 E crash_dump64: failed to get the guest state header for thread 6608: Bad address
12-19 21:48:49.243  6614  6614 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
12-19 21:48:49.244  6614  6614 I crash_dump64: performing dump of process 6608 (target tid = 6608)
12-19 21:48:49.270  6614  6614 F DEBUG   : Process name is vulkaninfo, uid is 10433, not key_process
12-19 21:48:49.270  6614  6614 F DEBUG   : keyProcess: 0
12-19 21:48:49.270  6614  6614 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
12-19 21:48:49.270  6614  6614 F DEBUG   : Build fingerprint: 'OnePlus/PJZ110/OP5D0DL1:15/AP3A.240617.008/V.1b232c4-1_1:user/release-keys'
12-19 21:48:49.270  6614  6614 F DEBUG   : Revision: '0'
12-19 21:48:49.270  6614  6614 F DEBUG   : ABI: 'arm64'
12-19 21:48:49.270  6614  6614 F DEBUG   : Timestamp: 2024-12-19 21:48:49.246643825+0900
12-19 21:48:49.270  6614  6614 F DEBUG   : Process uptime: 1s
12-19 21:48:49.270  6614  6614 F DEBUG   : Cmdline: vulkaninfo
12-19 21:48:49.270  6614  6614 F DEBUG   : pid: 6608, tid: 6608, name: vulkaninfo  >>> vulkaninfo <<<
12-19 21:48:49.270  6614  6614 F DEBUG   : uid: 10433
12-19 21:48:49.270  6614  6614 F DEBUG   : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
12-19 21:48:49.270  6614  6614 F DEBUG   : pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
12-19 21:48:49.271  6614  6614 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
12-19 21:48:49.271  6614  6614 F DEBUG   : Abort message: '../src/src/vulkan/wsi/wsi_common_x11.c:942: VkResult x11_surface_get_formats2(VkIcdSurfaceBase *, struct wsi_device *, const void *, uint32_t *, VkSurfaceFormat2KHR *): assertion "f->sType == VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR" failed'
12-19 21:48:49.271  6614  6614 F DEBUG   :     x0  0000000000000000  x1  00000000000019d0  x2  0000000000000006  x3  0000007ff58ac9b0
12-19 21:48:49.271  6614  6614 F DEBUG   :     x4  6d6e6c6c6e625e68  x5  6d6e6c6c6e625e68  x6  6d6e6c6c6e625e68  x7  7f7f7f7f7f7f7f7f
12-19 21:48:49.271  6614  6614 F DEBUG   :     x8  00000000000000f0  x9  0000007c79af4d78  x10 ffffff80ffffffdf  x11 0000000000000000
12-19 21:48:49.271  6614  6614 F DEBUG   :     x12 0000000067641631  x13 000000007fffffff  x14 00000000016e2a0c  x15 0000016df3cbd827
12-19 21:48:49.271  6614  6614 F DEBUG   :     x16 0000007c79bd86b0  x17 0000007c79bc2a40  x18 0000007c7c530000  x19 00000000000019d0
12-19 21:48:49.271  6614  6614 F DEBUG   :     x20 00000000000019d0  x21 00000000ffffffff  x22 0000000000000002  x23 000000003b9c9ada
12-19 21:48:49.271  6614  6614 F DEBUG   :     x24 0000007c7b673010  x25 b400007c7780e800  x26 0000000000000001  x27 b400007c77882988
12-19 21:48:49.271  6614  6614 F DEBUG   :     x28 b400007c77882e80  x29 0000007ff58aca30
12-19 21:48:49.271  6614  6614 F DEBUG   :     lr  0000007c79b5e4e8  sp  0000007ff58ac990  pc  0000007c79b5e518  pst 0000000000001000
12-19 21:48:49.271  6614  6614 F DEBUG   : 8 total frames
12-19 21:48:49.271  6614  6614 F DEBUG   : backtrace:
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE: Function names and BuildId information is missing for some frames due
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE: to unreadable libraries. For unwinds of apps, only shared libraries
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE: found under the lib/ directory are readable.
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE: On this device, run setenforce 0 to make the libraries readable.
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE: Unreadable libraries:
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/bin/vulkaninfo
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/lib/libvulkan.so.1.4.303
12-19 21:48:49.271  6614  6614 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
12-19 21:48:49.271  6614  6614 F DEBUG   :       #00 pc 0000000000090518  /apex/com.android.runtime/lib64/bionic/libc.so (abort+172) (BuildId: 4545a63f7d7b92b0c45c26fe530b66de)
12-19 21:48:49.271  6614  6614 F DEBUG   :       #01 pc 0000000000090db4  /apex/com.android.runtime/lib64/bionic/libc.so (__assert2+40) (BuildId: 4545a63f7d7b92b0c45c26fe530b66de)
12-19 21:48:49.271  6614  6614 F DEBUG   :       #02 pc 0000000000267388  /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
12-19 21:48:49.271  6614  6614 F DEBUG   :       #03 pc 0000000000081e2c  /data/data/com.termux/files/usr/lib/libvulkan.so.1.4.303
12-19 21:48:49.271  6614  6614 F DEBUG   :       #04 pc 00000000000e4444  /data/data/com.termux/files/usr/bin/vulkaninfo
12-19 21:48:49.271  6614  6614 F DEBUG   :       #05 pc 00000000000dba7c  /data/data/com.termux/files/usr/bin/vulkaninfo
12-19 21:48:49.271  6614  6614 F DEBUG   :       #06 pc 00000000000b0ef8  /data/data/com.termux/files/usr/bin/vulkaninfo
12-19 21:48:49.271  6614  6614 F DEBUG   :       #07 pc 0000000000089ea4  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+120) (BuildId: 4545a63f7d7b92b0c45c26fe530b66de)
12-19 21:48:51.115 29329 29359 D LorieNative: Trying to input keysym 108
12-19 21:48:51.271 29329 29359 D LorieNative: Trying to input keysym 111
12-19 21:48:51.429 29329 29359 D LorieNative: Trying to input keysym 103
12-19 21:48:51.799 29329 29359 D LorieNative: Trying to input keysym 99
12-19 21:48:51.979 29329 29359 D LorieNative: Trying to input keysym 97
12-19 21:48:52.160 29329 29359 D LorieNative: Trying to input keysym 116
12-19 21:48:52.425 29329 29359 D gles-renderer: 10 frames in 5.0 seconds = 2.0 FPS
12-19 21:48:52.923  6686  6686 W bash    : type=1400 audit(0.0:5187053): avc:  granted  { execute } for  name="logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:52.923  6686  6686 W bash    : type=1400 audit(0.0:5187054): avc:  granted  { execute } for  name="logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:52.923  6686  6686 W bash    : type=1400 audit(0.0:5187055): avc:  granted  { execute_no_trans } for  path="/data/data/com.termux/files/usr/bin/logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:52.923  6686  6686 W bash    : type=1400 audit(0.0:5187056): avc:  granted  { execute } for  name="dash" dev="dm-75" ino=212212 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:52.927  6686  6686 W logcat  : type=1400 audit(0.0:5187057): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/bin/dash" dev="dm-75" ino=212212 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-19 21:48:57.425 29329 29359 D gles-renderer: 3 frames in 5.0 seconds = 0.6 FPS

vkcube & vkmark works. but vulkaninfo failed.

@ggsasda
Copy link

ggsasda commented Dec 19, 2024

@hansm629
Copy link

@xMeM
clvkwork again on Adreno 750 GPU!
Thank you!

clinfo
Number of platforms                               1
  Platform Name                                   clvk
  Platform Vendor                                 clvk
  Platform Version                                OpenCL 3.0 clvk
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_khr_extended_versioning 
  Platform Extensions with Version                cl_khr_icd                                                       0x400000 (1.0.0)
                                                  cl_khr_extended_versioning                                       0x400000 (1.0.0)
  Platform Numeric Version                        0xc00000 (3.0.0)
  Platform Extensions function suffix             clvk
  Platform Host timer resolution                  1ns

  Platform Name                                   clvk
Number of devices                                 1
  Device Name                                     Adreno (TM) 750
  Device Vendor                                   Unknown vendor
  Device Vendor ID                                0x5143
  Device Version                                  OpenCL 3.0 CLVK on Vulkan v1.3.128 driver 2150604830

@hansm629
Copy link

hansm629 commented Dec 19, 2024

@xMeM
by any chance
Could you please add an option similar to MESA_VK_WSI_DEBUG=nosync so that we can do GPU max performance measurements like in past debug builds?

I Know
It won't do anything to actually performance gaming

But
When comparing the performance gap in vkmark for each SoC GPU
I think it's going to be useful.

@PhytochromeFr
Copy link

clvk doesn't work.

~ $ logcat -c
~ $ clinfo
[CLVK] Could not initialise any device!
~ $ logcat
--------- beginning of main
12-20 00:37:44.886 26952 26989 D gles-renderer: 4 frames in 5.0 seconds = 0.8 FPS
12-20 00:37:45.605 26952 26989 D LorieNative: Trying to input keysym 99
12-20 00:37:45.730 26952 26989 D LorieNative: Trying to input keysym 108
12-20 00:37:45.918 26952 26989 D LorieNative: Trying to input keysym 105
12-20 00:37:46.043 26952 26989 D LorieNative: Trying to input keysym 110
12-20 00:37:46.257 26952 26989 D LorieNative: Trying to input keysym 102
12-20 00:37:46.360 26952 26989 D LorieNative: Trying to input keysym 111
12-20 00:37:46.816 29572 29572 W bash    : type=1400 audit(0.0:5209175): avc:  granted  { execute } for  name="clinfo" dev="dm-75" ino=45790 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:46.820 29572 29572 W bash    : type=1400 audit(0.0:5209176): avc:  granted  { execute } for  name="clinfo" dev="dm-75" ino=45790 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:46.820 29572 29572 W bash    : type=1400 audit(0.0:5209177): avc:  granted  { execute_no_trans } for  path="/data/data/com.termux/files/usr/bin/clinfo" dev="dm-75" ino=45790 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:46.820 29572 29572 W clinfo  : type=1400 audit(0.0:5209178): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/bin/clinfo" dev="dm-75" ino=45790 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:46.824 29572 29572 W clinfo  : type=1400 audit(0.0:5209179): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/lib/libOpenCL.so" dev="dm-75" ino=183847 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:46.873 29572 29572 D colorx  : VulkanExtImpl Init
12-20 00:37:46.875 29572 29572 D colorx  : I can't find colorx layer , let's enumerate colorx layers first.
12-20 00:37:46.877 29572 29572 I AdrenoVK-0: ===== BEGIN DUMP OF OVERRIDDEN SETTINGS =====
12-20 00:37:46.877 29572 29572 I AdrenoVK-0: ===== END DUMP OF OVERRIDDEN SETTINGS =====
12-20 00:37:46.879 29572 29572 D qdgralloc: Fetching IMapper5 from QtiMapper5
12-20 00:37:46.882 29572 29572 I SnapAlloc: Graphics lib is available
12-20 00:37:46.884 29572 29572 I Adreno-UNKNOWN: Using previously loaded IMapper library.
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: QUALCOMM build          : 6b8ca81d17, Ibf13033040
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Build Date              : 10/28/24
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Shader Compiler Version : E031.47.18.10
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Local Branch            : 
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Remote Branch           : refs/tags/AU_LINUX_ANDROID_LA.VENDOR.15.4.0.11.00.00.1088.497
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Remote Branch           : NONE
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Reconstruct Branch      : NOTHING
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Build Config            : S P 18.0.0 AArch64
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Driver Path             : /vendor/lib64/hw/vulkan.adreno.so
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Driver Version          : 0800.13
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: PFP                     : 0x01500062
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: ME                      : 0x01500012
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Application Name    : clvk
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Application Version : 0x00000000
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Engine Name         : clvk
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Engine Version      : 0x00000000
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Api Version         : 0x00403000
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f040f provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba151e0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f4671 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e92c0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ef468 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9d5270 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9deaca provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9b8d50 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9de6e0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e7380 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba14a10 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba14df8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9d4aa1 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba06f50 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ddf10 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9fcb40 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e6bb0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba11360 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e8320 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e96a8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ea260 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f3ea0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9c8f20 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e9a90 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9dfa68 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9d2390 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e9e78 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x37 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e4888 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba1bb58 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f5de0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba06b69 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba0f420 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9fc371 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba12ad0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba2c8e0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba25798 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba38460 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba3ab70 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba07339 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba34db0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ee8b0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba1e268 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba2a5b8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba33a31 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba29dec provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f07f0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9fd310 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9fc759 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba374c0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba009c0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba001f0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba159b0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba228b8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba132a0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba1abb8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba1c710 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba0d4e5 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba07721 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9fafe8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba13a70 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9bd3a1 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba23088 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ff638 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba26350 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba25f68 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba082d8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba26738 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9efc38 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9f1b78 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba24410 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba24be0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba224d0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba0d0f8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba20d60 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba31ed0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba2a9a0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba126e9 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9c77b0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba14240 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba36138 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9ef080 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba341f8 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba35198 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba39018 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba36520 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba04c28 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba3d668 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba3cab0 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba41100 provided to vkGetPhysicalDeviceFeatures2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3b9e0620 provided to VkGetPhysicalDeviceProperties2
12-20 00:37:46.885 29572 29572 I AdrenoVK-0: Unknown struct with type 0x3ba02ce8 provided to VkGetPhysicalDeviceProperties2
12-20 00:37:49.329 26952 26989 D LorieNative: Trying to input keysym 108
12-20 00:37:49.497 26952 26989 D LorieNative: Trying to input keysym 111
12-20 00:37:49.676 26952 26989 D LorieNative: Trying to input keysym 103
12-20 00:37:49.887 26952 26989 D gles-renderer: 12 frames in 5.0 seconds = 2.4 FPS
12-20 00:37:49.914 26952 26989 D LorieNative: Trying to input keysym 99
12-20 00:37:50.070 26952 26989 D LorieNative: Trying to input keysym 97
12-20 00:37:50.262 26952 26989 D LorieNative: Trying to input keysym 116
12-20 00:37:50.608 29618 29618 W bash    : type=1400 audit(0.0:5209204): avc:  granted  { execute } for  name="logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:50.612 29618 29618 W bash    : type=1400 audit(0.0:5209205): avc:  granted  { execute } for  name="logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:50.612 29618 29618 W bash    : type=1400 audit(0.0:5209206): avc:  granted  { execute_no_trans } for  path="/data/data/com.termux/files/usr/bin/logcat" dev="dm-75" ino=349613 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:50.612 29618 29618 W bash    : type=1400 audit(0.0:5209207): avc:  granted  { execute } for  name="dash" dev="dm-75" ino=212212 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux
12-20 00:37:50.612 29618 29618 W logcat  : type=1400 audit(0.0:5209208): avc:  granted  { execute } for  path="/data/data/com.termux/files/usr/bin/dash" dev="dm-75" ino=212212 scontext=u:r:untrusted_app_27:s0:c177,c257,c512,c768 tcontext=u:object_r:app_data_file:s0:c177,c257,c512,c768 tclass=file app=com.termux

@sabamdarif
Copy link

for me now in mali-g67 everything working fine clvk too ( always works ), and for opengl i know it just a compatibility issue between the proprietary driver and this there nothing can be done, but get opengl work with virgl.
So thanks @xMeM

@hansm629
Copy link

@xMeM
In the latest build,
Adreno 740, Adreno 750, and Xclipse 940 are all working well.

However
when resizing windows in Vulkan demos or Zink demos, the following message appears:

../src/src/vulkan/wsi/wsi_common_x11.c:1929: Swapchain status changed to VK_SUBOPTIMAL_KHR

This message might not need to be displayed, and it seems better to suppress it in the pull request.

Additionally, as I mentioned earlier, could you consider adding an option similar to MESA_VK_WSI_DEBUG=nosync that would allow vkmark to measure maximum performance?

@hansm629
Copy link

@xMeM
And when running glmark2 with zink (mesa-24.3.1) on Xclipse 940 GPU,

I am getting the following message after benchmark completion:

../src/src/vulkan/wsi/wsi_common_x11.c:1929: Swapchain status changed to VK_ERROR_SURFACE_LOST_KHR

~$ glmark2
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    zink Vulkan 1.3(Samsung Xclipse 940 (SAMSUNG_PROPRIETARY))
    GL_VERSION:     4.6 (Compatibility Profile) Mesa 24.3.1
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=24 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 715 FrameTime: 1.399 ms
[build] use-vbo=true: FPS: 758 FrameTime: 1.320 ms
[texture] texture-filter=nearest: FPS: 718 FrameTime: 1.394 ms
[texture] texture-filter=linear: FPS: 733 FrameTime: 1.364 ms
[texture] texture-filter=mipmap: FPS: 706 FrameTime: 1.418 ms
[shading] shading=gouraud: FPS: 566 FrameTime: 1.767 ms
[shading] shading=blinn-phong-inf: FPS: 580 FrameTime: 1.724 ms
[shading] shading=phong: FPS: 584 FrameTime: 1.714 ms
[shading] shading=cel: FPS: 569 FrameTime: 1.760 ms
[bump] bump-render=high-poly: FPS: 525 FrameTime: 1.905 ms
[bump] bump-render=normals: FPS: 599 FrameTime: 1.671 ms
[bump] bump-render=height: FPS: 574 FrameTime: 1.744 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 639 FrameTime: 1.567 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 543 FrameTime: 1.844 ms
[pulsar] light=false:quads=5:texture=false: FPS: 552 FrameTime: 1.814 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 423 FrameTime: 2.368 ms
[desktop] effect=shadow:windows=4: FPS: 444 FrameTime: 2.253 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 212 FrameTime: 4.725 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 331 FrameTime: 3.030 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 262 FrameTime: 3.822 ms
[ideas] speed=duration: FPS: 585 FrameTime: 1.711 ms
[jellyfish] <default>: FPS: 543 FrameTime: 1.843 ms
[terrain] <default>: FPS: 238 FrameTime: 4.205 ms
[shadow] <default>: FPS: 397 FrameTime: 2.522 ms
[refract] <default>: FPS: 275 FrameTime: 3.649 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 509 FrameTime: 1.965 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 557 FrameTime: 1.798 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 538 FrameTime: 1.860 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 470 FrameTime: 2.129 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 550 FrameTime: 1.818 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 550 FrameTime: 1.820 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 546 FrameTime: 1.833 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 583 FrameTime: 1.717 ms
=======================================================
                                  glmark2 Score: 525 
=======================================================
../src/src/vulkan/wsi/wsi_common_x11.c:1929: Swapchain status changed to VK_ERROR_SURFACE_LOST_KHR

@hansm629
Copy link

@xMeM
In the latest version, virpipe does not work with OpenGL. (Segmentation fault)
but OpenGL ES works.

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2
Segmentation fault

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2-es2
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    virgl (ANGLE (Samsung Electronics Co. Ltd., Vulkan 1.3.264 ...)
    GL_VERSION:     OpenGL ES 3.2 Mesa 24.3.1
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 119 FrameTime: 8.458 ms
=======================================================
                                  glmark2 Score: 118 
=======================================================

@George-Seven
Copy link

George-Seven commented Dec 27, 2024

I'm getting this error logs with mesa-vulkan-icd-wrapper_24.3.1-4_aarch64.deb -

Enabled instance extensions:
- VK_KHR_surface
- VK_KHR_xlib_surface
- VK_KHR_get_physical_device_properties2
- VK_KHR_external_semaphore_capabilities
- VK_KHR_external_memory_capabilities
Available physical devices:
- Adreno (TM) 750
Selected physical device: Adreno (TM) 750
- Vendor: 5143, Device: 43051401
- Driver Version: 512.744.12
Warning: extension not available: VK_EXT_memory_budget
Enabled device extensions:
- VK_KHR_external_semaphore
- VK_KHR_external_memory
- VK_KHR_external_memory_fd
- VK_KHR_external_semaphore_fd
- VK_EXT_custom_border_color
- VK_EXT_provoking_vertex
VUID-VkMemoryAllocateInfo-pNext-00639(ERROR / SPEC): msgNum: -49292556 - Validation Error: [ VUID-VkMemoryAllocateInfo-pNext-00639 ] Object 0: handle = 0x8b600000008b6, type = VK_OBJECT_TYPE_IMAGE; Object 1: handle = 0x8b700000008b7, type = VK_OBJECT_TYPE_DEVICE_MEMORY; | MessageID = 0xfd0fdaf4 | vkBindImageMemory(): memory (VkDeviceMemory 0x8b700000008b7[]) has VkExportMemoryAllocateInfo::handleTypes with the VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT flag set, which requires dedicated allocation for the image created with format (VK_FORMAT_R8G8B8A8_UNORM), type (VK_IMAGE_TYPE_2D), tiling (VK_IMAGE_TILING_LINEAR), usage (VK_IMAGE_USAGE_SAMPLED_BIT|VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT), flags (VkImageCreateFlags(0)), but the memory is allocated without dedicated allocation support.
The Vulkan spec states: If the pNext chain includes a VkExportMemoryAllocateInfo structure, and any of the handle types specified in VkExportMemoryAllocateInfo::handleTypes require a dedicated allocation, as reported by vkGetPhysicalDeviceImageFormatProperties2 in VkExternalImageFormatProperties::externalMemoryProperties.externalMemoryFeatures, or by vkGetPhysicalDeviceExternalBufferProperties in VkExternalBufferProperties::externalMemoryProperties.externalMemoryFeatures, the pNext chain must include a VkMemoryDedicatedAllocateInfo or VkDedicatedAllocationMemoryAllocateInfoNV structure with either its image or buffer member set to a value other than VK_NULL_HANDLE (https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-VkMemoryAllocateInfo-pNext-00639)
    Objects: 2
        [0] 0x8b600000008b6, type: 10, name: NULL
        [1] 0x8b700000008b7, type: 8, name: NULL

Is it possible to have VK_EXT_memory_budget extension?

@TomJo2000
Copy link
Member

I've compiled Xemu Xbox emulator for Termux and it's working normally but slowly with llvmpipe.

I'm trying to use Vulkan backend.

But it is giving error logs with mesa-vulkan-icd-wrapper_24.3.1-4_aarch64.deb -

https://github.com/George-Seven/Termux-XEMU?tab=readme-ov-file#vulkan-backend-attempts

I would like to point out for the record that it would have been infinitely easier to just throw all that stuff into a build.sh and a couple patches.
Packages don't need to work perfectly from the initial state of the PR, they can be worked on iteratively.
In this current state we can not vouch for or condone this xemu package.

@George-Seven
Copy link

I would like to point out for the record that it would have been infinitely easier to just throw all that stuff into a build.sh and a couple patches. Packages don't need to work perfectly from the initial state of the PR, they can be worked on iteratively. In this current state we can not vouch for or condone this xemu package.

You're right, I didn't think of implementing Termux package build system. Meanwhile, I've removed irrelevant details from the comment to reflect only errors related to the driver.

@hansm629
Copy link

hansm629 commented Jan 4, 2025

@xMeM
Hello Sir
Could you please tell me when the next pull request build will be?
It seems like most of the issues are minor, so I think it will be perfect once they are all resolved.
:)

@sabamdarif
Copy link

i think it already perfect, i am just waiting when it will be merged, also most of the errors are related to opengl where this wrapper for vulkan ?

@TomJo2000
Copy link
Member

i think it already perfect, i am just waiting when it will be merged, also most of the errors are related to opengl where this wrapper for vulkan ?

If and when a PR is merged is up to the author and the maintainers that are handling a given PR.
If you don't want to wait for that you can always run the CI artifacts of the package(s).

@hansm629
Copy link

hansm629 commented Jan 4, 2025

@sabamdarif
There is still an issue. It does not work with virpipe and in some cases it outputs an error message.

@sabamdarif
Copy link

sabamdarif commented Jan 4, 2025

If and when a PR is merged is up to the author and the maintainers that are handling a given PR. If you don't want to wait for that you can always run the CI artifacts of the package(s).

I know, 😆 I think you understand it wrong, I say I am waiting it to get merged, it's really good than what termux currently have, if it get merged then I don't have to check for update in the pr section, that's what I mean

@hansm629
Copy link

hansm629 commented Jan 6, 2025

@xMeM
Here is a list of currently confirmed issues.

1. When resizing vulkan demo & zink demo, the following message is displayed

../src/src/vulkan/wsi/wsi_common_x11.c:1929: Swapchain status changed to VK_SUBOPTIMAL_KHR

2. When the glmark2 benchmark is completed, the following message is displayed

../src/src/vulkan/wsi/wsi_common_x11.c:1929: Swapchain status changed to VK_ERROR_SURFACE_LOST_KHR

3. Cannot be used with LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe (but OpenGL ES works ex: glmark2-es2)

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2
Segmentation fault

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2-es2
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    virgl (ANGLE (Samsung Electronics Co. Ltd., Vulkan 1.3.264 ...)
    GL_VERSION:     OpenGL ES 3.2 Mesa 24.3.1
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 119 FrameTime: 8.458 ms
=======================================================
                                  glmark2 Score: 118 
=======================================================

4. Is it possible to add an environment variable similar to MESA_VK_WSI_DEBUG=nosync?

@hansm629
Copy link

hansm629 commented Jan 7, 2025

@xMeM
Thank you!
Almost all issues are fixed!

But it still seems that virpipe(OpenGL) does not work at the same time.

XDG_RUNTIME_DIR=${TMPDIR} termux-x11 :1.0 & > /dev/null 2>&1
sleep 1

am start --user 0 -n com.termux.x11/com.termux.x11.MainActivity > /dev/null 2>&1
sleep 1

virgl_test_server_android --angle-vulkan & > /dev/null 2>&1

env DISPLAY=:1.0 MESA_LOADER_DRIVER_OVERRIDE=zink GALLIUM_DRIVER=zink  dbus-launch --exit-with-session xfce4-session & > /dev/null 2>&1

After booting XFCE4 with zink as above

When running virpipe with the command below, OpenGL does not work and only OpenGL ES works.

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2
Segmentation fault

~$ LIBGL_KOPPER_DISABLE=1 GALLIUM_DRIVER=virpipe glmark2-es2
=======================================================
    glmark2 2023.01
=======================================================
    OpenGL Information
    GL_VENDOR:      Mesa
    GL_RENDERER:    virgl (ANGLE (Samsung Electronics Co. Ltd., Vulkan 1.3.264 ...)
    GL_VERSION:     OpenGL ES 3.1 Mesa 24.3.1
    Surface Config: buf=32 r=8 g=8 b=8 a=8 depth=32 stencil=0 samples=0
    Surface Size:   800x600 windowed
=======================================================
[build] use-vbo=false: FPS: 141 FrameTime: 7.135 ms
=======================================================
                                  glmark2 Score: 140 

@sabamdarif
Copy link

sabamdarif commented Jan 7, 2025

@xMeM, sorry for bothering you but the latest driver doesn't working on mali g76, working fine before

vkmark
=======================================================
    vkmark 2017.08
=======================================================
    Vendor ID:      0x13B5
    Device ID:      0x72110000
    Device Name:    Mali-G76 MC4
    Driver Version: 109051904
    Device UUID:    ba510acd8d9038a7a29282d5780482e5
=======================================================
[vertex] device-local=true:[1]    16272 segmentation fault  vkmark
Log
01-07 19:42:47.483 21598 21598 W logcat  : type=1400 audit(0.0:26364): avc: granted { execute } for path="/data/data/com.termux/files/usr/bin/dash" dev="dm-32" ino=655548 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:42:47.487 21598 21598 W logcat  : type=1400 audit(0.0:26365): avc: denied { search } for name="tests" dev="dm-32" ino=122 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:shell_test_data_file:s0 tclass=dir permissive=0 app=com.termux
01-07 19:42:47.487 21598 21598 W logcat  : type=1400 audit(0.0:26366): avc: denied { search } for name="tests" dev="dm-32" ino=122 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:shell_test_data_file:s0 tclass=dir permissive=0 app=com.termux
01-07 19:42:47.487 21598 21598 W logcat  : type=1400 audit(0.0:26367): avc: denied { search } for name="tests" dev="dm-32" ino=122 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:shell_test_data_file:s0 tclass=dir permissive=0 app=com.termux
01-07 19:42:47.487 21598 21598 W logcat  : type=1400 audit(0.0:26368): avc: denied { search } for name="tests" dev="dm-32" ino=122 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:shell_test_data_file:s0 tclass=dir permissive=0 app=com.termux
01-07 19:43:07.602 23186 23208 W Parcel  : Expecting binder but got null!
01-07 19:43:10.067 25693 25693 W zsh     : type=1400 audit(0.0:26375): avc: granted { execute } for name="vkmark" dev="dm-32" ino=843871 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:43:10.067 22306 22306 W zsh     : type=1400 audit(0.0:26376): avc: granted { execute } for name="vkmark" dev="dm-32" ino=843871 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:43:10.067 22306 22306 W zsh     : type=1400 audit(0.0:26377): avc: granted { execute } for name="vkmark" dev="dm-32" ino=843871 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:43:10.067 22306 22306 W zsh     : type=1400 audit(0.0:26378): avc: granted { execute_no_trans } for path="/data/data/com.termux/files/usr/bin/vkmark" dev="dm-32" ino=843871 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:43:10.067 22306 22306 W vkmark  : type=1400 audit(0.0:26379): avc: granted { execute } for path="/data/data/com.termux/files/usr/bin/vkmark" dev="dm-32" ino=843871 scontext=u:r:untrusted_app_27:s0:c6,c258,c512,c768 tcontext=u:object_r:app_data_file:s0:c6,c258,c512,c768 tclass=file app=com.termux
01-07 19:43:10.092 27437 27480 I GED     : [GT]_get_procNameprocess pid(27437)
01-07 19:43:10.092 27437 27480 I GED     : [GT]_getprocess name(/system/bin/app_process)
01-07 19:43:10.093 27437 27480 I app_process: [GT] ret(1) gt_status(00000000) aniso_debug_level(0) gt_aniso_max_level(16) ani so mask(00000001) tri mask(00000002)
01-07 19:43:10.096 27437 27480 I GED     : ged_boost_gpu_freq, level 100, eOrigin 2, final_idx 42, oppidx_max 42, oppidx_min 0
01-07 19:43:10.100 27437 27499 D gles-renderer: renderer: buffer changed 0xb400006f705b2b70 0 0
01-07 19:43:10.162 22306 22306 D PQCommon: [PQ_PROT] [PQCust] libpq_cust_base.so OK, libpq_cust.so absent
01-07 19:43:10.191 22306 22306 I Gralloc4: Adding additional valid usage bits: 0x0
01-07 19:43:10.192 22306 22306 E ion     : ioctl c0044901 failed with code -1: Invalid argument
01-07 19:43:10.230 22306 22306 F libc    : Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 22306 (vkmark), pid 22306 (vkmark)
01-07 19:43:10.249 22323 22323 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
01-07 19:43:10.251 22323 22323 I crash_dump64: performing dump of process 22306 (target tid = 22306)
01-07 19:43:10.283 22323 22323 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
01-07 19:43:10.283 22323 22323 F DEBUG   : Build fingerprint: 'realme/RMX3085/RMX3085L1:12/SP1A.210812.016/R.GDPR.11887c9-1:user/release-keys'
01-07 19:43:10.283 22323 22323 F DEBUG   : Revision: '0'
01-07 19:43:10.283 22323 22323 F DEBUG   : ABI: 'arm64'
01-07 19:43:10.283 22323 22323 F DEBUG   : Timestamp: 2025-01-07 19:43:10.253407427+0530
01-07 19:43:10.283 22323 22323 F DEBUG   : Process uptime: 1s
01-07 19:43:10.283 22323 22323 F DEBUG   : Cmdline: vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   : pid: 22306, tid: 22306, name: vkmark  >>> vkmark <<<
01-07 19:43:10.283 22323 22323 F DEBUG   : uid: 10518
01-07 19:43:10.283 22323 22323 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0000000000000000
01-07 19:43:10.283 22323 22323 F DEBUG   : Cause: null pointer dereference
01-07 19:43:10.283 22323 22323 F DEBUG   :     x0  0000000000000001  x1  0000000000000001  x2  0000007fc6b67480  x3  0000000000000000
01-07 19:43:10.283 22323 22323 F DEBUG   :     x4  0000007fc6b675a8  x5  0000007fc6b674c8  x6  0000007fc6b674d0  x7  0000007fc6b67234
01-07 19:43:10.283 22323 22323 F DEBUG   :     x8  0000000001000000  x9  00000074983d8828  x10 0000000000008000  x11 0000000000000001
01-07 19:43:10.283 22323 22323 F DEBUG   :     x12 000000002fc1bc18  x13 0000000000000008  x14 00000000ffffffff  x15 0000000000000005
01-07 19:43:10.283 22323 22323 F DEBUG   :     x16 00000074983d7728  x17 000000772fded178  x18 0000007734db4000  x19 0000000000000000
01-07 19:43:10.283 22323 22323 F DEBUG   :     x20 0000007fc6b67480  x21 0000000000000001  x22 0000000000000000  x23 0000007fc6b67480
01-07 19:43:10.283 22323 22323 F DEBUG   :     x24 b40000752fc1bc10  x25 0000007fc6b67480  x26 0000007fc6b67560  x27 0000000000000001
01-07 19:43:10.283 22323 22323 F DEBUG   :     x28 0000000000000048  x29 0000007fc6b67450
01-07 19:43:10.283 22323 22323 F DEBUG   :     lr  0000007497e65608  sp  0000007fc6b67450  pc  0000007497e6560c  pst 0000000060001000
01-07 19:43:10.283 22323 22323 F DEBUG   : backtrace:
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE: Function names and BuildId information is missing for some frames due
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE: to unreadable libraries. For unwinds of apps, only shared libraries
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE: found under the lib/ directory are readable.
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE: On this device, run setenforce 0 to make the libraries readable.
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE: Unreadable libraries:
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :   NOTE:   /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
01-07 19:43:10.283 22323 22323 F DEBUG   :       #00 pc 000000000001e60c  /system/lib64/libvulkan.so (vulkan::driver::QueueSubmit(VkQueue_T*, unsigned int, VkSubmitInfo const*, VkFence_T*)+40) (BuildId: 0e0ef8537782565fd16b7f0ce6ef0046)
01-07 19:43:10.283 22323 22323 F DEBUG   :       #01 pc 00000000001a5dfc  /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
01-07 19:43:10.283 22323 22323 F DEBUG   :       #02 pc 0000000000052aa0  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #03 pc 00000000000514c0  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #04 pc 000000000004856c  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #05 pc 00000000000783b0  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #06 pc 000000000007815c  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #07 pc 000000000007edc0  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #08 pc 0000000000042a64  /data/data/com.termux/files/usr/bin/vkmark
01-07 19:43:10.283 22323 22323 F DEBUG   :       #09 pc 000000000004b13c  /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+96) (BuildId: 086e70f1671d5268d060cdf12f12a59a)
01-07 19:43:10.312 27437 27480 I GED     : [GT]_get_procNameprocess pid(27437)
01-07 19:43:10.313 27437 27480 I GED     : [GT]_getprocess name(/system/bin/app_process)
01-07 19:43:10.313 27437 27480 I app_process: [GT] ret(1) gt_status(00000000) aniso_debug_level(0) gt_aniso_max_level(16) ani so mask(00000001) tri mask(00000002)
01-07 19:43:10.314 27437 27480 I GED     : ged_boost_gpu_freq, level 100, eOrigin 2, final_idx 42, oppidx_max 42, oppidx_min 0
01-07 19:43:10.321 27437 27499 D gles-renderer: renderer: buffer changed 0xb400006f705b4650 0 0
01-07 19:43:11.448 23186 23208 W Parcel  : Expecting binder but got null!
Log
vkmark                                        
INFO:              Vulkan Loader Version 1.4.304
INFO:              Loader is using non-secure environment variable lookup for HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_HOME
INFO:              No valid vk_loader_settings.json file found, no loader settings will be active
INFO:              Loader is using non-secure environment variable lookup for VK_LOADER_LAYERS_ENABLE
INFO:              Loader is using non-secure environment variable lookup for VK_LOADER_LAYERS_DISABLE
INFO:              Loader is using non-secure environment variable lookup for VK_LOADER_LAYERS_ALLOW
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_DIRS
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_DIRS
INFO:              Loader is using non-secure environment variable lookup for HOME
INFO:              Loader is using non-secure environment variable lookup for VK_IMPLICIT_LAYER_PATH
INFO:              Loader is using non-secure environment variable lookup for VK_ADD_IMPLICIT_LAYER_PATH
LAYER:             Searching for implicit layer manifest files
LAYER:                In following locations:
LAYER:                   /data/data/com.termux/files/home/.config/vulkan/implicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/etc/xdg/vulkan/implicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/etc/vulkan/implicit_layer.d
LAYER:                   /data/data/com.termux/files/home/.local/share/vulkan/implicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/share/vulkan/implicit_layer.d
LAYER:                Found no files
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_DIRS
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_DIRS
INFO:              Loader is using non-secure environment variable lookup for HOME
INFO:              Loader is using non-secure environment variable lookup for VK_LAYER_PATH
INFO:              Loader is using non-secure environment variable lookup for VK_ADD_LAYER_PATH
LAYER:             Searching for explicit layer manifest files
LAYER:                In following locations:
LAYER:                   /data/data/com.termux/files/home/.config/vulkan/explicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/etc/xdg/vulkan/explicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/etc/vulkan/explicit_layer.d
LAYER:                   /data/data/com.termux/files/home/.local/share/vulkan/explicit_layer.d
LAYER:                   /data/data/com.termux/files/usr/share/vulkan/explicit_layer.d
LAYER:                Found no files
INFO:              Loader is using non-secure environment variable lookup for VK_LOADER_DRIVERS_SELECT
INFO:              Loader is using non-secure environment variable lookup for VK_LOADER_DRIVERS_DISABLE
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_CONFIG_DIRS
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_HOME
INFO:              Loader is using non-secure environment variable lookup for XDG_DATA_DIRS
INFO:              Loader is using non-secure environment variable lookup for HOME
INFO:              Loader is using non-secure environment variable lookup for VK_DRIVER_FILES
INFO:              Loader is using non-secure environment variable lookup for VK_ICD_FILENAMES
INFO:              Loader is using non-secure environment variable lookup for VK_ADD_DRIVER_FILES
DRIVER:            Searching for driver manifest files
DRIVER:               In following locations:
DRIVER:                  /data/data/com.termux/files/home/.config/vulkan/icd.d
DRIVER:                  /data/data/com.termux/files/usr/etc/xdg/vulkan/icd.d
DRIVER:                  /data/data/com.termux/files/usr/etc/vulkan/icd.d
DRIVER:                  /data/data/com.termux/files/home/.local/share/vulkan/icd.d
DRIVER:                  /data/data/com.termux/files/usr/share/vulkan/icd.d
DRIVER:               Found the following files:
DRIVER:                  /data/data/com.termux/files/usr/share/vulkan/icd.d/wrapper_icd.aarch64.json
DRIVER:            Found ICD manifest file /data/data/com.termux/files/usr/share/vulkan/icd.d/wrapper_icd.aarch64.json, version 1.0.0
DEBUG | DRIVER:    Searching for ICD drivers named /data/data/com.termux/files/usr/lib/libvulkan_wrapper.so
WARNING | LAYER:   env var 'VK_INSTANCE_LAYERS' defined and adding layers "VK_LAYER_KHRONOS_validation"
ERROR | LAYER:     Layer "VK_LAYER_KHRONOS_validation" was not found but was requested by env var VK_INSTANCE_LAYERS!
WARNING | LAYER:   env var 'VK_INSTANCE_LAYERS' defined and adding layers "VK_LAYER_KHRONOS_validation"
ERROR | LAYER:     Layer "VK_LAYER_KHRONOS_validation" was not found but was requested by env var VK_INSTANCE_LAYERS!
LAYER:             vkCreateInstance layer callstack setup to:
LAYER:                <Application>
LAYER:                  ||
LAYER:                <Loader>
LAYER:                  ||
LAYER:                <Drivers>
INFO | DRIVER:     linux_read_sorted_physical_devices:
INFO | DRIVER:          Original order:
INFO | DRIVER:                [0] Mali-G76 MC4
INFO | DRIVER:          Sorted order:
INFO | DRIVER:                [0] Mali-G76 MC4
INFO | DRIVER:     linux_read_sorted_physical_devices:
INFO | DRIVER:          Original order:
INFO | DRIVER:                [0] Mali-G76 MC4
INFO | DRIVER:          Sorted order:
INFO | DRIVER:                [0] Mali-G76 MC4
DEBUG | DRIVER:    Copying old device 0 into new device 0
DRIVER | LAYER:    vkCreateDevice layer callstack setup to:
DRIVER | LAYER:       <Application>
DRIVER | LAYER:         ||
DRIVER | LAYER:       <Loader>
DRIVER | LAYER:         ||
DRIVER | LAYER:       <Device>
DRIVER | LAYER:           Using "Mali-G76 MC4" with driver: "/data/data/com.termux/files/usr/lib/libvulkan_wrapper.so"
Unsupported MESA_VK_WSI_PRESENT_MODE value!
=======================================================
    vkmark 2017.08
=======================================================
    Vendor ID:      0x13B5
    Device ID:      0x72110000
    Device Name:    Mali-G76 MC4
    Driver Version: 109051904
    Device UUID:    ba510acd8d9038a7a29282d5780482e5
=======================================================
[vertex] device-local=true:[2]    4686 segmentation fault  vkmark

@sabamdarif
Copy link

sabamdarif commented Jan 7, 2025

by the way @hansm629 virpipe(OpenGL) working for me, both glmark2 and glmark2-es2 and it was working before too

@hansm629
Copy link

hansm629 commented Jan 7, 2025

@sabamdarif
When booting XFCE4 with the MESA_LOADER_DRIVER_OVERRIDE=zink environment variable, virpipe(OpenGL) does not work.

@sabamdarif
Copy link

@sabamdarif When booting XFCE4 with the MESA_LOADER_DRIVER_OVERRIDE=zink environment variable, virpipe(OpenGL) does not work.

zink never work for me because of compatibility issue between proprietary driver so i will never know

@hansm629
Copy link

hansm629 commented Jan 7, 2025

@sabamdarif
Xclipse GPU series is almost the only Android GPU that works at a level where zink is available.

  • glmark2 & glmark2-es2 benchmarks can be completed
  • No GUI bugs when using XFCE4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.