Telegram-desktop stopped to work in suse tumbleweed, glibc error

Error is:

> telegram-desktop 

WARNING: cgroup v2 is not fully supported yet, proceeding with partial confinement
runtime/cgo: pthread_create failed: Operation not permitted
SIGABRT: abort
PC=0x58c873 m=0 sigcode=18446744073709551610

goroutine 0 [idle]:
runtime: unknown pc 0x58c873
stack: frame={sp:0x7ffe65efefa0, fp:0x0} stack=[0x7ffe65700458,0x7ffe65eff490)
00007ffe65efeea0:  00007ffe65efeee0  000000000046b4be <runtime.callCgoMmap+62> 
00007ffe65efeeb0:  00007ffe65efeeb0  00007ffe65efeee8 
00007ffe65efeec0:  00007ffe65efeef8  0000000000572dec 
00007ffe65efeed0:  00000000005fb430  000000001c000004 
00007ffe65efeee0:  000000000057a4d0  0000000000000000 
00007ffe65efeef0:  0000000000000000  00000000005931ee 
00007ffe65efef00:  0000000000000000  0000000000000000 
00007ffe65efef10:  0000000000000010  0000000000000000 
00007ffe65efef20:  0000000000000120  0000000000000110 
00007ffe65efef30:  00007f97c0b17fff  0000000000000012 
00007ffe65efef40:  0020300000000000  00000000005cb831 
00007ffe65efef50:  00007f97c07f7640  00007ffe65eff210 
00007ffe65efef60:  00007ffe65eff07e  00007ffe65eff07f 
00007ffe65efef70:  00007f97c07f7640  000000000058b205 
00007ffe65efef80:  000080c00003dfff  00000000000209a0 
00007ffe65efef90:  00000000003d0f00  000000000058c865 
00007ffe65efefa0: <00007f97c07f7910  0000000000000006 
00007ffe65efefb0:  0000000000000001  000000000057a456 
00007ffe65efefc0:  0000000000802a00  00000000004011ec 
00007ffe65efefd0:  0000000000000020  0000000000000000 
00007ffe65efefe0:  0000000000000000  e25dcb1e01550000 
00007ffe65efeff0:  00007ffe65eff0c0  00007f97c07f7640 
00007ffe65eff000:  0000000000000000  00007ffe65eff210 
00007ffe65eff010:  00007f97c07f7640  000000000058bf1a 
00007ffe65eff020:  00007ffe65eff210  0000000000585ded 
00007ffe65eff030:  0000000000d35650  00000000007bb700 
00007ffe65eff040:  00000000006c3633  0000000000585ded 
00007ffe65eff050:  0000000000000828  00000000007bb700 
00007ffe65eff060:  00000000007bb783  00000000007d30c0 
00007ffe65eff070:  0000000000000828  0000000000584e9e 
00007ffe65eff080:  0000000000000001  00000000007bb700 
00007ffe65eff090:  0000000000d343c0  00007ffe65eff2d0 
runtime: unknown pc 0x58c873
stack: frame={sp:0x7ffe65efefa0, fp:0x0} stack=[0x7ffe65700458,0x7ffe65eff490)
00007ffe65efeea0:  00007ffe65efeee0  000000000046b4be <runtime.callCgoMmap+62> 
00007ffe65efeeb0:  00007ffe65efeeb0  00007ffe65efeee8 
00007ffe65efeec0:  00007ffe65efeef8  0000000000572dec 
00007ffe65efeed0:  00000000005fb430  000000001c000004 
00007ffe65efeee0:  000000000057a4d0  0000000000000000 
00007ffe65efeef0:  0000000000000000  00000000005931ee 
00007ffe65efef00:  0000000000000000  0000000000000000 
00007ffe65efef10:  0000000000000010  0000000000000000 
00007ffe65efef20:  0000000000000120  0000000000000110 
00007ffe65efef30:  00007f97c0b17fff  0000000000000012 
00007ffe65efef40:  0020300000000000  00000000005cb831 
00007ffe65efef50:  00007f97c07f7640  00007ffe65eff210 
00007ffe65efef60:  00007ffe65eff07e  00007ffe65eff07f
00007ffe65efef70:  00007f97c07f7640  000000000058b205
00007ffe65efef80:  000080c00003dfff  00000000000209a0
00007ffe65efef90:  00000000003d0f00  000000000058c865
00007ffe65efefa0: <00007f97c07f7910  0000000000000006
00007ffe65efefb0:  0000000000000001  000000000057a456
00007ffe65efefc0:  0000000000802a00  00000000004011ec
00007ffe65efefd0:  0000000000000020  0000000000000000
00007ffe65efefe0:  0000000000000000  e25dcb1e01550000
00007ffe65efeff0:  00007ffe65eff0c0  00007f97c07f7640
00007ffe65eff000:  0000000000000000  00007ffe65eff210
00007ffe65eff010:  00007f97c07f7640  000000000058bf1a
00007ffe65eff020:  00007ffe65eff210  0000000000585ded
00007ffe65eff030:  0000000000d35650  00000000007bb700
00007ffe65eff040:  00000000006c3633  0000000000585ded
00007ffe65eff050:  0000000000000828  00000000007bb700
00007ffe65eff060:  00000000007bb783  00000000007d30c0
00007ffe65eff070:  0000000000000828  0000000000584e9e
00007ffe65eff080:  0000000000000001  00000000007bb700
00007ffe65eff090:  0000000000d343c0  00007ffe65eff2d0

