named crashed with SIGABRT in assertion_failed()

Bug #1552801 reported by Ertan Günay on 2016-03-03
This bug affects 27 people
Affects Status Importance Assigned to Milestone
bind9 (Ubuntu)
LaMont Jones

Bug Description

After last upgrade and reboot, this problem happened.

ProblemType: Crash
DistroRelease: Ubuntu 16.04
Package: bind9 1:9.10.3.dfsg.P2-4
ProcVersionSignature: Ubuntu 4.4.0-10.25-generic 4.4.3
Uname: Linux 4.4.0-10-generic x86_64
ApportVersion: 2.20-0ubuntu3
Architecture: amd64
CrashCounter: 1
Date: Thu Mar 3 18:47:11 2016
ExecutablePath: /usr/sbin/named
InstallationDate: Installed on 2015-10-17 (138 days ago)
InstallationMedia: Ubuntu 15.10 "Wily Werewolf" - Alpha amd64 (20151016)
ProcCmdline: BOOT_IMAGE=/boot/vmlinuz-4.4.0-10-generic root=UUID=58c3c7d9-9e8f-4ae4-89dd-92ecf4b1fc8a ro quiet splash vt.handoff=7
 bind9utils 1:9.10.3.dfsg.P2-4
 apparmor 2.10-3ubuntu2
Signal: 6
SourcePackage: bind9
 ?? ()
 isc_assertion_failed () from /usr/lib/x86_64-linux-gnu/
 isc.mem_destroy () from /usr/lib/x86_64-linux-gnu/
 isc_mem_destroy () from /usr/lib/x86_64-linux-gnu/
 ?? ()
Title: named crashed with SIGABRT in isc_assertion_failed()
UpgradeStatus: No upgrade log present (probably fresh install)

Ertan Günay (ergunay) wrote :

 assertion_failed (file=<optimized out>, line=<optimized out>, type=<optimized out>, cond=<optimized out>) at ../../../bin/named/main.c:232
 isc_assertion_failed (file=file@entry=0x7f2b23655798 "../../../lib/isc/mem.c", line=line@entry=1229, type=type@entry=isc_assertiontype_require, cond=cond@entry=0x7f2b236558bc "ctx->references == 1") at ../../../lib/isc/assertions.c:58
 isc__mem_destroy (ctxp=0x5626f0126c88 <ns_g_mctx>) at ../../../lib/isc/mem.c:1229
 isc_mem_destroy (mctxp=0x5626f0126c88 <ns_g_mctx>) at ../../../lib/isc/mem.c:2770
 main (argc=<optimized out>, argv=<optimized out>) at ../../../bin/named/main.c:1349

Changed in bind9 (Ubuntu):
importance: Undecided → Medium
summary: - named crashed with SIGABRT in isc_assertion_failed()
+ named crashed with SIGABRT in assertion_failed()
tags: removed: need-amd64-retrace
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in bind9 (Ubuntu):
status: New → Confirmed
Brian Murray (brian-murray) wrote :

The Error Tracker shows this bug occurring a lot:

Changed in bind9 (Ubuntu):
importance: Medium → High
information type: Private → Public
Changed in bind9 (Ubuntu):
milestone: none → xenial-updates
LaMont Jones (lamont) wrote :

Can I get your BIND configuration? Either to the bug, or privately to <email address hidden> if you are not comfortable posting it.

LaMont Jones (lamont) wrote :

Nevermind.. I've reproduced it, and will be working on it. FWIW, the error is occurring during the daemon shutdown, though that's not really a big help. :/

Changed in bind9 (Ubuntu):
assignee: nobody → LaMont Jones (lamont)
Ertan Günay (ergunay) wrote :

Sorry to late answer.
This error happens on only the computer in home.
And what should I do to overcome it.

Changed in bind9 (Ubuntu Xenial):
status: New → Triaged
importance: Undecided → Critical
LaMont Jones (lamont) wrote :


