dhcp-4.2.0rc1 crashing

Cathy Almond cathya at isc.org
Sat Sep 25 22:12:37 UTC 2010


Places to submit bug reports and feature requests:

https://www.isc.org/software/dhcp/news

(Though this does sound like one we already might know about in relation
to omapi which will be addressed in a future release of DHCP 4.2.)

Cathy

On 24/09/10 18:59, Sean R. McNamara wrote:
>  Hi All,
> 
> We've been running into cases where our DHCP server is crashing.   
> We're running dhcp-4.2.0rc1 configured as follows:
> 
> ./configure --prefix=/usr/local/dhcpd/dhcpd-4.2.0rc1 --sysconfdir=/etc
> --localstatedir=/var --with-srv-lease-file=/var/lib/dhcpd/dhcpd.leases
> --with-srv6-lease-file=/var/lib/dhcpd/dhcpd6.leases
> --with-cli-lease-file=/var/db/dhclient.leases
> --with-cli6-lease-file=/var/db/dhclient6.leases --with-libbind
> --enable-paranoia
> 
> It seems there are two cases where we're getting crashes.  One where
> dhcpd fails with a SIGSEGV, another where it fails with SIGABRT.   I've
> been able to capture data surrounding both types of crashes
> 
> The SIGABRT coincides with the following error:
> 
> ../../../lib/dns/client.c:2831: REQUIRE((((uctx) != ((void *)0)) &&
> (((const isc__magic_t *)(uctx))->magic == ((('U') << 24 | ('c') << 16 |
> ('t') << 8 | ('x')))))) failed, back trace
> #0 0x8176a89 in ??
> #1 0x8176c67 in ??
> #2 0x80c45ec in ??
> #3 0x8094da3 in ??
> #4 0x8094fee in ??
> #5 0x80c2c9a in ??
> #6 0x804cfeb in ??
> #7 0x6dfe9c in ??
> #8 0x804a291 in ??
> Aborted
> 
> The SIGSEGV has even less detail.   An strace shows the last few calls
> being:
> 
> gettimeofday({1285348745, 8864}, NULL)  = 0
> read(6,
> "\0PV\201\25\234\0\f\317(\250\0\10\0E\0\2 at j\262@\0=\21I1\201\252\177q\201\252\5\4\0D\0C\2,\227M\1\1\6\0<\207D<\0\0\0\0\201\252\177q\0\0\0\0\0\0\0\0\0\0\0\0\0\31\333\343\\\254\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\202Sc5\1\3=\7\1\0\31\333\343\\\254<\vvfurnaceSTB7\t\1\3\6\f\17\34()*\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
> 1536) = 590
> time(NULL)                              = 1285348745
> write(4, "\0\0\0\7\0\0\2TL\234\335\211\306\236\1\0", 16) = 16
> write(4,
> "\0\0\0\0\0\0\0\4\201\252\177qA2\t\10\334\237\6\v\273\315\34\10\0D\7\1\0\f\317(\250\0\10\v\354\0\0\0\370=\276\277\1-y\0",
> 48) = 48
> write(4,
> "\1\1\6\0<\207D<\0\0\0\0\201\252\177q\0\0\0\0\0\0\0\0\0\0\0\0\0\31\333\343\\\254\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\202Sc5\1\3=\7\1\0\31\333\343\\\254<\vvfurnaceSTB7\t\1\3\6\f\17\34()*\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
> 548) = 548
> write(4, "\0\0\0\0", 4)                 = 4
> --- SIGSEGV (Segmentation fault) @ 0 (0) ---
> 
> 
> I'm wondering whether or not those nulls have something to do with it.
> 
> They also show up prior to the SIGABRT:
> 
> gettimeofday({1285343347, 59214}, NULL) = 0
> read(6,
> "\0PV\201\25\234\0\f\317(\250\0\10\0E\0\2@\246-@\0=\21\r\276\201\252\177i\201\252\5\4\0D\0C\2,\210\4\1\1\6\0\367\37\217@\0\0\0\0\201\252\177i\0\0\0\0\0\0\0\0\0\0\0\0\0\31\333\343a\212\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\202Sc5\1\3=\7\1\0\31\333\343a\212<\vvfurnaceSTB7\t\1\3\6\f\17\34()*\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
> 1536) = 590
> time(NULL)                              = 1285343347
> write(4, "\0\0\0\7\0\0\2TL\234\310s\230\35\30\v", 16) = 16
> write(4,
> "\0\0\0\0\0\0\0\4\201\252\177i\267\257\30\10,\375\210\277\344\t\362\267\0D\7\1\0\f\317(\250\0\362\267\6\0\3\0008\375\210\277\1\354\210\277",
> 48) = 48
> write(4,
> "\1\1\6\0\367\37\217@\0\0\0\0\201\252\177i\0\0\0\0\0\0\0\0\0\0\0\0\0\31\333\343a\212\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0c\202Sc5\1\3=\7\1\0\31\333\343a\212<\vvfurnaceSTB7\t\1\3\6\f\17\34()*\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\
0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
> 548) = 548
> write(4, "\0\0\0\0", 4)                 = 4
> open("/etc/ld.so.cache", O_RDONLY)      = 12
> fstat64(12, {st_dev=makedev(253, 0), st_ino=1768195,
> st_mode=S_IFREG|0644, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096,
> st_blocks=88, st_size=41307, st_atime=2010/09/24-11:48:56,
> st_mtime=2010/09/23-12:10:43, st_ctime=2010/09/24-01:41:02}) = 0
> mmap2(NULL, 41307, PROT_READ, MAP_PRIVATE, 12, 0) = 0xb7e76000
> close(12)                               = 0
> open("/lib/libgcc_s.so.1", O_RDONLY)    = 12
> read(12,
> "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`v\256\0004\0\0\0|\261\0\0\0\0\0\0004\0
> \0\5\0(\0\36\0\35\0\1\0\0\0\0\0\0\0\0`\256\0\0`\256\0|\251\0\0|\251\0\0\5\0\0\0\0\20\0\0\1\0\0\0|\251\0\0|\31\257\0|\31\257\0\234\1\0\0\310\2\0\0\6\0\0\0\0\20\0\0\2\0\0\0\224\251\0\0\224\31\257\0\224\31\257\0\330\0\0\0\330\0\0\0\6\0\0\0\4\0\0\0P\345td\244\225\0\0\244\365\256\0\244\365\256\0\f\4\0\0\f\4\0\0\4\0\0\0\4\0\0\0Q\345td\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\6\0\0\0\4\0\0\0C\0\0\0\20\0\0\0\20\0\0\0\t\0\0\0\3b`
> \20/\20`\0\0\7\4\204\0\202\210\0\4\221\4\214\10j\1\300\10\306\10\1\32\20\264O\20\222\f\22\f\n\211P\4\356\30\202\10\2\6\356\341+\255G\0G$\6\243-qvj#4\20\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\22\0\0\0\25\0\0\0\30\0\0\0\0\0\0\0\33\0\0\0\34\0\0\0\35\0\0\0\36\0\0\0\37\0\0\0
> \0\0\0\"\0\0\0#\0\0\0%\0\0\0(\0\0\0,\0\0\0-\0\0\0/\0\0\0001\0\0\0005\0\0\0007\0\0\0008\0\0\0:\0\0\0;\0\0\0\0\0\0\0\0\0\0\0<\0\0\0=\0\0\0?\0\0\0@\0\0\0\0\0\0\0A\0\0\0\0\0\0\0C\0\0\0\0\0\0\0\0\0\0\0D\0\0\0F\0\0\0H\0\0\0I\0\0\0L\0\0\0M\0\0\0N\0\0\0O\0\0\0R\0\0\0\0\0\0\0\0\0\0\0S\0\0\0\0\0\0\0U\0\0\0X\0\0\0Y\0\0\0",
> 512) = 512
> fstat64(12, {st_dev=makedev(253, 0), st_ino=6058680,
> st_mode=S_IFREG|0755, st_nlink=1, st_uid=0, st_gid=0, st_blksize=4096,
> st_blocks=96, st_size=46636, st_atime=2010/09/24-11:49:07,
> st_mtime=2009/12/09-16:15:49, st_ctime=2010/09/24-01:41:08}) = 0
> mmap2(0xae6000, 48196, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE,
> 12, 0) = 0xae6000
> mmap2(0xaf1000, 4096, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 12, 0xa) = 0xaf1000
> close(12)                               = 0
> munmap(0xb7e76000, 41307)               = 0
> write(2, "../../../lib/dns/client.c:2802: REQUIRE((((uctx) != ((void
> *)0)) && (((const isc__magic_t *)(uctx))->magic == ((('U') << 24 | ('c')
> << 16 | ('t') << 8 | ('x')))))) failed, back trace\n", 183) = 183
> write(2, "#0 0x8176a89 in ??\n", 19)    = 19
> write(2, "#1 0x8176c67 in ??\n", 19)    = 19
> write(2, "#2 0x80c7099 in ??\n", 19)    = 19
> write(2, "#3 0x8092d53 in ??\n", 19)    = 19
> write(2, "#4 0x80796d7 in ??\n", 19)    = 19
> write(2, "#5 0x8052214 in ??\n", 19)    = 19
> write(2, "#6 0x805567c in ??\n", 19)    = 19
> write(2, "#7 0x805622d in ??\n", 19)    = 19
> write(2, "#8 0x809ff95 in ??\n", 19)    = 19
> write(2, "#9 0x8090d76 in ??\n", 19)    = 19
> write(2, "#10 0x80bc196 in ??\n", 20)   = 20
> write(2, "#11 0x8197cb2 in ??\n", 20)   = 20
> write(2, "#12 0x819dd69 in ??\n", 20)   = 20
> write(2, "#13 0x818d013 in ??\n", 20)   = 20
> write(2, "#14 0x818d278 in ??\n", 20)   = 20
> write(2, "#15 0x8092c53 in ??\n", 20)   = 20
> write(2, "#16 0x804c3f6 in ??\n", 20)   = 20
> write(2, "#17 0x6dfe9c in ??\n", 19)    = 19
> write(2, "#18 0x804a291 in ??\n", 20)   = 20
> rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
> tgkill(15452, 15452, SIGABRT)           = 0
> --- SIGABRT (Aborted) @ 0 (0) ---
> 
> 
> I have full strace output and dhcp trace files for each failure type.  
> I'd appreciate any assistance or advice the group could offer.   Has any
> one else run into similar issues?     Is there an official way to submit
> a bug report?
> 
> Thank you for your help,
> 
> ..Sean.
> 
> 
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> dhcp-users mailing list
> dhcp-users at lists.isc.org
> https://lists.isc.org/mailman/listinfo/dhcp-users




More information about the dhcp-users mailing list