[Opendnssec-user] segfault error 6 in libc-2.23.so

PGNet Dev pgnet.dev at gmail.com
Sun Jan 8 20:58:35 UTC 2017


Missed the early part of this particular discussion, but just an fyi, in case it's of help :

With self-built ODS2/head, I'd seen segfaults in libc on launch as well, for both signerd/enforcerd.

I never got as far as GDB -- logs showed my issue, wrong/changed perms on the PID dir, e.g.

	...
	Jan 08 10:55:16 test.int systemd[1]: Starting OpenDNSSEC v2 Signer daemon...
	Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: PID file /var/run/opendnssec/signerd.pid not readable (yet?) after start: No such file or directory
	Jan 08 10:55:16 test.int ods-signerd[11212]: [cmdhandler] unable to create cmdhandler: bind() failed: No such file or directory
	Jan 08 10:55:16 test.int ods-signerd[11212]: [engine] setup failed: Command handler error
	Jan 08 10:55:16 test.int ods-signerd[11212]: Segmentation fault
	Jan 08 10:55:16 test.int ods-signerd[11212]: :
	Jan 08 10:55:16 test.int ods-signerd[11212]:   unknown
	Jan 08 10:55:16 test.int ods-signerd[11212]:   unknown
	Jan 08 10:55:16 test.int ods-signerd[11212]:   unknown
	Jan 08 10:55:16 test.int ods-signerd[11212]:   unknown
	Jan 08 10:55:16 test.int ods-signerd[11212]:   __libc_start_main
	Jan 08 10:55:16 test.int ods-signerd[11212]:   unknown
	Jan 08 10:55:16 test.int sh[11211]: Segmentation fault:
	Jan 08 10:55:16 test.int sh[11211]: unknown
	Jan 08 10:55:16 test.int sh[11211]: unknown
	Jan 08 10:55:16 test.int sh[11211]: unknown
	Jan 08 10:55:16 test.int sh[11211]: unknown
	Jan 08 10:55:16 test.int sh[11211]: __libc_start_main
	Jan 08 10:55:16 test.int sh[11211]: unknown
	Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Daemon never wrote its PID file. Failing.
	Jan 08 10:55:16 test.int systemd[1]: Failed to start OpenDNSSEC v2 Signer daemon.
	Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Unit entered failed state.
	Jan 08 10:55:16 test.int systemd[1]: ods-signerd.service: Failed with result 'resources'.
	Jan 08 10:55:18 test.int systemd-coredump[11213]: Process 11212 (ods-signerd) of user 0 dumped core.
	...

and similar for enforcerd.

For my

	cat /etc/systemd/system/ods-signer.service
		...
		[Service]
		Type=forking
		PIDFile=/var/run/opendnssec/signerd.pid
		...

	cat /etc/systemd/system/ods-enforcer.service
		...
		[Service]
		Type=forking
		PIDFile=/var/run/opendnssec/enforcerd.pid
		...

I'd manually created, chmod'd & chown'd the pid dir, but at some point something (maybe me, inadvertently?) had changed the perms :-/

Simple fix

	cat /etc/tmpfiles.d/opendnssec.conf
		...
	+	D /var/run/opendnssec     0755 opendnssec opendnssec -
		...
	systemd-tmpfiles --create /etc/tmpfiles.d/opendnssec.conf

worked around the problem here.

I say workaround, rather than fix, as, of course, segfault-ing for lack of a PID file/dir is not a sane exit ...





More information about the Opendnssec-user mailing list