At shutdown, rather than terminating normally, named aborts with an assertion failure, pointing at a memory leak. This is confusing to users, and could potentially mask an actual memory-leak that could affect runtime operation. (The actual leaked memory is a control structure that is simply not deleted due to a bad patch migration.

[test case]
stop named, remove any related file in /var/crash, start it, and stop it again. no crash file should exist. If present, the trace shows main calling isc_mem_destroy (and we're dying in it's assertion that no memory has been leaked.)

[regression potential]
The root cause of the defect here was part of the chroot-init patch (no longer used) leaked into the random_1 patch when the patches were split up as part of going to quilt. The result was that the dst_lib_destroy() function was not called, causing the control structure for same to be "leaked" at shutdown. Other than all of the normal "a rebuild could cause anything to be broken", I don't see any issues from calling the function that upstream wants/needs t have called as we are shutting down. The worst case direct regression from from the change is that named would crash in a different way, at shutdown time.

[other info]

LaMont Jones (lamont) wrote :

diff -urN bind9-9.10.3.dfsg.P4-8/debian/changelog bind9-9.10.3.dfsg.P4-8ubuntu1/debian/changelog
--- bind9-9.10.3.dfsg.P4-8/debian/changelog 2016-04-13 13:20:25.000000000 -0600
+++ bind9-9.10.3.dfsg.P4-8ubuntu1/debian/changelog 2016-04-26 19:17:47.000000000 -0600
@@ -1,3 +1,10 @@
+bind9 (1:9.10.3.dfsg.P4-8ubuntu1) xenial-proposed; urgency=medium
+ * Fix bad patch from when we switched to quilt. Closes: #820847 LP:
+ #1552801, #1549788, #1553460
+ -- LaMont Jones <email address hidden> Tue, 26 Apr 2016 16:30:06 -0600
 bind9 (1:9.10.3.dfsg.P4-8) unstable; urgency=medium

   [Timo Aaltonen]
diff -urN bind9-9.10.3.dfsg.P4-8/debian/patches/20_random_1.diff bind9-9.10.3.dfsg.P4-8ubuntu1/debian/patches/20_random_1.diff
--- bind9-9.10.3.dfsg.P4-8/debian/patches/20_random_1.diff 2016-04-13 13:20:25.000000000 -0600
+++ bind9-9.10.3.dfsg.P4-8ubuntu1/debian/patches/20_random_1.diff 2016-04-26 19:17:47.000000000 -0600
@@ -28,15 +28,6 @@
   else if (!strcasecmp(str, "cyclic"))
    mode = 0;
-@@ -6923,8 +6925,6 @@
- if (server->tkeyctx != NULL)
- dns_tkeyctx_destroy(&server->tkeyctx);
-- dst_lib_destroy();
- isc_event_free(&server->reload_event);
- INSIST(ISC_LIST_EMPTY(server->viewlist));
 --- a/lib/bind9/check.c
 +++ b/lib/bind9/check.c
 @@ -147,6 +147,7 @@

Hello Ertan, or anyone else affected,

Accepted bind9 into xenial-proposed. The package will build now and be available at in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, and change the tag from verification-needed to verification-done. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at . Thank you in advance!

Changed in bind9 (Ubuntu Xenial):
status: Triaged → Fix Committed
tags: added: verification-needed
LaMont Jones (lamont) wrote :

Running 1:9.10.3.dfsg.P4-8, I see core files in /var/crash. Upgrading to 1:9.10.3.P4-8ubuntu1 (from xenial-proposed) I no longer see the error (other than during the upgrade, when -8 shuts down for the last time.)

tags: added: verification-done
removed: verification-needed
Changed in bind9 (Ubuntu Xenial):
milestone: none → xenial-updates
Changed in bind9 (Ubuntu):
milestone: xenial-updates → none
Ertan Günay (ergunay) wrote :


I also confirm that bind9 from xenial-proposed resolved this bug.

Ertan Günay (ergunay) wrote :

Last a few day, I haven't seen this problem.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package bind9 - 1:9.10.3.dfsg.P4-9

bind9 (1:9.10.3.dfsg.P4-9) unstable; urgency=medium

  * Fix bad patch from when we switched to quilt. Closes: #820847 LP:
    #1552801, #1549788, #1553460
  * freshen patch to remove fuzz.

 -- LaMont Jones <email address hidden> Tue, 26 Apr 2016 15:17:58 -0600

Changed in bind9 (Ubuntu):
status: Confirmed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package bind9 - 1:9.10.3.dfsg.P4-8ubuntu1

bind9 (1:9.10.3.dfsg.P4-8ubuntu1) xenial-proposed; urgency=medium

  * Fix bad patch from when we switched to quilt. Closes: #820847 LP:
    #1552801, #1549788, #1553460

 -- LaMont Jones <email address hidden> Tue, 26 Apr 2016 16:30:06 -0600

Changed in bind9 (Ubuntu Xenial):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for bind9 has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.