-
Notifications
You must be signed in to change notification settings - Fork 185
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
types/wlr_linux_dmabuf_v1.c:526: feedback_compile: Assertion `table_len > 0' failed. #1218
Comments
I'm getting the same error with polaris card in nested mode, but embedded works fine. |
Haven't tested this (besides making sure it compiles w/o errors), but see if this branch/fork I made works: (clone from my fork, and then do |
I've build it but it has error connecting to wayland: `No CAP_SYS_NICE, falling back to regular-priority compute and threads. Performance will be affected. xdg_backend: libdecor: GTK cannot connect to Wayland compositor` In DMESG: |
Ok, I know there was another issue related to gamescope wayland backend having problems w/ libdecor |
now testing it with vkcube I'm gettiing the same error as on generic one (I've checked branch and its correct) ./gamescope -- vkcube |
¯_(ツ)_/¯ |
Tried your branch |
Your GPU is too old to support modifiers. I need to add a non-modifier fallback. |
I am having the same issue with the 3.14.3 version and the latest git:
|
Downgrading to 3.14.2 for now. To help people searching to find this issue: 3.14.2:
after 82e3632 :
|
Does latest git work for you? 4ca3986 should hopefully fix it. |
I cloned the project, did the checkout of that commit and built the binary, but I still get this:
|
That commit works for me:
|
I'll attach the entire terminal log, in case I got something wrong during compile or during the switch to that 4ca3986: |
Thanks! Nested works on my old rx560, tried embedded - didn't work |
Installed gamescope from AUR via the package Still getting this with
While running it via TTY bash login shell with
Downgrading back to 3.14.2 works for me without error. |
Funny enough, even eliminating 82e3632 change completely does not fix the issue. I.e. applying diff --git a/src/wayland_backend.cpp b/src/wayland_backend.cpp
index c5b33cf..2fcb1ff 100644
--- a/src/wayland_backend.cpp
+++ b/src/wayland_backend.cpp
@@ -1273,22 +1273,8 @@ namespace gamescope
void CWaylandBackend::GetPreferredOutputFormat( VkFormat *pPrimaryPlaneFormat, VkFormat *pOverlayPlaneFormat ) const
{
- VkFormat u8BitFormat = VK_FORMAT_UNDEFINED;
- if ( SupportsFormat( DRM_FORMAT_ARGB8888 ) )
- u8BitFormat = VK_FORMAT_B8G8R8A8_UNORM;
- else if ( SupportsFormat( DRM_FORMAT_ABGR8888 ) )
- u8BitFormat = VK_FORMAT_R8G8B8A8_UNORM;
-
- VkFormat u10BitFormat = VK_FORMAT_UNDEFINED;
- if ( SupportsFormat( DRM_FORMAT_ABGR2101010 ) )
- u10BitFormat = VK_FORMAT_A2B10G10R10_UNORM_PACK32;
- else if ( SupportsFormat( DRM_FORMAT_ARGB2101010 ) )
- u10BitFormat = VK_FORMAT_A2R10G10B10_UNORM_PACK32;
-
- assert( u8BitFormat != VK_FORMAT_UNDEFINED );
-
- *pPrimaryPlaneFormat = u10BitFormat != VK_FORMAT_UNDEFINED ? u10BitFormat : u8BitFormat;
- *pOverlayPlaneFormat = u8BitFormat;
+ *pPrimaryPlaneFormat = VK_FORMAT_A2B10G10R10_UNORM_PACK32;
+ *pOverlayPlaneFormat = VK_FORMAT_B8G8R8A8_UNORM;
}
bool CWaylandBackend::ValidPhysicalDevice( VkPhysicalDevice pVkPhysicalDevice ) const
Still produces the same result for me
|
Well, ditching the Wayland backed and switching back to SDL backend (as it was in 3.14.2) works for me. diff --git a/src/main.cpp b/src/main.cpp
index 88c4c7c..972b2ab 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -762,7 +762,7 @@ int main(int argc, char **argv)
if ( eCurrentBackend == gamescope::GamescopeBackend::Auto )
{
if ( g_pOriginalWaylandDisplay != NULL )
- eCurrentBackend = gamescope::GamescopeBackend::Wayland;
+ eCurrentBackend = gamescope::GamescopeBackend::SDL;
else if ( g_pOriginalDisplay != NULL )
eCurrentBackend = gamescope::GamescopeBackend::SDL;
else
Although, it's a dirty solution. Users should not need to patch the source to do that. We need a CLI option to explicitly set the backend. Lines 6 to 14 in 932a7bb
Presumably, also deprecate existing |
Worked for me too, here is the output of `gamescope vkcube' after using your patch on the commit 932a7bb:
|
I made a PR with new CLI option. #1321 |
using --backend=sdl works for me |
this is fixed for me too when explicitly setting sdl, it would be nice if backend=auto would detect the card and set it automatically to sdl with these cards |
Something like this, and/or maybe also detecting such an issue and falling back to SDL instead of throwing a segfault. Is that possible? |
since update to 3.14.2 I'm facing this error every time I running something through gamescope, it crashes immediately. It worked fine with 3.13.16
Here is an example with vkcube:
No CAP_SYS_NICE, falling back to regular-priority compute and threads.
Performance will be affected.
xdg_backend: Seat name:
xdg_backend: PreferredMetadata: Red: 0.64 0.33, Green: 0.3 0.6, Blue: 0.15 0.06, White: 0.3127 0.329, Max Luminance: 100 nits, Min Luminance: 0 nits, Max Full Frame Luminance: 100 nits
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
vulkan: selecting physical device 'AMD Radeon RX 570 Series (RADV POLARIS10)': queue family 1 (general queue family 0)
vulkan: physical device does not support DRM format modifiers
wlserver: [backend/headless/backend.c:67] Creating headless backend
vulkan: supported DRM formats for sampling usage:
gamescope: types/wlr_linux_dmabuf_v1.c:526: feedback_compile: Assertion `table_len > 0' failed.
The text was updated successfully, but these errors were encountered: