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

[5.72] test_aics_unit_testcases (test-vcp.c) fails on x86_64 #726

Open
macmpi opened this issue Jan 17, 2024 · 12 comments
Open

[5.72] test_aics_unit_testcases (test-vcp.c) fails on x86_64 #726

macmpi opened this issue Jan 17, 2024 · 12 comments

Comments

@macmpi
Copy link

macmpi commented Jan 17, 2024

Trying to build bluez 5.72 on Alpine (musl): it now fails on x86_64 (only)

FAIL: unit/test-vcp
============================================================================
Testsuite summary for bluez 5.72
============================================================================
# TOTAL: 31
# PASS:  30
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

Dunno how to get more detailed info on actual failure.
Other arches ARM (32 & 64) , x86, etc are fine.
test_aics_unit_testcases seems the offending part: disabling it fixes build.

@Vudentz
Copy link
Contributor

Vudentz commented Jan 17, 2024

@macmpi try running it with valgrind to see if that reports anything.

@macmpi
Copy link
Author

macmpi commented Jan 17, 2024

I'm afraid I'm unsure how to set this in the context of Alpine CI build: --enable_valgrind does not seem to operate

@macmpi
Copy link
Author

macmpi commented Jan 19, 2024

some more logs details on this:

==================================
   bluez 5.72: ./test-suite.log
