Skip to content
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

Seg Faults - Pi4 8gb Ubuntu 21.04 #16

Closed
Joshndroid opened this issue Sep 21, 2021 · 10 comments
Closed

Seg Faults - Pi4 8gb Ubuntu 21.04 #16

Joshndroid opened this issue Sep 21, 2021 · 10 comments

Comments

@Joshndroid
Copy link

Pi4 - ubuntu 21.04 arm64
all updated, fresh install.

all dependencies met for building from source.

I installed this after coming over from the barrier git advising this might be a solution for wayland
I went through the steps installed all the various dependencies and some from source

anyway i run the command and basically just get a seg fault every time.
i dont run with TLS or encryption and have the wl-clipboard flag -n set.
I have looked at log level4/5 and there is nothing in there that would elicit the error
it basically just spits out child died..
last line is all outputs updates, triggering event

`0.000131910: [INFO] Log initialized at level 5

0.000327673: [INFO] Using manaul dimensions: 1920x1080
0.000471306: [DEBUG] requiring wait() on SIGCHLD
Child died:
2173
Status:
0
0.010284858: [DEBUG] Found wl-paste
Child died:
2174
Status:
0
0.019824941: [DEBUG] Found wl-copy
0.019941814: [DEBUG] not requiring wait() on SIGCHLD
0.020029390: [INFO] Clipboard sync disabled by command line
0.021806259: [DEBUG] Mutating output...
0.021964448: [DEBUG] Got output at position 0,0
0.022067931: [DEBUG] Got current mode: 1920x1080@74973*
0.022158396: [DEBUG] Mutating output...
0.022249231: [DEBUG] Got scale factor for output: 1
0.022336177: [DEBUG] Mutating output...
0.022429679: [INFO] Output updated: 1920x1080 at 0, 0 (scale: 1)
0.022519033: [DEBUG] All outputs updated, triggering event
0.022638665: [DEBUG] Got xdg output position: 0, 0
0.022790335: [DEBUG] Mutating output from xdg_output event
0.022946949: [DEBUG] Got xdg output size: 1920x1080
0.023092822: [DEBUG] Mutating output from xdg_output event
0.023297234: [DEBUG] Got xdg output name: HDMI-2
0.023427366: [DEBUG] Mutating output from xdg_output event
0.023525072: [DEBUG] Got xdg output desc: LG Electronics 22"
0.023608055: [DEBUG] Mutating output from xdg_output event
0.023696576: [INFO] Output name: HDMI-2
0.023780151: [INFO] Output description: LG Electronics 22"
0.023862949: [INFO] Output updated: 1920x1080 at 0, 0 (scale: 1)
0.023946118: [DEBUG] All outputs updated, triggering event
`

any tips?

@r-c-f
Copy link
Owner

r-c-f commented Sep 21, 2021

Would you be able to build with debug symbols and provide a backtrace? That would be the most immediately useful

@Joshndroid
Copy link
Author

I am not well versed in what i may need to do... after a bit of googling and mucking about i have recompiled with a clean ninja
ninja -d stats -d explain
i have installed...
now i can't seem to get the backtrace your after got any tips from here?

@r-c-f
Copy link
Owner

r-c-f commented Sep 22, 2021

For building with symbols, build with something along the lines the lines of

CFLAGS=-g meson build-debug
cd build-debug
ninja

For the backtrace, you can see if it is present in the journal with coredumpctl or run waynergy within gdb and use the bt command when the segfault occurs

@Joshndroid
Copy link
Author

Alright I think I have what your after.

Reading symbols from /usr/local/bin/waynergy... [New LWP 3790] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/aarch64-linux-gnu/libthread_db.so.1". Core was generated by waynergy -c 192.168.1.26 -n -l waynergy -L 7 -p 24800 -N joshndroid-pi -W 1920'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000ffff95b93e1c in wl_proxy_marshal_constructor () from /lib/aarch64-linux-gnu/libwayland-client.so.0
(gdb) bt
#0 0x0000ffff95b93e1c in wl_proxy_marshal_constructor () from /lib/aarch64-linux-gnu/libwayland-client.so.0
#1 0x0000aaaab3c1d2f8 in zwlr_virtual_pointer_manager_v1_create_virtual_pointer (zwlr_virtual_pointer_manager_v1=0x0, seat=0xaaaae2485580)
at waynergy.p/wlr-virtual-pointer-unstable-v1-client-protocol.h:327
#2 0x0000aaaab3c1e490 in wlSetup (ctx=0xaaaab3c489b0 , width=1920, height=1080) at ../src/wayland.c:350
#3 0x0000aaaab3c16dc8 in main (argc=16, argv=0xfffff3684f68) at ../src/main.c:277`

r-c-f added a commit that referenced this issue Sep 23, 2021
If the virtual keyboard or virtual pointer protocols are not supported,
produce a meaningful error message rather than dereference NULL and
segfault. Related to #16
@r-c-f
Copy link
Owner

r-c-f commented Sep 23, 2021

Which compositor are you using? It looks like the virtual pointer protocol is not supported. I've added a check to handle this more gracefully but it's likely all that can be done is adding a more meaningful error message.

@Joshndroid
Copy link
Author

I am using the stock vanilla Ubuntu 21.04 build for Rpi4.
I have run inxi which stated gnome-shell

inxi -Gxx | grep compositor Display: server: X.org 1.20.11 compositor: gnome-shell driver: loaded: fbdev unloaded: modesetting tty: 188x31

@r-c-f
Copy link
Owner

r-c-f commented Sep 24, 2021

Unfortunately in that case this simply can't be supported, as GNOME have no intention of adopting the wlroots protocols used here for virtual input.

@Joshndroid
Copy link
Author

No worries.
Thanks for the prompt trouble-shooting.
Might have to go back to RaspberryOS

@r-c-f
Copy link
Owner

r-c-f commented Sep 24, 2021

Thank you for reporting this; a segfault being fixed is always useful, and the next person to run into this will get a proper error message about protocol support as a result.

As for alternatives I'm almost certain that Ubuntu would allow one to run GNOME as an X session, permitting the use of barrier/synergy as normal. There's also this client which uses uinput and thus should work everywhere, with the caveat that it must therefore be run with elevated privileges. I recall a few annoyances that led me to start this project but it is better than nothing under certain circumstances. Barrier itself supposedly reached its funding goal for libei-based wayland support which will be well supported by GNOME so there is a light at the end of the tunnel.

@r-c-f
Copy link
Owner

r-c-f commented Jan 13, 2022

@Joshndroid while it's a bit late, there is now support for uinput in waynergy (and thus GNOME should work)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants