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

ui: SIGABRT crash in Wayland client after CameraView destructor #34411

Closed
deanlee opened this issue Jan 18, 2025 · 0 comments · Fixed by #34412
Closed

ui: SIGABRT crash in Wayland client after CameraView destructor #34411

deanlee opened this issue Jan 18, 2025 · 0 comments · Fixed by #34412
Labels

Comments

@deanlee
Copy link
Contributor

deanlee commented Jan 18, 2025

Describe the bug

The ui crashes with a SIGABRT after the CameraView::~CameraView is called. The error

listener function for opcode 0 of wl_callback is NULL

appears just before the crash, indicating an issue within the Wayland client-side callback handling. The crash is traced back to Wayland's buffer management in the EglWaylandWlWindowSurface::CommitBuffer function.

Core was generated by `./ui'.
Program terminated with signal SIGABRT, Aborted.
#0  __pthread_kill_implementation (threadid=547598876128, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
warning: 44	./nptl/pthread_kill.c: No such file or directory
[Current thread is 1 (Thread 0x7f7f6fbde0 (LWP 270450))]
(gdb) bt
#0  __pthread_kill_implementation (threadid=547598876128, signo=signo@entry=6, no_tid=no_tid@entry=0) at ./nptl/pthread_kill.c:44
#1  0x0000007f94207690 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  0x0000007f941bcb3c in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x0000007f941a7e00 in __GI_abort () at ./stdlib/abort.c:79
#4  0x0000007f946466a4 in ?? () from /lib/aarch64-linux-gnu/libwayland-client.so.0
#5  0x0000007f946468a0 in ?? () from /lib/aarch64-linux-gnu/libwayland-client.so.0
#6  0x0000007f9464711c in ?? () from /lib/aarch64-linux-gnu/libwayland-client.so.0
#7  0x0000007f94647444 in wl_display_dispatch_queue_pending () from /lib/aarch64-linux-gnu/libwayland-client.so.0
#8  0x0000007f8f3c6078 in EglWaylandWlWindowSurface::CommitBuffer(void*, unsigned int) () from /lib/aarch64-linux-gnu/libeglSubDriverWayland.so
#9  0x0000007f8f3c7e78 in EglWaylandUpdater::UpdaterThread() () from /lib/aarch64-linux-gnu/libeglSubDriverWayland.so
#10 0x0000007f9420597c in start_thread (arg=0x0) at ./nptl/pthread_create.c:447
#11 0x0000007f9426b7dc in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:79

Steps to Reproduce:

  1. Click the "Preview Driver View" button on the settings page to open the Driver View.
  2. Quickly close the Driver View by clicking within it.
  3. Repeat this process several times to reproduce the crash.

Provide a route where the issue occurs

no-route

openpilot version

master

Additional info

No response

@deanlee deanlee added the bug label Jan 18, 2025
@deanlee deanlee changed the title ui: SIGABRT in Wayland Client Due to "opcode 0 of wl_callback" Error After CameraView Destructor ui: SIGABRT crash in Wayland client after CameraView destructor Jan 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant