Description of problem: During a regular "yum upgrade" on Fedora rawhide, systemd crashed. systemd itself was not being updated. Logs and backtrace follow. Impact on system usability was pretty bad. The backtrace looks similar to the ones in bug 996547 and bug 997742. Apr 17 12:08:17 localhost.localdomain systemd[1]: Reloading. Apr 17 12:08:17 localhost.localdomain systemd[1]: Configuration file /usr/lib/systemd/system/auditd.service is marked world-inaccessible. This has no effect as configuration data is accessible via APIs without restrictions. Proceeding anyway. Apr 17 12:08:20 localhost.localdomain systemd[1]: Stopping NFS status monitor for NFSv2/3 locking.... Apr 17 12:08:20 localhost.localdomain systemd[1]: Starting RPC Port Mapper. Apr 17 12:08:20 localhost.localdomain systemd[1]: Reached target RPC Port Mapper. Apr 17 12:08:20 localhost.localdomain systemd[1]: Starting Host and Network Name Lookups. Apr 17 12:08:20 localhost.localdomain systemd[1]: Reached target Host and Network Name Lookups. Apr 17 12:08:20 localhost.localdomain systemd[1]: Starting NFS status monitor for NFSv2/3 locking.... Apr 17 12:08:21 localhost.localdomain systemd[1]: Failed to reset devices.list on /system.slice: Invalid argument Apr 17 12:08:21 localhost.localdomain systemd[1]: Started NFS status monitor for NFSv2/3 locking.. Apr 17 12:08:21 localhost.localdomain systemd[1]: Assertion 'path' failed at ../src/shared/cgroup-util.c:915, function cg_is_empty_recursive(). Aborting. Backtrace is: #0 0x00007f6e8d096839 in raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37 #1 0x00007f6e8e5fd1d8 in crash.2510 (sig=6) at ../src/core/main.c:158 #2 <signal handler called> #3 0x00007f6e8ccf6bd7 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 #4 0x00007f6e8ccf883a in __GI_abort () at abort.c:89 #5 0x00007f6e8e63bce2 in log_assert_failed ( text=text@entry=0x7f6e8e65e389 "path", file=file@entry=0x7f6e8e65e4f7 "../src/shared/cgroup-util.c", line=line@entry=915, func=func@entry=0x7f6e8e66b6f0 <__PRETTY_FUNCTION__.8568.28811.5827> "cg_is_empty_recursive") at ../src/shared/log.c:709 #6 0x00007f6e8e5a312b in cg_is_empty_recursive (path=0x0, ignore_self=ignore_self@entry=true, controller=0x7f6e8e65e6af "name=systemd") at ../src/shared/cgroup-util.c:915 #7 0x00007f6e8e5ae743 in manager_notify_cgroup_empty (cgroup=<optimized out>, m=0x7f6e9036a970) at ../src/core/cgroup.c:954 #8 signal_agent_released.16232 (bus=<optimized out>, message=0x7f6e90403600, userdata=0x7f6e9036a970, error=<optimized out>) at ../src/core/dbus.c:90 #9 0x00007f6e8e5bed49 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902bddc0, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:292 #10 0x00007f6e8e5beaf4 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902bdd50, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:381 #11 0x00007f6e8e5beacc in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902bdc70, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:358 #12 0x00007f6e8e5beaf4 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e9029a1f0, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:381 #13 0x00007f6e8e5beacc in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c0b40, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:358 #14 0x00007f6e8e5beaf4 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c0d00, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:381 #15 0x00007f6e8e5beacc in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c0de0, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:358 #16 0x00007f6e8e5beaf4 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c0e50, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:381 #17 0x00007f6e8e5beacc in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c0910, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:358 #18 0x00007f6e8e5beaf4 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=0x7f6e902c09f0, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:381 #19 0x00007f6e8e5bea16 in bus_match_run (bus=bus@entry=0x7f6e903ee450, node=node@entry=0x7f6e903ee4d0, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/bus-match.c:263 #20 0x00007f6e8e5c40c8 in process_match.43824 (bus=bus@entry=0x7f6e903ee450, m=m@entry=0x7f6e90403600) at ../src/libsystemd/sd-bus/sd-bus.c:2303 #21 0x00007f6e8e5ac95c in process_message (m=0x7f6e90403600, bus=0x7f6e903ee450) at ../src/libsystemd/sd-bus/sd-bus.c:2428 #22 process_running (priority=0, ret=0x0, hint_priority=false, bus=0x7f6e903ee450) at ../src/libsystemd/sd-bus/sd-bus.c:2478 #23 bus_process_internal (bus=0x7f6e903ee450, ret=0x0, priority=0, hint_priority=false) at ../src/libsystemd/sd-bus/sd-bus.c:2647 #24 0x00007f6e8e5989e1 in sd_bus_process (ret=0x0, bus=<optimized out>) at ../src/libsystemd/sd-bus/sd-bus.c:2666 #25 io_callback.43644 (s=<optimized out>, fd=<optimized out>, revents=<optimized out>, userdata=<optimized out>) at ../src/libsystemd/sd-bus/sd-bus.c:2913 #26 0x00007f6e8e600330 in source_dispatch (s=0x7f6e90378c00) at ../src/libsystemd/sd-event/sd-event.c:1943 #27 0x00007f6e8e6006bc in sd_event_run (e=0x7f6e9036ad90, timeout=<optimized out>) at ../src/libsystemd/sd-event/sd-event.c:2225 #28 0x00007f6e8e5b60e4 in manager_loop (m=0x7f6e9036a970) at ../src/core/manager.c:1863 #29 0x00007f6e8e596fdf in main (argc=<optimized out>, argv=0x7fff6c5f8818) at ../src/core/main.c:1750 Version-Release number of selected component (if applicable): systemd-212-1.fc21.x86_64
Created attachment 887401 [details] patch to remove keys from hashmap during deserialization I don't think it's the same thing. Those bugs were a few versions ago and almost certainly got fixed. Nevertheless, after looking at this for a while, I don't see the reason. I see one iffy place... patch attached. I added a log_info in the patch. If it is ever seen, then the patch actually fixes a bug.
OK, the patch got merged. Closing. Feel free to reopen if the problem actually didn't get fixed with it.