fyne icon indicating copy to clipboard operation
fyne copied to clipboard

XLib warning printed to terminal on application close

Open Jacalz opened this issue 4 years ago • 14 comments

Describe the bug:

It looks like https://github.com/fyne-io/fyne/pull/1153 accidentally introduced a weird Xlib error on application close. I don't know why I didn't notice it when testing the PR though. Seems to just be a warning and not something that break anything as of now, however it would be good to get rid of it :)

To Reproduce:

Steps to reproduce the behaviour:

  1. Use an Nvidia GPU on Linux and close the application.

Screenshots:

Xlib:  extension "NV-GLX" missing on display ":0".

Example code:

It works fine to test this using fyne_demo.

Device (please complete the following information):

  • OS: Solus Budgie (Linux distro with desktop using Mutter WM and X11 session)
  • Version: Linux kernel 5.6.18
  • Go version: 1.14.3
  • Fyne version: 15dd658e6eaac9c9564be2c9590e7d7a132a148d

Jacalz avatar Jul 03 '20 09:07 Jacalz

Is this still present on 1.3.2?

andydotxyz avatar Jul 12 '20 20:07 andydotxyz

Yes I can still replicate this on the latest tag in the develop branch.

Jacalz avatar Jul 19 '20 17:07 Jacalz

Is it at all like this issue? https://askubuntu.com/questions/67567/how-to-fix-error-xlib-extension-nv-glx-missing-on-display

andydotxyz avatar Jul 20 '20 12:07 andydotxyz

Nope. This is a desktop computer. I guess I could technically could force the intel iGPU to be turned off in the bios but I very much doubt that it would make a difference as I am using the Nvidia GPU and nothing else.

Jacalz avatar Jul 20 '20 15:07 Jacalz

Sorry I wasn't suggesting tweaking the hardware, was just trying to figure some more out. Which graphics driver is X using?

andydotxyz avatar Jul 20 '20 16:07 andydotxyz

I didn’t think you did. I just added my thoughts and I guess that they came out a bit wrong 🙃

It should be using the proprietary Nvidia driver 450 or possibly 380, but I will need to double check that when I have time 😅

Jacalz avatar Jul 20 '20 16:07 Jacalz

I'm also getting Xlib: extension "NV-GLX" missing on display ":0" on close. I'm also on Solus. Is this a Solus-specific thing? Any fix for it?

vqvw avatar Sep 04 '20 03:09 vqvw

This is present on Fedora Workstation 33 running Gnome Shell 3.38.2 and nvidia 455 driver via dnf xorg-x11-drv-nvidia.x86_64 3:455.45.01-1.fc33 @rpmfusion-nonfree-updates

AlbinoGeek avatar Dec 16 '20 02:12 AlbinoGeek

Confirming this is still present on Ubuntu 20.04 LTS (linux/amd64) running Gnome 3.36.8 and nVidia driver 390. Go version 1.16.5 and Fyne version 2.0.3

Exact error text is: Xlib: extension "NV-GLX" missing on display ":1"

Everything looks fine in the app (graphics-wise). The warning on os.exit is just unsightly is all. Hope that helps.

GeekStocks avatar Jul 02 '21 03:07 GeekStocks

I'm seeing this as well on Ubuntu 18.04

justinfx avatar Jun 29 '22 21:06 justinfx

Also present for :0 on gentoo with nvidia-drivers-515.65.01 and x11-libs/libxcb-1.15-r1. Edit: I ran it for you with strace.

$ LANG=C strace ./main 2>&1  | grep -i glx
openat(AT_FDCWD, "/usr/lib64/libGLX.so.0", O_RDONLY|O_CLOEXEC) = 3
writev(7, [{iov_base="-\t\5\0\6\0\0\3\6\0a\33cursor\1\0^\0\10\0\7\0\0\3\6\0\0\3"..., iov_len=220}, {iov_base="GLX", iov_len=3}, {iov_base="\0", iov_len=1}], 3) = 224
writev(7, [{iov_base="b\t\3\0\3\0\0\3", iov_len=8}, {iov_base="GLX", iov_len=3}, {iov_base="\0", iov_len=1}], 3) = 12
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.0", O_RDONLY|O_CLOEXEC) = 12
openat(AT_FDCWD, "/usr/lib64/libGLX.so.0.0.0", O_RDONLY) = 12
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.515.65.01", O_RDONLY) = 12
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.515.65.01", O_RDONLY) = 12
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.515.65.01", O_RDONLY) = 13
writev(7, [{iov_base="b\23\3\0\3\0\0\0", iov_len=8}, {iov_base="GLX", iov_len=3}, {iov_base="\0", iov_len=1}], 3) = 12
writev(7, [{iov_base="b\7\3\0\3\0\0\0", iov_len=8}, {iov_base="GLX", iov_len=3}, {iov_base="\0", iov_len=1}], 3) = 12
writev(7, [{iov_base="b\7\4\0\6\0\0\0", iov_len=8}, {iov_base="NV-GLX", iov_len=6}, {iov_base="\0\0", iov_len=2}], 3) = 16
openat(AT_FDCWD, "/usr/lib64/libxcb-glx.so.0", O_RDONLY|O_CLOEXEC) = 12
writev(7, [{iov_base="b\0\4\0\6\0\0\0NV-GLX\0\0", iov_len=16}], 1) = 16
openat(AT_FDCWD, "/usr/lib64/libGLX.so.0.0.0", O_RDONLY) = 14
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.515.65.01", O_RDONLY) = 14
openat(AT_FDCWD, "/usr/lib64/libxcb-glx.so.0.0.0", O_RDONLY) = 14
openat(AT_FDCWD, "/usr/lib64/libGLX.so.0.0.0", O_RDONLY) = 14
openat(AT_FDCWD, "/usr/lib64/libGLX_nvidia.so.515.65.01", O_RDONLY) = 14
openat(AT_FDCWD, "/usr/lib64/libxcb-glx.so.0.0.0", O_RDONLY) = 14
memfd_create("/.glXXXXXX", MFD_CLOEXEC) = 26
futex(0x7f03ce724e68, FUTEX_WAIT_PRIVATE, 2, NULLXlib:  extension "NV-GLX" missing on display ":0".

paboum avatar Nov 24 '22 00:11 paboum