==================================
# TOTAL: 31
# PASS:  30
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: unit/test-vcp
===================
VOCS/SR/SGGIT/SER/BV-01-C - init
VOCS/SR/SGGIT/SER/BV-01-C - setup
VOCS/SR/SGGIT/SER/BV-01-C - setup complete
VOCS/SR/SGGIT/SER/BV-01-C - run
VOCS/SR/SGGIT/SER/BV-01-C - test passed
VOCS/SR/SGGIT/SER/BV-01-C - teardown
VOCS/SR/SGGIT/SER/BV-01-C - teardown complete
VOCS/SR/SGGIT/SER/BV-01-C - done
VOCS/SR/SGGIT/CHA/BV-01-C - init
VOCS/SR/SGGIT/CHA/BV-01-C - setup
VOCS/SR/SGGIT/CHA/BV-01-C - setup complete
VOCS/SR/SGGIT/CHA/BV-01-C - run
VOCS/SR/SGGIT/CHA/BV-01-C - test passed
VOCS/SR/SGGIT/CHA/BV-01-C - teardown
VOCS/SR/SGGIT/CHA/BV-01-C - teardown complete
VOCS/SR/SGGIT/CHA/BV-01-C - done
VOCS/SR/SGGIT/CHA/BV-02-C - init
VOCS/SR/SGGIT/CHA/BV-02-C - setup
VOCS/SR/SGGIT/CHA/BV-02-C - setup complete
VOCS/SR/SGGIT/CHA/BV-02-C - run
VOCS/SR/SGGIT/CHA/BV-02-C - test passed
VOCS/SR/SGGIT/CHA/BV-02-C - teardown
VOCS/SR/SGGIT/CHA/BV-02-C - teardown complete
VOCS/SR/SGGIT/CHA/BV-02-C - done
VOCS/SR/SGGIT/CHA/BV-03-C - init
VOCS/SR/SGGIT/CHA/BV-03-C - setup
VOCS/SR/SGGIT/CHA/BV-03-C - setup complete
VOCS/SR/SGGIT/CHA/BV-03-C - run
VOCS/SR/SGGIT/CHA/BV-03-C - test passed
VOCS/SR/SGGIT/CHA/BV-03-C - teardown
VOCS/SR/SGGIT/CHA/BV-03-C - teardown complete
VOCS/SR/SGGIT/CHA/BV-03-C - done
VOCS/SR/SGGIT/CHA/BV-04-C - init
VOCS/SR/SGGIT/CHA/BV-04-C - setup
VOCS/SR/SGGIT/CHA/BV-04-C - setup complete
VOCS/SR/SGGIT/CHA/BV-04-C - run
VOCS/SR/SGGIT/CHA/BV-04-C - test passed
VOCS/SR/SGGIT/CHA/BV-04-C - teardown
VOCS/SR/SGGIT/CHA/BV-04-C - teardown complete
VOCS/SR/SGGIT/CHA/BV-04-C - done
VOCS/SR/SGGIT/CP/BI-01-C - init
VOCS/SR/SGGIT/CP/BI-01-C - setup
VOCS/SR/SGGIT/CP/BI-01-C - setup complete
VOCS/SR/SGGIT/CP/BI-01-C - run
VOCS/SR/SGGIT/CP/BI-01-C - test passed
VOCS/SR/SGGIT/CP/BI-01-C - teardown
VOCS/SR/SGGIT/CP/BI-01-C - teardown complete
VOCS/SR/SGGIT/CP/BI-01-C - done
VOCS/SR/SGGIT/CP/BI-02-C - init
VOCS/SR/SGGIT/CP/BI-02-C - setup
VOCS/SR/SGGIT/CP/BI-02-C - setup complete
VOCS/SR/SGGIT/CP/BI-02-C - run
VOCS/SR/SGGIT/CP/BI-02-C - test passed
VOCS/SR/SGGIT/CP/BI-02-C - teardown
VOCS/SR/SGGIT/CP/BI-02-C - teardown complete
VOCS/SR/SGGIT/CP/BI-02-C - done
VOCS/SR/SGGIT/CP/BI-03-C - init
VOCS/SR/SGGIT/CP/BI-03-C - setup
VOCS/SR/SGGIT/CP/BI-03-C - setup complete
VOCS/SR/SGGIT/CP/BI-03-C - run
VOCS/SR/SGGIT/CP/BI-03-C - test passed
VOCS/SR/SGGIT/CP/BI-03-C - teardown
VOCS/SR/SGGIT/CP/BI-03-C - teardown complete
VOCS/SR/SGGIT/CP/BI-03-C - done
VOCS/SR/SPE/BI-01-C - init
VOCS/SR/SPE/BI-01-C - setup
VOCS/SR/SPE/BI-01-C - setup complete
VOCS/SR/SPE/BI-01-C - run
VOCS/SR/SPE/BI-01-C - test passed
VOCS/SR/SPE/BI-01-C - teardown
VOCS/SR/SPE/BI-01-C - teardown complete
VOCS/SR/SPE/BI-01-C - done
VOCS/SR/CP/BV-01-C - init
VOCS/SR/CP/BV-01-C - setup
VOCS/SR/CP/BV-01-C - setup complete
VOCS/SR/CP/BV-01-C - run
VOCS/SR/CP/BV-01-C - test passed
VOCS/SR/CP/BV-01-C - teardown
VOCS/SR/CP/BV-01-C - teardown complete
VOCS/SR/CP/BV-01-C - done
AICS/SR/SGGIT/CHA/BV-01-C - init
AICS/SR/SGGIT/CHA/BV-01-C - setup
AICS/SR/SGGIT/CHA/BV-01-C - setup complete
AICS/SR/SGGIT/CHA/BV-01-C - run
AICS/SR/SGGIT/CHA/BV-01-C - test passed
AICS/SR/SGGIT/CHA/BV-01-C - teardown
AICS/SR/SGGIT/CHA/BV-01-C - teardown complete
AICS/SR/SGGIT/CHA/BV-01-C - done
AICS/SR/SGGIT/CHA/BV-02-C - init
AICS/SR/SGGIT/CHA/BV-02-C - setup
AICS/SR/SGGIT/CHA/BV-02-C - setup complete
AICS/SR/SGGIT/CHA/BV-02-C - run
AICS/SR/SGGIT/CHA/BV-02-C - test passed
AICS/SR/SGGIT/CHA/BV-02-C - teardown
AICS/SR/SGGIT/CHA/BV-02-C - teardown complete
AICS/SR/SGGIT/CHA/BV-02-C - done
AICS/SR/SGGIT/CHA/BV-03-C - init
AICS/SR/SGGIT/CHA/BV-03-C - setup
AICS/SR/SGGIT/CHA/BV-03-C - setup complete
AICS/SR/SGGIT/CHA/BV-03-C - run
AICS/SR/SGGIT/CHA/BV-03-C - test passed
AICS/SR/SGGIT/CHA/BV-03-C - teardown
AICS/SR/SGGIT/CHA/BV-03-C - teardown complete
AICS/SR/SGGIT/CHA/BV-03-C - done
AICS/SR/SGGIT/CHA/BV-04-C - init
AICS/SR/SGGIT/CHA/BV-04-C - setup
AICS/SR/SGGIT/CHA/BV-04-C - setup complete
AICS/SR/SGGIT/CHA/BV-04-C - run
AICS/SR/SGGIT/CHA/BV-04-C - test passed
AICS/SR/SGGIT/CHA/BV-04-C - teardown
AICS/SR/SGGIT/CHA/BV-04-C - teardown complete
AICS/SR/SGGIT/CHA/BV-04-C - done
AICS/SR/SGGIT/CHA/BV-05-C - init
AICS/SR/SGGIT/CHA/BV-05-C - setup
AICS/SR/SGGIT/CHA/BV-05-C - setup complete
AICS/SR/SGGIT/CHA/BV-05-C - run
AICS/SR/SGGIT/CHA/BV-05-C - test passed
AICS/SR/SGGIT/CHA/BV-05-C - teardown
AICS/SR/SGGIT/CHA/BV-05-C - teardown complete
AICS/SR/SGGIT/CHA/BV-05-C - done
AICS/SR/SGGIT/CHA/BV-06-C - init
AICS/SR/SGGIT/CHA/BV-06-C - setup
AICS/SR/SGGIT/CHA/BV-06-C - setup complete
AICS/SR/SGGIT/CHA/BV-06-C - run
AICS/SR/SGGIT/CHA/BV-06-C - test passed
AICS/SR/SGGIT/CHA/BV-06-C - teardown
AICS/SR/SGGIT/CHA/BV-06-C - teardown complete
AICS/SR/SGGIT/CHA/BV-06-C - done
AICS/SR/SGGIT/CP/BI-01-C - init
AICS/SR/SGGIT/CP/BI-01-C - setup
AICS/SR/SGGIT/CP/BI-01-C - setup complete
AICS/SR/SGGIT/CP/BI-01-C - run
AICS/SR/SGGIT/CP/BI-01-C - test passed
AICS/SR/SGGIT/CP/BI-01-C - teardown
AICS/SR/SGGIT/CP/BI-01-C - teardown complete
AICS/SR/SGGIT/CP/BI-01-C - done
AICS/SR/SGGIT/CP/BI-02-C - init
AICS/SR/SGGIT/CP/BI-02-C - setup
AICS/SR/SGGIT/CP/BI-02-C - setup complete
AICS/SR/SGGIT/CP/BI-02-C - run
AICS/SR/SGGIT/CP/BI-02-C - test passed
AICS/SR/SGGIT/CP/BI-02-C - teardown
Segmentation fault (core dumped)
FAIL unit/test-vcp (exit status: 139)

