OSDN Git Service

android: fix amdgpu DRI_PATH as /vendor/{lib64,lib}/dri
authorMauro Rossi <issor.oruam@gmail.com>
Sun, 11 Nov 2018 18:37:48 +0000 (19:37 +0100)
committerMauro Rossi <issor.oruam@gmail.com>
Sat, 25 Jan 2020 20:35:41 +0000 (21:35 +0100)
The correct DRI_PATH is /vendor/{lib64,lib}/dri based on 64,32 bit target
Linux distributions case is omitted to concentrate on android-x86 builds

Fixes following SIGABRT for 64 bit builds:

E [minigbm:gralloc0.cc(159)] Failed to initialize driver.
F Gralloc0Allocator: Failed to open gralloc0 device
F libc    : Fatal signal 6 (SIGABRT), code -6 in tid 2654 (surfaceflinger)
...
F DEBUG   : pid: 2654, tid: 2654, name: surfaceflinger  >>> /system/bin/surfaceflinger <<<
F DEBUG   : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
F DEBUG   : Abort message: 'failed to open gralloc0 device: No such device'

amdgpu.c

index ee556bc..d44d6d9 100644 (file)
--- a/amdgpu.c
+++ b/amdgpu.c
 #include "helpers.h"
 #include "util.h"
 
-#ifdef __ANDROID__
-#define DRI_PATH "/vendor/lib/dri/radeonsi_dri.so"
+#ifdef __LP64__
+#define DRI_PATH "/vendor/lib64/dri/radeonsi_dri.so"
 #else
-#define DRI_PATH "/usr/lib64/dri/radeonsi_dri.so"
+#define DRI_PATH "/vendor/lib/dri/radeonsi_dri.so"
 #endif
 
 #define TILE_TYPE_LINEAR 0