mer-hybris / libgbinder

GLib-style interface to binder
BSD 3-Clause "New" or "Revised" License
51 stars 40 forks source link

`make test` failure #129

Closed hughsie closed 2 months ago

hughsie commented 3 months ago

I'm getting:

ERROR:unit_local_reply.c:449:test_local_object: assertion failed (data->bytes->len == BINDER_OBJECT_SIZE_64): (28 == 24)
not ok /local_reply/local_object - ERROR:unit_local_reply.c:449:test_local_object: assertion failed (data->bytes->len == BINDER_OBJECT_SIZE_64): (28 == 24)

This is on Fedora 40 with ligbinder from git master branch -- if you can give me some pointers I can investigate some more. Thanks!

monich commented 3 months ago

I downloaded Fedora 40 from https://fedoraproject.org/workstation/download installed it in a VM:

$ uname -a
Linux fedora 6.8.5-301.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Apr 11 20:00:10 UTC 2024 x86_64 GNU/Linux
$ cat /etc/os-release 
NAME="Fedora Linux"
VERSION="40 (Workstation Edition)"
ID=fedora
VERSION_ID=40
VERSION_CODENAME=""
PLATFORM_ID="platform:f40"
PRETTY_NAME="Fedora Linux 40 (Workstation Edition)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:40"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f40/system-administrators-guide/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=40
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=40
SUPPORT_END=2025-05-13
VARIANT="Workstation Edition"
VARIANT_ID=workstation
$

and couldn't reproduce the problem

monich commented 3 months ago

Hmm, do you happen to have /etc/gbinder.conf or /etc/gbinder.d/*.conf files on you system? Unit tests shouldn't depend on those but they did in the past and it could be that this dependency wasn't completely eliminated.

hughsie commented 3 months ago

Aha, yes I do, a /etc/gbinder.conf with the contents:

[Protocol]
Default = aidl3
/dev/binder = aidl3
#/dev/hwbinder = hidl

[ServiceManager]
Default = aidl3
/dev/binder = aidl3
/dev/hwbinder = hidl

Deleting that allows all the tests to pass. I also forgot to say when opening this report -- thanks for providing libgbinder -- it's making my life so much simpler. I really do appreciate it.

monich commented 2 months ago

c6b09a1 should fix the problem in master

hughsie commented 2 months ago

It does, thanks!