goroutine 1 [running]:
runtime.systemstack_switch()
        /usr/lib64/go/1.16/src/runtime/asm_amd64.s:339 fp=0xc000042788 sp=0xc000042780 pc=0x467980
runtime.main()
        /usr/lib64/go/1.16/src/runtime/proc.go:144 +0x89 fp=0xc0000427e0 sp=0xc000042788 pc=0x4393a9
runtime.goexit()
        /usr/lib64/go/1.16/src/runtime/asm_amd64.s:1371 +0x1 fp=0xc0000427e8 sp=0xc0000427e0 pc=0x4697c1

rax    0x0
rbx    0xd343c0
rcx    0x58c873
rdx    0x6
rdi    0x518e
rsi    0x518e
rbp    0x518e
rsp    0x7ffe65efefa0
r8     0x7ffe65efefd0
r9     0x5a2550
r10    0x8
r11    0x206
r12    0x6
r13    0x7ffe65eff2d0
r14    0x6b8092
r15    0x0
rip    0x58c873
rflags 0x206
cs     0x33
fs     0x0
gs     0x0

Also was error same as here: Acestreamplayer.mpv stopped to work, glibc error

Same here, argh…
Also using Tumbleweed, all my snaps stopped working with above error - in fact, it’s the exact same error, ever since I updated systemd to 249 (had about 3k updates that poured in that night)

OK, it’s been (almost) a week now since each and every snap is showing above error - I’m royally fed up to be honest, this is a joke!!!
@Aleksey I recommend to switch to Flatpak one Tumbleweed like me - everything works there (and unlike I don’t even have to deal with those block-characters like in Snapd) and I don’t have issues… what a shame

@SpaceDude thanks, I already switched to flatpack with Telegram - indeed it is much more reliable and seems based on more recent packages or Ubuntu version, the only inconvenience - there is no unread messages counter in the tray icon and was forced to copy settings manually. However I can’t switch with acestream as there is no such package there.

this thread was opened 2 days ago, late on a friday … if it has been almost a week, why did you not report it when it started happening but now complain that (paid) developers do not immediately pick it up over a (free) weekend ?

i’m sure the snapd team will look at it once they are seeing it tomorrow when their work week starts … please be patient …

Good point - and I will be patient as I do like Snap! Given the magnitude of my snap issues I honestly thought I may have configured my system wrong or something - searching for some other users having the same issue I only came across @Aleksey’s issue with Telegram, that’s when I chimed in.

But @ogra you’re absolutely right, I should have reported it… even though not many OpenSUSE Tumbleweed users seem to use Snap

In any case, thank you for your feedback - I’m anxiously awaiting the fix!

Best,
me.

2 Likes

Looks like building static binaries with the usual flags with Go 1.17 and glibc 2.34 stopped working. I’ll investigate what is the cause of this.

I’ve proposed a fix to snapd and cherry picked that to the snapd package, which already landed in the system:snappy repository. You can try zypper dup to get the latest version.

@mborzecki does not crash now, but have same error like acstreamplayer:

> telegram-desktop
WARNING: cgroup v2 is not fully supported yet, proceeding with partial confinement
telegram-desktop: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /var/lib/snapd/lib/gl/libGLX.so.0)
telegram-desktop: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /var/lib/snapd/lib/gl/libGLdispatch.so.0)

so don’t start.

Works for me on Tumbleweed. Are you using nvidia drivers by any chance?

yes, I have nvidia drivers.

Well, that explains the failure. Since snap does not ship nvidia drivers, they are brought in from the host and need to execute inside the namespace of the snap. In your case, libGLX was apparently built using a newer libc than what is available in core20 (the current base snap of telegram-desktop). This is unexpected, as nvidia took care to provide binary drivers were compatible with older libc. Did you install those drivers yourself or from the repositories provided by nvidia for opensuse?

This is unexpected, as nvidia took care to provide binary drivers were compatible with older libc.

And now - not?

Did you install those drivers yourself or from the repositories provided by nvidia for opensuse?

Yes, https://download.nvidia.com/opensuse/tumbleweed

@ogra @Aleksey just updated my Tumbleweed system - it also included an update for snapd - and all is good again: all my snaps work again as I would expect them to work!

Confidence restored, currently chewing on my foot…

Next time I’ll post my problem sooner. Thanks everyone!

3 Likes

and also thanks @mborzecki of course

1 Like

YES - and it WORKED!!! Thank you SO much! I really appreciate it!
Best,
Me.

1 Like

Does not work for nvidia drivers yet.

Yeah, this is a different problem now, but I’m afraid I don’t have a good solution here. I think a similar issue was reported on Ubuntu 21.10, but they patched in at the distro level.

In short, libGLX these days comes from the distro. Historically this was part of the nvidia drivers package, was linked with old glibc versions and thus compatible with even old base snaps. With glvnd, nvidia drivers only ship libGLX_nvidia.so, while libGLX comes from the host. Tumbleweed was rebuilt with new glibc, so all libraries require at least 2.34 GLIBC symbol version. However, this makes libGLX also incompatible with anything that isn’t built with this new glibc release.

Maybe snapd can provide the nvidia libraries, like flatpak does with org.freedesktop.Platform.GL.nvidia-*. That’s how flatpak manages to avoid this problem.

1 Like

snapd can provide the nvidia libraries, like flatpak does with org.freedesktop.Platform.GL.nvidia-*. That’s how flatpak manages to avoid this problem.

Exactly!!! As flatpack packages work just fine with this!