Bug#1119150: "udevadm test" gives "free(): invalid pointer"
Philipp Marek
philipp at marek.priv.at
Mon Oct 27 17:13:07 GMT 2025
Package: udev
X-Debbugs-Cc: philipp at marek.priv.at
Version: 258.1-1
Severity: important
While investigating a problem with pcscd[1]
I noticed a crash in udevadm:
# gdb --args udevadm test -a add
/devices/pci0000:00/0000:00:08.1/0000:07:00.3/usb1/1-2
...
Queued commands:
RUN{builtin} : uaccess
Unloaded hardware database.
Unloaded kernel module index.
Unloaded link configuration context.
free(): invalid pointer
Program received signal SIGABRT, Aborted.
__GI_abort () at ./stdlib/abort.c:91
warning: 91 ./stdlib/abort.c: Datei oder Verzeichnis nicht
gefunden
(gdb) bt
#0 __GI_abort () at ./stdlib/abort.c:91
#1 0x00007ffff78d6291 in __libc_message_impl
(fmt=fmt at entry=0x7ffff7a5832d "%s\n") at
../sysdeps/posix/libc_fatal.c:134
#2 0x00007ffff794b465 in malloc_printerr
(str=str at entry=0x7ffff7a56100 "free(): invalid pointer") at
./malloc/malloc.c:5829
#3 0x00007ffff79503dc in _int_free_check (av=0x7ffff7a94ac0
<main_arena>, p=0x7fffffff66c0, size=<optimized out>) at
./malloc/malloc.c:4560
#4 _int_free (av=0x7ffff7a94ac0 <main_arena>, p=0x7fffffff66c0,
have_lock=0) at ./malloc/malloc.c:4692
#5 __GI___libc_free (mem=0x7fffffff66d0) at ./malloc/malloc.c:3476
#6 0x00007ffff7e2329e in ?? () from
/usr/lib/x86_64-linux-gnu/systemd/libsystemd-shared-258.so
#7 0x00007ffff7d4ef93 in _hashmap_clear () from
/usr/lib/x86_64-linux-gnu/systemd/libsystemd-shared-258.so
#8 0x00007ffff7d4f032 in _hashmap_free () from
/usr/lib/x86_64-linux-gnu/systemd/libsystemd-shared-258.so
#9 0x00007ffff7e17699 in sd_device_unref () from
/usr/lib/x86_64-linux-gnu/systemd/libsystemd-shared-258.so
#10 0x000055555559e049 in ?? ()
#11 0x00005555555802b7 in ?? ()
#12 0x0000555555573153 in ?? ()
#13 0x00007ffff78d6ca8 in __libc_start_call_main
(main=main at entry=0x555555572f40, argc=argc at entry=5,
argv=argv at entry=0x7fffffffeb88) at
../sysdeps/nptl/libc_start_call_main.h:58
#14 0x00007ffff78d6d65 in __libc_start_main_impl
(main=0x555555572f40, argc=5, argv=0x7fffffffeb88, init=<optimized out>,
fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffeb78) at ../csu/libc-start.c:360
#15 0x0000555555575551 in ?? ()
Is that enough data or should I
show locals for some frames as well?
Ad 1: Sees a hardware token when run manually as root,
but not when started via systemd, I guess that
access rights on /dev/bus/usb/*/* don't work out
-- Package-specific info:
-- System Information:
Debian Release: forky/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1,
'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 6.16.10+deb14-rt-amd64 (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=de_AT.UTF-8, LC_CTYPE=de_AT.UTF-8 (charmap=UTF-8),
LANGUAGE=de_AT:de
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages udev depends on:
ii libblkid1 2.41.2-1
ii libc6 2.41-12
ii libkmod2 34.2-2
ii libsystemd-shared 258.1-1
ii libudev1 258.1-1
ii systemd [systemd-sysusers] 258.1-1
udev recommends no packages.
udev suggests no packages.
Versions of packages udev is related to:
ii systemd 258.1-1
-- no debconf information
More information about the Pkg-systemd-maintainers
mailing list