produced vcp test and codedump are below
vcptest_cdmp.tar.gz

@xry111
Copy link

xry111 commented Jan 20, 2024

Maybe related to #683.

@macmpi
Copy link
Author

macmpi commented Jan 23, 2024

Thank for the ref @xry111 : tried without "-flto" option in CFLAGS, but no more success unfortunately.

@macmpi
Copy link
Author

macmpi commented Mar 7, 2024

seems fixed in 5.73.

@macmpi macmpi closed this as completed Mar 7, 2024
gentoo-bot pushed a commit to gentoo/gentoo that referenced this issue Mar 27, 2024
5.73 unfortunately still fails for me with LTO (specifically the 'unit/test-vcp'
test).

Bug: bluez/bluez#683
Bug: bluez/bluez#726
Closes: https://bugs.gentoo.org/925745
Signed-off-by: Sam James <sam@gentoo.org>
@macmpi
Copy link
Author

macmpi commented Apr 16, 2024

is back from 5.74 (x86 and x86_64)

@macmpi
Copy link
Author

macmpi commented Apr 17, 2024

@pv : saw you just nailed-down some memory allocation issues: would you see anything similar in running test_aics_unit_testcases (ref earlier segfault)?
(latest post-5.75 patches do not fix it yet).

@pv
Copy link
Contributor

pv commented Apr 17, 2024

If you get segfaults, it's simplest to compile with ASAN (AddressSanitizer) enabled, as if it crashes then the backtraces will usually tell you immediately what's going on. Valgrind in principle could also be used, but it's slower and ASAN probably changes the timings less, and for bluetoothd on PCs there's not a lot of reasons why not have ASAN enabled all the time.

@macmpi
Copy link
Author

macmpi commented Apr 17, 2024

Thanks for the tip.
I'm afraid I don't know how to get ASAN to work within Alpine CI builds which I rely upon to do my builds & tests...
So I'll leave it here and just disable that offending test, until someone with more skills eventually fix it for good.

@pv
Copy link
Contributor

pv commented Apr 17, 2024

Why not just ./bootstrap && ./configure --enable-asan && make check (and without ./bootstrap if building from release tarballs)? no need to involve some package system?

@omnivagant
Copy link

omnivagant commented Apr 24, 2024

gatt_notify_cb: Failed to send notification
Bail out! ERROR:src/shared/tester.c:949:test_io_recv: assertion failed (len == iov->iov_len): (5 == 6)
Aborted
FAIL unit/test-vcp (exit status: 134)

this is also failing with bluez 5.73 on our 3.20 package builders (where we're rebuilding world for the upcoming stable release) https://build.alpinelinux.org/buildlogs/build-3-20-x86_64/main/bluez/bluez-5.73-r0.log

algitbot pushed a commit to alpinelinux/aports that referenced this issue Apr 24, 2024
disable test_aics_unit_testcases (fails on x86 & x86_64)
bluez/bluez#726

ver 5.75:
- Fix issue with build system and header inclusion.

ver 5.74:
- Fix issue with not enabling Wideband Speech when available.
- Fix issue with UserspaceHID and Bluetooth Classic devices.
- Fix issue with checking for services being connected.
- Fix issue with GATT client connection creation.
- Fix issue with OBEX and small file transfers.
- Fix issue with handling pairing with Apple AirPods.
bell-sw pushed a commit to bell-sw/alpaquita-aports that referenced this issue Apr 29, 2024
[ commit 86624eb322d9b0016d57c35fd6aaf7a0a1a1bdb3 ]

disable test_aics_unit_testcases (fails on x86 & x86_64)
bluez/bluez#726

ver 5.75:
- Fix issue with build system and header inclusion.

ver 5.74:
- Fix issue with not enabling Wideband Speech when available.
- Fix issue with UserspaceHID and Bluetooth Classic devices.
- Fix issue with checking for services being connected.
- Fix issue with GATT client connection creation.
- Fix issue with OBEX and small file transfers.
- Fix issue with handling pairing with Apple AirPods.
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

5 participants