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

FindAdaptersUdev causing assert with systemd 256 #658

Open
heitbaum opened this issue Jun 12, 2024 · 0 comments · May be fixed by #659
Open

FindAdaptersUdev causing assert with systemd 256 #658

heitbaum opened this issue Jun 12, 2024 · 0 comments · May be fixed by #659

Comments

@heitbaum
Copy link

heitbaum commented Jun 12, 2024

pdev = udev_device_get_parent(udev_device_get_parent(dev));

Thread 1 (Thread 0x7f5628a006c0 (LWP 3651)):
#0  0x00007f5665cbc93c in ?? () from /usr/lib/libc.so.6
No symbol table info available.
#1  0x00007f5665c6ca12 in raise () from /usr/lib/libc.so.6
No symbol table info available.
#2  0x00007f5665c574a2 in abort () from /usr/lib/libc.so.6
No symbol table info available.
#3  0x00007f56691c6cb5 in ?? () from /usr/lib/libudev.so.1
No symbol table info available.
#4  0x00007f56691e5ad7 in ?? () from /usr/lib/libudev.so.1
No symbol table info available.
#5  0x00007f56691c76cf in udev_device_get_parent () from /usr/lib/libudev.so.1
No symbol table info available.
#6  0x00007f5669994c60 in CEC::CUSBCECAdapterDetection::FindAdaptersUdev(CEC::cec_adapter_descriptor*, unsigned char, char const*) () from /usr/lib/libcec.so.6
No symbol table info available.
#7  0x00007f566999592e in CEC::CUSBCECAdapterDetection::FindAdapters(CEC::cec_adapter_descriptor*, unsigned char, char const*) () from /usr/lib/libcec.so.6
No symbol table info available.
#8  0x00007f5669984aad in CEC::CAdapterFactory::DetectAdapters(CEC::cec_adapter_descriptor*, unsigned char, char const*) () from /usr/lib/libcec.so.6
No symbol table info available.
#9  0x00007f566997d6ff in CEC::CLibCEC::DetectAdapters(CEC::cec_adapter_descriptor*, unsigned char, char const*, bool) () from /usr/lib/libcec.so.6
No symbol table info available.
#10 0x00000000012dfdec in PERIPHERALS::CPeripheralBusCEC::PerformDeviceScan(PERIPHERALS::PeripheralScanResults&) ()
No symbol table info available.
#11 0x00000000012dc689 in PERIPHERALS::CPeripheralBus::ScanForDevices() ()
No symbol table info available.
#12 0x00000000012dce0a in PERIPHERALS::CPeripheralBus::Process() ()
No symbol table info available.
#13 0x0000000000df0373 in CThread::Action() ()
No symbol table info available.
#14 0x0000000000df404e in ?? ()
No symbol table info available.
#15 0x00007f5665edfe34 in ?? () from /usr/lib/libstdc++.so.6
No symbol table info available.
#16 0x00007f5665cbaeaa in ?? () from /usr/lib/libc.so.6
No symbol table info available.
#17 0x00007f5665d305a8 in ?? () from /usr/lib/libc.so.6
No symbol table info available.
rax            0x0                 0
rbx            0xe43               3651
rcx            0x7f5665cbc93c      140009051769148
rdx            0x6                 6
rsi            0xe43               3651
rdi            0xe11               3601
rbp            0x7f5628a006c0      0x7f5628a006c0
rsp            0x7f56289fa400      0x7f56289fa400
r8             0x0                 0
r9             0x0                 0
r10            0x8                 8
r11            0x246               582
r12            0x7f56691f0783      140009107556227
r13            0x6                 6
r14            0x7f56691f300a      140009107566602
r15            0x7f56691f4430      140009107571760
rip            0x7f5665cbc93c      0x7f5665cbc93c
eflags         0x246               [ PF ZF IF ]
cs             0x33                51
ss             0x2b                43
ds             0x0                 0
es             0x0                 0
fs             0x0                 0
gs             0x0                 0
fs_base        0x7f5628a006c0      140008025491136
gs_base        0x0                 0

causing crash with systemd 256 (works in systemd 255.7) - assert_return_errno(udev_device, NULL, EINVAL); looking at the code, an initial return of NULL in the inner parent call would trigger this.

https://github.com/systemd/systemd/blob/21f51d877fefd380c7ea388d579f1cc7dc19b226/src/libudev/libudev-device.c#L407

Jun 12 11:20:21 nuc12 kodi.sh[3601]: Assertion 'udev_device' failed at src/libudev/libudev-device.c:407, function udev_device_get_parent(). Aborting.
Jun 12 11:20:22 nuc12 kodi.sh[3550]: Aborted (core dumped)

systemd/systemd#33292

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

Successfully merging a pull request may close this issue.

1 participant