On Fri, 12 Sep 2025 00:09:51 -0400 "Daniel Richard G." <[email protected]> wrote: > Package: dhcpcd-base > Version: 1:10.1.0-11 > > I am seeing a segfault from dhcpcd during the boot process. It is > recorded in syslog with the following: > > 2025-09-09T23:16:19.340385-04:00 test-debian64 kernel: dhcpcd.real[775]: > segfault at 20 ip 000055e44c77ed0f sp 00007fff3392fca0 error 4 in > dhcpcd.real[2cd0f,55e44c75b000+3e000] likely on CPU 0 (core 0, socket 0) > 2025-09-09T23:16:19.340392-04:00 test-debian64 kernel: Code: e8 fd ff ff > 31 d2 66 41 89 54 24 60 e9 8e fe ff ff e8 15 c9 fd ff 0f 1f 44 00 00 f3 0f 1e > fa 41 54 48 8d 57 38 41 89 f4 55 53 <48> 8b 47 20 48 89 fb 48 8d 3d 14 bf 01 > 00 48 8d 70 18 31 c0 e8 48 > > The daemon is being invoked from NetworkManager. The crash appears to > be the cause of an unusual delay during boot for the systemd unit > "NetworkManager-wait-online.service", but the system does eventually > join the network. > > I was not able to obtain a core dump until I rebuilt the package with > the --disable-privsep compile-time option. Here is the backtrace from > the core dump: > > Program terminated with signal SIGSEGV, Segmentation fault. > #0 0x00005555734227da in ipv4_deladdr (addr=0x0, keeparp=0) > at ./src/ipv4.c:527 > 527 logdebugx("%s: deleting IP address %s", > (gdb) bt > #0 0x00005555734227da in ipv4_deladdr (addr=0x0, keeparp=0) > at ./src/ipv4.c:527 > #1 0x0000555573422e9a in ipv4_applyaddr (arg=0x5555829fd9b0) > at ./src/ipv4.c:763 > #2 0x000055557341d3c5 in dhcp_drop (ifp=0x5555829fd9b0, > reason=0x55557344258f "EXPIRE") at ./src/dhcp.c:2806 > #3 0x00005555734211c2 in dhcp_handleifa (cmd=21, ia=0x5555829da860, pid=753) > at ./src/dhcp.c:4215 > #4 0x000055557342343b in ipv4_handleifa (ctx=0x7fffff4f2500, cmd=21, > ifs=0x5555829fcc70, ifname=0x5555829fd9c8 "enp0s3", addr=0x7fffff4ee184, > mask=0x7fffff4ee188, brd=0x7fffff4ee18c, addrflags=0, pid=753) > at ./src/ipv4.c:953 > #5 0x00005555734130ad in link_addr (ctx=0x7fffff4f2500, ifp=0x5555829fd9b0, > nlm=0x7fffff4ee370) at ./src/if-linux.c:886 > #6 0x000055557341347e in link_netlink (ctx=0x7fffff4f2500, arg=0x0, > nlm=0x7fffff4ee370) at ./src/if-linux.c:998 > #7 0x000055557341288d in if_getnetlink (ctx=0x7fffff4f2500, > iov=0x7fffff4ee360, fd=8, flags=64, cb=0x555573413403 <link_netlink>, > cbarg=0x0) at ./src/if-linux.c:650 > #8 0x000055557341389e in if_handlelink (ctx=0x7fffff4f2500) > at ./src/if-linux.c:1102 > #9 0x00005555733f7d75 in dhcpcd_handlelink (arg=0x7fffff4f2500, events=1) > at ./src/dhcpcd.c:1141 > #10 0x00005555733fda4e in eloop_run_ppoll (eloop=0x5555829d8690, > ts=0x7fffff4f2440, signals=0x7fffff4f2740) at ./src/eloop.c:1106 > #11 0x00005555733fdc8e in eloop_start (eloop=0x5555829d8690, > signals=0x7fffff4f2740) at ./src/eloop.c:1228 > #12 0x00005555733fbd33 in main (argc=2, argv=0x7fffff4f2a48, > envp=0x7fffff4f2a60) at ./src/dhcpcd.c:2651 > > > If I put a simple workaround into ipv4_deladdr() of the form > > if (!addr) return 0; > > then dhcpcd does not segfault, but behaves somewhat erratically, > setting up and then releasing the network connection two or three times
Does it also segfault with the 1:10.2.4-4 that currently sits in Testing? Martin-Éric

