Closed Sunderland93 closed 4 years ago
Not sure why this is happening. I suppose you are running it with flatpak right? Can you try running it in debug mode? Just append VERBOSITY=DEBUG before starting adriconf.
@jlHertel
I suppose you are running it with flatpak right?
Yes
Can you try running it in debug mode?
DEBUG: Creating the GTK application object
INFO: adriconf running on X11
DEBUG: Checking if the system is supported
DEBUG: Current language code is ru
DEBUG: Parsing XML <?xml version="1.0" standalone="yes"?><!DOCTYPE driinfo [ <!ELEMENT driinfo (section*)> <!ELEMENT section (description+, option+)> <!ELEMENT description (enum*)> <!ATTLIST description lang CDATA #REQUIRED text CDATA #REQUIRED> <!ELEMENT option (description+)> <!ATTLIST option name CDATA #REQUIRED type (bool|enum|int|float) #REQUIRED default CDATA #REQUIRED valid CDATA #IMPLIED> <!ELEMENT enum EMPTY> <!ATTLIST enum value CDATA #REQUIRED text CDATA #REQUIRED>]><driinfo>
<section>
<description lang="en" text="Performance"/>
<option name="mesa_glthread" type="bool" default="false">
<description lang="en" text="Enable offloading GL driver work to a separate thread"/>
</option>
<option name="mesa_no_error" type="bool" default="false">
<description lang="en" text="Disable GL driver error checking"/>
</option>
<option name="glx_disable_ext_buffer_age" type="bool" default="false">
<description lang="en" text="Disable the GLX_EXT_buffer_age extension"/>
</option>
<option name="glx_disable_oml_sync_control" type="bool" default="false">
<description lang="en" text="Disable the GLX_OML_sync_control extension"/>
</option>
<option name="glx_disable_sgi_video_sync" type="bool" default="false">
<description lang="en" text="Disable the GLX_SGI_video_sync extension"/>
</option>
<option name="adaptive_sync" type="bool" default="true">
<description lang="en" text="Adapt the monitor sync to the application performance (when possible)"/>
</option>
<option name="radeonsi_enable_sisched" type="bool" default="false">
<description lang="en" text="Use the LLVM sisched option for shader compiles"/>
</option>
<option name="radeonsi_assume_no_z_fights" type="bool" default="false">
<description lang="en" text="Assume no Z fights (enables aggressive out-of-order rasterization to improve performance; may cause rendering errors)"/>
</option>
<option name="radeonsi_commutative_blend_add" type="bool" default="false">
<description lang="en" text="Commutative additive blending optimizations (may cause rendering errors)"/>
</option>
<option name="radeonsi_zerovram" type="bool" default="false">
<description lang="en" text="Zero all vram allocations"/>
</option>
</section>
<section>
<description lang="en" text="Image Quality"/>
<option name="pp_celshade" type="enum" default="0" valid="0:1">
<description lang="en" text="A post-processing filter to cel-shade the output"/>
</option>
<option name="pp_nored" type="enum" default="0" valid="0:1">
<description lang="en" text="A post-processing filter to remove the red channel"/>
</option>
<option name="pp_nogreen" type="enum" default="0" valid="0:1">
<description lang="en" text="A post-processing filter to remove the green channel"/>
</option>
<option name="pp_noblue" type="enum" default="0" valid="0:1">
<description lang="en" text="A post-processing filter to remove the blue channel"/>
</option>
<option name="pp_jimenezmlaa" type="int" default="0" valid="0:32">
<description lang="en" text="Morphological anti-aliasing based on Jimenez' MLAA. 0 to disable, 8 for default quality"/>
</option>
<option name="pp_jimenezmlaa_color" type="int" default="0" valid="0:32">
<description lang="en" text="Morphological anti-aliasing based on Jimenez' MLAA. 0 to disable, 8 for default quality. Color version, usable with 2d GL apps"/>
</option>
</section>
<section>
<description lang="en" text="Debugging"/>
<option name="force_glsl_extensions_warn" type="bool" default="false">
<description lang="en" text="Force GLSL extension default behavior to 'warn'"/>
</option>
<option name="disable_glsl_line_continuations" type="bool" default="false">
<description lang="en" text="Disable backslash-based line continuations in GLSL source"/>
</option>
<option name="disable_blend_func_extended" type="bool" default="false">
<description lang="en" text="Disable dual source blending"/>
</option>
<option name="disable_arb_gpu_shader5" type="bool" default="false">
<description lang="en" text="Disable GL_ARB_gpu_shader5"/>
</option>
<option name="force_glsl_version" type="int" default="0" valid="0:999">
<description lang="en" text="Force a default GLSL version for shaders that lack an explicit #version line"/>
</option>
<option name="allow_glsl_extension_directive_midshader" type="bool" default="false">
<description lang="en" text="Allow GLSL #extension directives in the middle of shaders"/>
</option>
<option name="allow_glsl_builtin_const_expression" type="bool" default="false">
<description lang="en" text="Allow builtins as part of constant expressions"/>
</option>
<option name="allow_glsl_relaxed_es" type="bool" default="false">
<description lang="en" text="Allow some relaxation of GLSL ES shader restrictions"/>
</option>
<option name="allow_glsl_builtin_variable_redeclaration" type="bool" default="false">
<description lang="en" text="Allow GLSL built-in variables to be redeclared verbatim"/>
</option>
<option name="allow_glsl_cross_stage_interpolation_mismatch" type="bool" default="false">
<description lang="en" text="Allow interpolation qualifier mismatch across shader stages"/>
</option>
<option name="allow_higher_compat_version" type="bool" default="false">
<description lang="en" text="Allow a higher compat profile (version 3.1+) for apps that request it"/>
</option>
<option name="force_glsl_abs_sqrt" type="bool" default="false">
<description lang="en" text="Force computing the absolute value for sqrt() and inversesqrt()"/>
</option>
<option name="glsl_correct_derivatives_after_discard" type="bool" default="false">
<description lang="en" text="Implicit and explicit derivatives after a discard behave as if the discard didn't happen"/>
</option>
<option name="allow_glsl_layout_qualifier_on_function_parameters" type="bool" default="false">
<description lang="en" text="Allow layout qualifiers on function parameters."/>
</option>
<option name="force_compat_profile" type="bool" default="false">
<description lang="en" text="Force an OpenGL compatibility context"/>
</option>
<option name="force_gl_vendor" type="string" default="">
<description lang="en" text="Allow GPU vendor to be overridden."/>
</option>
<option name="radeonsi_clear_db_cache_before_clear" type="bool" default="false">
<description lang="en" text="Clear DB cache before fast depth clear"/>
</option>
<option name="radeonsi_enable_nir" type="bool" default="false">
<description lang="en" text="Enable NIR"/>
</option>
<option name="radeonsi_aux_debug" type="bool" default="false">
<description lang="en" text="Generate ddebug_dumps for the auxiliary context"/>
</option>
<option name="radeonsi_sync_compile" type="bool" default="false">
<description lang="en" text="Always compile synchronously (will cause stalls)"/>
</option>
<option name="radeonsi_dump_shader_binary" type="bool" default="false">
<description lang="en" text="Dump shader binary as part of ddebug_dumps"/>
</option>
<option name="radeonsi_debug_disassembly" type="bool" default="false">
<description lang="en" text="Report shader disassembly as part of driver debug messages (for shader db)"/>
</option>
<option name="radeonsi_halt_shaders" type="bool" default="false">
<description lang="en" text="Halt shaders at the start (will hang)"/>
</option>
<option name="radeonsi_vs_fetch_always_opencode" type="bool" default="false">
<description lang="en" text="Always open code vertex fetches (less efficient, purely for testing)"/>
</option>
<option name="radeonsi_prim_restart_tri_strips_only" type="bool" default="false">
<description lang="en" text="Only enable primitive restart for triangle strips"/>
</option>
</section>
<section>
<description lang="en" text="Miscellaneous"/>
<option name="always_have_depth_buffer" type="bool" default="false">
<description lang="en" text="Create all visuals with a depth buffer"/>
</option>
<option name="glsl_zero_init" type="bool" default="false">
<description lang="en" text="Force uninitialized variables to default to zero"/>
</option>
<option name="allow_rgb10_configs" type="bool" default="true">
<description lang="en" text="Allow exposure of visuals and fbconfigs with rgb10a2 formats"/>
</option>
</section>
</driinfo>
DEBUG: Reading system-wide XML
DEBUG: System-wide XML path: /var/run/host/usr/share/drirc.d/
DEBUG: Found configuration on path: /var/run/host/usr/share/drirc.d/00-mesa-defaults.conf
DEBUG: Parsing device for XML: <!--
============================================
Application bugs worked around in this file:
============================================
* Unigine Heaven 3.0 and older contain too many bugs and can't be supported
by drivers that want to be compliant.
* Various Unigine products don't use the #version and #extension GLSL
directives, meaning they only get GLSL 1.10 and no extensions for their
shaders.
Enabling all extensions for Unigine fixes most issues, but the GLSL version
is still 1.10.
* If ARB_sample_shading is supported, Unigine Heaven 4.0 and Valley 1.0 uses
an #extension directive in the middle of its shaders, which is illegal
in GLSL.
* Dying Light and Dead Island Definitive Edition redeclare vertex shader
built-ins (specifically gl_VertexID), which causes the vertex shaders to fail
to compile.
TODO: document the other workarounds.
-->
<driconf>
<!-- Please always enable app-specific workarounds for all drivers and
screens. -->
<device>
<application name="Unigine Sanctuary" executable="Sanctuary">
<option name="force_glsl_extensions_warn" value="true" />
<option name="disable_blend_func_extended" value="true" />
</application>
<application name="Unigine Tropics" executable="Tropics">
<option name="force_glsl_extensions_warn" value="true" />
<option name="disable_blend_func_extended" value="true" />
</application>
<application name="Unigine Heaven (32-bit)" executable="heaven_x86">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Heaven (64-bit)" executable="heaven_x64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 4.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Valley (32-bit)" executable="valley_x86">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine Valley (64-bit)" executable="valley_x64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- remove dual_color_blend_by_location if 1.1 ever comes out -->
<option name="dual_color_blend_by_location" value="true" />
</application>
<application name="Unigine OilRush (32-bit)" executable="OilRush_x86">
<option name="disable_blend_func_extended" value="true" />
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Unigine OilRush (64-bit)" executable="OilRush_x64">
<option name="disable_blend_func_extended" value="true" />
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Savage 2" executable="savage2.bin">
<option name="disable_glsl_line_continuations" value="true" />
</application>
<application name="Topogun (32-bit)" executable="topogun32">
<option name="always_have_depth_buffer" value="true" />
</application>
<application name="Topogun (64-bit)" executable="topogun64">
<option name="always_have_depth_buffer" value="true" />
</application>
<application name="Dead Island (incl. Definitive Edition)" executable="DeadIslandGame">
<option name="allow_glsl_extension_directive_midshader" value="true" />
<!-- For the Definitive Edition which shares the same executable name -->
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Dead Island Riptide Definitive Edition" executable="DeadIslandRiptideGame">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Dying Light" executable="DyingLightGame">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="RAGE (64-bit)" executable="Rage64.exe">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="RAGE (32-bit)" executable="Rage.exe">
<option name="allow_glsl_builtin_variable_redeclaration" value="true" />
</application>
<application name="Second Life" executable="do-not-directly-run-secondlife-bin">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Warsow (32-bit)" executable="warsow.i386">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Warsow (64-bit)" executable="warsow.x86_64">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Rust" executable="rust">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Divinity: Original Sin Enhanced Edition" executable="EoCApp">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Metro 2033 Redux / Metro Last Night Redux" executable="metro">
<option name="allow_glsl_extension_directive_midshader" value="true" />
</application>
<application name="Worms W.M.D" executable="Worms W.M.Dx64">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="Crookz - The Big Heist" executable="Crookz">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="Tropico 5" executable="Tropico5">
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="The Culling" executable="Victory">
<option name="force_glsl_version" value="440" />
</application>
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
<option name="force_glsl_abs_sqrt" value="true" />
</application>
<application name="Spec Ops: The Line (64-bit)" executable="specops">
<option name="force_glsl_abs_sqrt" value="true" />
</application>
<application name="Kerbal Space Program (32-bit)" executable="KSP.x86">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Kerbal Space Program (64-bit)" executable="KSP.x86_64">
<option name="glsl_zero_init" value="true"/>
</application>
<application name="Rocket League" executable="RocketLeague">
<option name="glsl_correct_derivatives_after_discard" value="true"/>
</application>
<application name="The Witcher 2" executable="witcher2">
<option name="glsl_correct_derivatives_after_discard" value="true"/>
</application>
<application name="Unreal 4 Editor" executable="UE4Editor">
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
</application>
<application name="Observer" executable="TheObserver-Linux-Shipping">
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
</application>
<application name="Steamroll" executable="Steamroll-Linux-Shipping">
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
</application>
<application name="Refunct" executable="Refunct-Linux-Shipping">
<option name="allow_glsl_cross_stage_interpolation_mismatch" value="true"/>
</application>
<application name="Google Earth VR" executable="Earth.exe">
<option name="allow_glsl_builtin_const_expression" value="true"/>
<option name="allow_glsl_relaxed_es" value="true"/>
</application>
<application name="No Mans Sky" executable="NMS.exe">
<option name="force_glsl_extensions_warn" value="true" />
<option name="allow_glsl_layout_qualifier_on_function_parameters" value="true" />
</application>
<application name="Wolfenstein The Old Blood" executable="WolfOldBlood_x64.exe">
<option name="force_compat_profile" value="true" />
</application>
<application name="ARMA 3" executable="arma3.x86_64">
<option name="glsl_correct_derivatives_after_discard" value="true"/>
</application>
<!-- The GL thread whitelist is below, workarounds are above.
Keep it that way. -->
<application name="Alien Isolation" executable="AlienIsolation">
<option name="mesa_glthread" value="true"/>
</application>
<application name="BioShock Infinite" executable="bioshock.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Borderlands 2" executable="Borderlands2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Civilization 5" executable="Civ5XP">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Civilization 6" executable="Civ6">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Civilization 6" executable="Civ6Sub">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Dreamfall Chapters" executable="Dreamfall Chapters">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Hitman" executable="HitmanPro">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Renowned Explorers: International Society" executable="abbeycore_steam">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row 2" executable="saintsrow2.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row: The Third" executable="SaintsRow3.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row IV" executable="SaintsRow4.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Saints Row: Gat out of Hell" executable="SaintsRow4GooH.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Sid Meier's: Civilization Beyond Earth" executable="CivBE">
<option name="mesa_glthread" value="true"/>
</application>
<application name="The Witcher 2" executable="witcher2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="American Truck Simulator" executable="amtrucks">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Euro Truck Simulator 2" executable="eurotrucks2">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Overlord" executable="overlord.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Overlord 2" executable="overlord2.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Oil Rush" executable="OilRush_x86">
<option name="mesa_glthread" value="true"/>
</application>
<application name="War Thunder" executable="aces">
<option name="mesa_glthread" value="true"/>
</application>
<application name="War Thunder (Wine)" executable="aces.exe">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Outlast" executable="OLGame.x86_64">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Spec Ops: The Line (32-bit)" executable="specops.i386">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Spec Ops: The Line (64-bit)" executable="specops">
<option name="mesa_glthread" value="true"/>
</application>
<application name="Mount and Blade Warband" executable="mb_warband_linux">
<option name="mesa_glthread" value="true"/>
</application>
<!-- around 18% performance increase in min and avg fps, max fps capped at 60fps. -->
<application name="Medieval II: Total War" executable="Medieval2">
<option name="mesa_glthread" value="true"/>
</application>
<!-- min fps ~21 ===> ~27 while standing still in game, also higher gpu load. -->
<application name="Carnivores: Dinosaur Hunter Reborn (wine)" executable="Carnivores-master.exe">
<option name="mesa_glthread" value="true"/>
</application>
<!-- around 30% increase in avg fps -->
<application name="Far Cry 2 (wine)" executable="farcry2.exe">
<option name="mesa_glthread" value="true"/>
</application>
</device>
<!-- vmwgfx doesn't like full buffer swaps and can't sync to vertical retraces.-->
<device driver="vmwgfx">
<application name="gnome-shell" executable="gnome-shell">
<option name="glx_disable_ext_buffer_age" value="true" />
<option name="glx_disable_oml_sync_control" value="true" />
<option name="glx_disable_sgi_video_sync" value="true" />
</application>
<application name="Compiz" executable="Compiz">
<option name="glx_disable_ext_buffer_age" value="true" />
<option name="glx_disable_oml_sync_control" value="true" />
</application>
</device>
<device driver="radeonsi">
<application name="ARK: Survival Evolved (and unintentionally the UE4 demo template)" executable="ShooterGame">
<option name="radeonsi_clear_db_cache_before_clear" value="true" />
</application>
<application name="No Mans Sky" executable="NMS.exe">
<option name="radeonsi_zerovram" value="true" />
</application>
<application name="Civilization 6" executable="Civ6">
<option name="radeonsi_enable_nir" value="true"/>
</application>
<application name="Civilization 6" executable="Civ6Sub">
<option name="radeonsi_enable_nir" value="true"/>
</application>
</device>
</driconf>
DEBUG: Reading legacy system-wide XML
DEBUG: Legacy system-wide XML path: /var/run/host/etc/drirc
DEBUG: Legacy system-wide file doesn't exist
DEBUG: Reading user defined XML
DEBUG: User defined XML path: /home/sunderland93/.drirc
DEBUG: User defined XML doesn't exist
DEBUG: User defined configuration is empty. Returning an empty object
DEBUG: Enumerating DRI Devices
DEBUG: Found 1 devices
DEBUG: Processing GPU with PCI ID "pci-0000_01_00_0"
DEBUG: GPU has been detected as "Ellesmere [Radeon RX 470/480/570/570X/580/580X]" from "Advanced Micro Devices, Inc. [AMD/ATI]"
DEBUG: Generating gbm device for path "/dev/dri/renderD128"
amdgpu: amdgpu_bo_cpu_map failed. (-13)
radeonsi: Failed to create a context.
DEBUG: Generating EGL Display from GBM device for "/dev/dri/renderD128"
This looks like an error on the kernel-side of the amdgpu driver.
I think the error amdgpu: amdgpu_bo_cpu_map failed. (-13)
is a EACCES - Permission denied error.
This could be either something weird with the permissions on your system, or mesa didn't properly opened the driver.
Before we report this further to mesa developers, can you please run the following command and post the output?
ls -la /dev/dri/
Also, I would like to isolate the problem and be 100% sure that it is in mesa. For that, can you kindly compile, run and post the output of the small code below?
// Compile with: g++ -o test.bin test.cpp -lgbm
#include <iostream>
#include <fcntl.h>
#include "gbm.h"
int main() {
int fileDescriptor = open("/dev/dri/renderD128", O_RDWR | FD_CLOEXEC);
std::cout << "File descriptor: " << fileDescriptor << std::endl;
if (fileDescriptor <= 0) {
std::cout << "Error opening the device" << std::endl;
}
std::cout << "Creating the GBM device" << std::endl;
struct gbm_device *gbm = gbm_create_device(fileDescriptor);
if (gbm == nullptr) {
std::cout << "gbm_create_device() function returned nullptr" << std::endl;
}
return 0;
}
If that's seems too much or too complicated, it's also fine. The information provided so far is already very useful.
Finally thanks for the great bug report. The information provided really helps to find issues.
@jlHertel
Before we report this further to mesa developers, can you please run the following command and post the output?
итого 0
drwxr-xr-x 3 root root 100 янв 24 20:24 .
drwxr-xr-x 20 root root 3900 янв 24 23:58 ..
drwxr-xr-x 2 root root 80 янв 24 20:24 by-path
crw-rw----+ 1 root video 226, 0 янв 25 18:54 card0
crw-rw----+ 1 root render 226, 128 янв 24 20:24 renderD128
can you kindly compile, run and post the output of the small code below?
File descriptor: 3
Creating the GBM device
amdgpu: amdgpu_bo_cpu_map failed. (-13)
radeonsi: Failed to create a context.
@Sunderland93 Thanks for the helpful information. I opened an issue in the mesa repository: https://gitlab.freedesktop.org/mesa/mesa/issues/2424
It seems adriconf is opening the device with an incorrect flag. I will check tonight and provide a fix.
I pushed the release 1.6.1
to fix this issue. In the next hours it should be available in flathub.
I kindly ask you to test with this new version and report back if it worked or not.
Thanks.
I didn't hear back, so I'm assuming the issue has been resolved with the latest update. If you find any other problem, feel free to open a new issue.
Debian 10, Mesa 18.3, Linux 5.4. adriconf failed to start with error: