#1081914 feedbackd: FTBFS on hppa - assertion failed (g_list_length (leds) == 1): (0 == 1)

Package:
src:feedbackd
Source:
src:feedbackd
Submitter:
John David Anglin
Date:
2024-09-16 20:09:02 UTC
Severity:
normal
Tags:
#1081914#5
Date:
2024-09-15 22:08:21 UTC
From:
To:
Dear Maintainer,

Package fails to build:
8/9 fbd-dev-led          FAIL            0.19s   killed by signal 6 SIGABRT
――――――――――――――――――――――――――――――――――――― ✀  ―――――――――――――――――――――――――――――――――――――
stdout:
TAP version 13
# random seed: R02S460381b4ca5b4369d3bb9b84ad5810b4
1..5
# Start of feedbackd tests
# Start of fbd tests
# Start of dev tests
# Start of led tests
# DEBUG: umockdev.vala:127: Created udev test bed /tmp/umockdev.HYGUS2
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status (subsystem leds)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00 (subsystem acpi)
# DEBUG: umockdev.vala:1565: enable: failed to remove /disabled flag, ignoring: No such file or directory
not ok /feedbackd/fbd/dev/led/simple - ERROR:../tests/test-fbd-dev-led.c:31:test_fbd_dev_led_simple: assertion failed (g_list_length (leds) == 1): (0 == 1)
Bail out!
stderr:
**
ERROR:../tests/test-fbd-dev-led.c:31:test_fbd_dev_led_simple: assertion failed (g_list_length (leds) == 1): (0 == 1)
――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

Full log is here:
https://buildd.debian.org/status/fetch.php?pkg=feedbackd&arch=hppa&ver=0.4.1-1&stamp=1724073857&raw=0

Running under gdb, we have:
(gdb) break test-fbd-dev-led.c:31
Breakpoint 1 at 0x410088f0: file ../tests/test-fbd-dev-led.c, line 31.
(gdb) r
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /home/dave/debian/feedbackd/feedbackd-0.4.1/_build/tests/test-fbd-dev-led
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/hppa-linux-gnu/libthread_db.so.1".
TAP version 14
# random seed: R02Sde8102d5a1d3016362c45737e203cb85
1..5
# Start of feedbackd tests
# Start of fbd tests
# Start of dev tests
# Start of led tests
[New Thread 0xf653e040 (LWP 4882)]
# DEBUG: umockdev.vala:127: Created udev test bed /tmp/umockdev.ZJT5T2
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status
[New Thread 0xf5d3d040 (LWP 4884)]
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status (subsystem leds)
[New Thread 0xf553c040 (LWP 4885)]
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00 (subsystem acpi)
# DEBUG: umockdev.vala:1565: enable: failed to remove /disabled flag, ignoring: No such file or directory

Thread 1 "test-fbd-dev-le" hit Breakpoint 1, test_fbd_dev_led_simple (
    fixture=<optimized out>, unused=<optimized out>)
    at ../tests/test-fbd-dev-led.c:31
31        g_assert_cmpint (g_list_length (leds), ==, 1);
(gdb) p leds
$1 = (GUdevDevice_listautoptr) 0x0

Same error occurs on alpha.

Regards,
Dave Anglin

#1081914#10
Date:
2024-09-16 08:53:00 UTC
From:
To:
Hi,
seems to be happening but the result of
`g_udev_client_query_by_subsystem` is empty. This isn't even feedbackd
related code, just plain gudev + udevmock so I wonder what could be
different on alpha / hppa?

Tried to reproduce on panama.debian.net but can't get a sid schroot with
build-deps there:

$ dd-schroot-cmd -c sid_hppa-dchroot-8ecf7517-dd36-44d5-a4a2-a97d01dcb458 apt-get update
/usr/local/bin/dd-schroot-cmd:59: SyntaxWarning: invalid escape sequence '\.'
  if re.search('^\.|~$|[^0-9a-zA-Z_.~-]', session):
  File "/usr/local/bin/dd-schroot-cmd", line 124
    except OSError, e:

In case someone wants to investigate: This runs the single failing test:

  umockdev-run --  _build/tests/test-fbd-dev-led

Cheers,
 -- Guido

#1081914#15
Date:
2024-09-16 14:11:25 UTC
From:
To:
Hi Guido,

I've CC'd Helge.  He maintains panama.
Starting program: /home/dave/debian/feedbackd/feedbackd-0.4.1/_build/tests/test-fbd-dev-led
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/hppa-linux-gnu/libthread_db.so.1".
TAP version 14
# random seed: R02S4e9b3a9c65f4011e3a16fa4bc6b26075
1..5
# Start of feedbackd tests
# Start of fbd tests
# Start of dev tests
# Start of led tests
[New Thread 0xf653e040 (LWP 19957)]
# DEBUG: umockdev.vala:127: Created udev test bed /tmp/umockdev.IMABU2
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status
[New Thread 0xf5d3d040 (LWP 19960)]
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00/leds/blue:status (subsystem leds)
[New Thread 0xf553c040 (LWP 19961)]
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00/PURI4543:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00/LNXSYBUS:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00/LNXSYBUS:00 (subsystem acpi)
# DEBUG: umockdev.vala:1307: parsing device description for /devices/LNXSYSTM:00
# DEBUG: umockdev.vala:1385: creating device /devices/LNXSYSTM:00 (subsystem acpi)
# DEBUG: umockdev.vala:1565: enable: failed to remove /disabled flag, ignoring: No such file or directory

Thread 2.1 "test-fbd-dev-le" hit Breakpoint 2, test_fbd_dev_led_simple (
     fixture=<optimized out>, unused=<optimized out>)
     at ../tests/test-fbd-dev-led.c:28
28        leds = g_udev_client_query_by_subsystem (client, "leds");
(gdb) p client
$2 = 0x4101d1c8
(gdb) p *client
$3 = {parent = {g_type_instance = {g_class = Python Exception <class 'gdb.error'>: No type named TypeNode.
}, ref_count = 1, qdata = 0x0},
   priv = 0x4101d1b0}
(gdb) c
Continuing.

Thread 2.1 "test-fbd-dev-le" hit Breakpoint 1, test_fbd_dev_led_simple (
     fixture=<optimized out>, unused=<optimized out>)
     at ../tests/test-fbd-dev-led.c:31
31        g_assert_cmpint (g_list_length (leds), ==, 1);
(gdb) p leds
$4 = (GUdevDevice_listautoptr) 0x0

Dave

#1081914#20
Date:
2024-09-16 14:51:03 UTC
From:
To:
Latest version of libgudev failed to build on alpha and hppa:
https://buildd.debian.org/status/package.php?p=libgudev&suite=sid

Dave

#1081914#25
Date:
2024-09-16 17:18:13 UTC
From:
To:
Hi,

It fails in the tests that enumerate devices so likely fixing gudev will fix this here too.
 -- Guido

#1081914#30
Date:
2024-09-16 19:21:25 UTC
From:
To:
Probably problem is in umockdev.  Build fails with segmentation fault in test-umockdev-vala:
do_page_fault() command='test-umockdev-v' type=15 address=0x00000010 in libumockdev.so.0.3.0[26167,f8e82000+37000]
trap #15: Data TLB miss fault, vm_start = 0x00010000, vm_end = 0x00025000
command line: /home/dave/debian/umockdev/umockdev-0.18.4/obj-hppa-linux-gnu/test-umockdev-vala

Looks like a NULL pointer issue.

I tried duplicating this manually but I haven't been able to duplicate segmentation fault.  Sixth test aborts
trying to open /dev/tty:

ok 5 /umockdev-testbed-vala/selinux
# GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created
# DEBUG: umockdev.vala:127: Created udev test bed /tmp/umockdev.OQ5VT2
# DEBUG: umockdev.vala:1355: parsing device description for /devices/mycam
# DEBUG: umockdev.vala:1433: creating device /devices/mycam (subsystem usb)
# DEBUG: umockdev.vala:1479: create_node_for_device: creating file device /tmp/umockdev.OQ5VT2/dev/001
# DEBUG: umockdev.vala:829: umockdev_testbed_uevent: lazily initializing uevent_sender
# DEBUG: umockdev.vala:833: umockdev_testbed_uevent: sending uevent add for device /sys/devices/mycam
**
ERROR:test-umockdev-vala.p/tests/test-umockdev-vala.c:1134:t_usbfs_ioctl_static: assertion failed (ioctl (fd2, TIOCSBRK, 0) == 0): (-1 == 0)
not ok /umockdev-testbed-vala/usbfs_ioctl_static - ERROR:test-umockdev-vala.p/tests/test-umockdev-vala.c:1134:t_usbfs_ioctl_static: assertion
failed (ioctl (fd2, TIOCSBRK, 0) == 0): (-1 == 0)
Bail out!
Aborted (core dumped)

clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=0, tv_nsec=0}, 0xf9374bd0) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
access("/tmp/umockdev.G8C1T2/disabled", F_OK) = -1 ENOENT (No such file or directory)
access("/tmp/umockdev.G8C1T2/dev/tty", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/dev/tty", O_RDWR|O_LARGEFILE) = 19
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
access("/tmp/umockdev.G8C1T2/ioctl//dev/tty", F_OK) = -1 ENOENT (No such file or directory)
socket(AF_UNIX, SOCK_STREAM, 0)         = 20
connect(20, {sa_family=AF_UNIX, sun_path="/tmp/umockdev.G8C1T2/ioctl/_default"}, 110) = 0
statx(19, "", AT_STATX_SYNC_AS_STAT|AT_NO_AUTOMOUNT|AT_EMPTY_PATH, STATX_BASIC_STATS, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID,
stx_attributes=0, stx_mode=S_IFCHR|0666, stx_size=0, ...}) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
send(20, "\0\0\0\1\0\0T'\0\0\0\0", 12, 0) = 12
recv(20, "\0\0\0\3\377\377\377\377\0\0\0\31", 12, 0) = 12
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=0, tv_nsec=0}, 0xf9374bd0) = 0
write(2, "**\nERROR:test-umockdev-vala.p/te"..., 144**
ERROR:test-umockdev-vala.p/tests/test-umockdev-vala.c:1134:t_usbfs_ioctl_static: assertion failed (ioctl (fd2, TIOCSBRK, 0) == 0): (-1 == 0)
) = 144
write(1, "not ok /umockdev-testbed-vala/us"..., 192not ok /umockdev-testbed-vala/usbfs_ioctl_static -
ERROR:test-umockdev-vala.p/tests/test-umockdev-vala.c:1134:t_usbfs_ioctl_static: assertion failed (ioctl (fd2, TIOCSBRK, 0) == 0): (-1 == 0)
) = 192
write(1, "Bail out!\n", 10Bail out!
)             = 10
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
gettid()                                = 2817
getpid()                                = 2817
tgkill(2817, 2817, SIGABRT)             = 0
--- SIGABRT {si_signo=SIGABRT, si_code=SI_TKILL, si_pid=2817, si_uid=1000} ---
+++ killed by SIGABRT (core dumped) +++
Aborted

All other umockdev tests seem to run okay with my manual setup.

Dave

#1081914#35
Date:
2024-09-16 20:06:55 UTC
From:
To:

This ^^ dd-schroot-cmd command should work now on panama if you want to try...

Helge