Systemd crashes with a simple set of target units

Bug #1554861 reported by Jeremy L
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
systemd (Ubuntu)
Fix Released
High
Martin Pitt

Bug Description

We are seeing systemd on the Ubuntu 16.04 crash when starting a very basic collection of service units. The crash appears in the logs as follows:

  systemd[1]: Assertion '*v' failed at ../src/core/timer.c:337, function add_random(). Aborting.
  systemd[1]: Caught <ABRT>, dumped core as pid 2284.
  systemd[1]: Freezing execution.

This appears to be related to the upstream systemd issue #2632: https://github.com/systemd/systemd/issues/2632

We can reproduce this bug readily using the attached crashme.sh script. This bug was verified in the Ubuntu 16.04 daily build 20160308.1.

root@ubuntu-xenial:~# lsb_release -rd
Description: Ubuntu Xenial Xerus (development branch)
Release: 16.04

root@ubuntu-xenial:~# apt-cache policy systemd
systemd:
  Installed: 229-2ubuntu1
  Candidate: 229-2ubuntu1
  Version table:
 *** 229-2ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status

Revision history for this message
Jeremy L (kzch3zywf6) wrote :
description: updated
Revision history for this message
Martin Pitt (pitti) wrote :

I cherry-picked the upstream fix. Thanks for the detailled report!

Changed in systemd (Ubuntu):
assignee: nobody → Martin Pitt (pitti)
importance: Undecided → High
status: New → Fix Committed
Revision history for this message
Jeremy L (kzch3zywf6) wrote :

Thanks Martin! Really appreciate the quick response. :) Any ideas when this will land in one of the daily 16.04 builds?

Revision history for this message
Martin Pitt (pitti) wrote :

Normally I wasn't planning an upload in the next days as there's nothing urgent queued in git, aside perhaps from this patch. But so far I only got this one report about it, thus so far I didn't consider it particularly urgent (especially as this should be simple enough to work around by setting a nonzero timeout). But there surely be another upload in the next two weeks.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.7 KiB)

This bug was fixed in the package systemd - 229-3ubuntu1

---------------
systemd (229-3ubuntu1) xenial; urgency=medium

  * Merge with Debian unstable. Remaining Ubuntu changes:
    - Hack to support system-image read-only /etc, and modify files in
      /etc/writable/ instead.

    Upgrade fixes, keep until 16.04 LTS release:
    - systemd Conflicts/Replaces/Provides systemd-services.
    - Remove obsolete systemd-logind upstart job.
    - Clean up obsolete /etc/udev/rules.d/README.
    - systemd.postinst: Migrate mountall specific fstab options to standard
      util-linux "nofail" option.
    - systemctl: Don't forward telinit u to upstart. This works around
      upstart's Restart() always reexec'ing /sbin/init on Restart(), even if
      that changes to point to systemd during the upgrade. This avoids running
      systemd during a dist-upgrade. (LP: #1430479)
    - Provide shutdown fallback for upstart. (LP: #1370329)
    - Break lvm (<< 2.02.133-1ubuntu1) and remove our dummy /etc/init.d/lvm2
      on upgrades, as it's shipped by lvm2 now.
    - Make udev break on mdadm << 3.3-2ubuntu3, as udev's init script dropped
      the "Provides: raid-mdadm".
    - Clean up /var/log/udev on upgrade (which is written under upstart, but
      not under systemd). (LP: #1537211)
    - Migrate existing s390x network configuration to new names. (LP: #1526808)
    - systemd.postinst: Bump Version comparison for migrating the UTC setting
      from /etc/default/rcS to /etc/adjtime, to run it for upgrades to 16.04.
    - VMWare BIOS reports implausibly high onboard numbers. This got fixed in
      upstream commit 6c1e69f9. Migrate names in ifupdown accordingly.
      (LP: #1550539)

systemd (229-3) unstable; urgency=medium

  [ Martin Pitt ]
  * debian/tests/timedated: Add tests for "timedatectl set-local-rtc".
  * Be more tolerant in parsing /etc/adjtime.
  * debian/systemd.postinst: Don't fail package installation if systemctl
    daemon-reload trigger fails. This does not fix the root cause of the
    reload failures, but at least causes fewer packages to be in a broken
    state after upgrade, so that a reboot or apt-get -f install have a much
    higher chance in succeeding. (For bugs like LP #1502097 or LP #1447654)
  * debian/tests/networkd: Skip test_hogplug_dhcp_ip6 when running against
    upstream as well.
  * debian/tests/boot-and-services: Wait for units to stop with a "systemctl
    is-active" loop instead of static sleeps.
  * debian/tests/networkd: Skip DHCPv6 tests for downstream packages too. This
    is an actual regression in networkd-229, to be investigated. But this
    shouldn't hold up reverse dependencies.
  * Fix assertion in add_random(). (LP: #1554861)
  * debian/tests/boot-and-services: Don't assert on "Stopped Container c1"
    message in NspawnTests.test_service(), this is sometimes not present. Just
    check that the unit did not fail.
  * Add "adduser" dependency to systemd-coredump, to quiesce lintian.
  * Bump Standards-Version to 3.9.7 (no changes necessary).
  * Fix timespec parsing by correctly initializing microseconds.
    (Closes: #818698, LP: #1559038)
  * networkd: Add fallback if FIONREAD is not supported. (C...

Read more...

Changed in systemd (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.