[systemd-devel] Failed to destroy cgroup /system.slice/plymouth-start.service: Device or resource busy

Lennart Poettering lennart at poettering.net
Mon Jul 8 17:14:42 PDT 2013


On Sat, 06.07.13 19:44, Cristian Rodríguez (crrodriguez at opensuse.org) wrote:

> Hi:
> 
> With v205, I sometimes get at boot time:
> 
> Failed to destroy cgroup /system.slice/plymouth-start.service:
> Device or resource busy
> 
> void unit_destroy_cgroup(Unit *u) {..
> 
> r = cg_trim_with_mask(u->cgroup_mask, u->cgroup_path, true); ...
> 
> calls:
> 
> cg_trim(SYSTEMD_CGROUP_CONTROLLER, path, delete_root);
> -->delete_root is true..
> 
> int cg_trim(const char *controller, const char *path, bool delete_root) {
> ...
> 
> if (delete_root) {
>     if (rmdir(fs) < 0 && errno != ENOENT) --> here rmdir() fails
> with EBUSY because "path" is currently in use..
>        return -errno;
> }

Hmm, plymouth-start.service sets KillMode=none, since it wants to
survive the initrd→host transitions. Not sure what the right approach is
here, but I figure we should just no generate any error message in this
case and simply proceed.

I have now changed this to generate a debug message rather than an error
message. THis should make this invisible for normal boots.

Lennart

-- 
Lennart Poettering - Red Hat, Inc.


More information about the systemd-devel mailing list