Re: BUG: dhcpcd 6.3.1 crashes after an interface signals carrier detection.
Roy Marples
Thu Mar 06 09:29:24 2014
Hi Sergey
On 06/03/2014 8:03, Sergey Kvachonok wrote:
dhcpcd repeatably crashed on my systemd system when lan0 went up.
The core dump retrieved from journald looks like this:
Core was generated by `/sbin/dhcpcd -q -B'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x000000000000000e in ?? ()
(gdb) bt
#0 0x000000000000000e in ?? ()
#1 0x00007f2cbc0c2e8c in udev_handle_device (ctx=0x7fffe9609c20) at
udev.c:95
#2 0x0000000000406de5 in eloop_start (dctx=dctx@entry=0x7fffe9609c20)
at eloop.c:398
#3 0x00000000004032a1 in main (argc=<optimized out>,
argv=0x7fffe9609ef8) at dhcpcd.c:1504
Brief investigation showed that the udev plugin initialization routine
was storing a pointer to the temporary storage (see dev.c) which caused
a crash
when referencing it from another context.
I used the patch shown below to temporarily fix it:
Fixed here:
http://roy.marples.name/projects/dhcpcd/fdiff?v1=9eeff56f68947245&v2=250d49c8fb9fb0ad&sbs=1
Thanks!
Roy
Archive administrator: postmaster@marples.name