** Description changed: [Impact] - * xe-deamon.service tries to be an early boot unit; before cloud-init-local / networking is setup - * However it does not declare DefaultDependencies=no, and thus tries to pull in sysinit.target which should happen after cloud-init-local; yet xe-daemon.service is declared to be before cloud-init-local, thus this is a conflict of interest. - * Either xe-deamon should declare DefaultDependencies=no, or just become a regular unit wanted by multi-user.target and the cloud-config.target + * xe-deamon.service tries to be an early boot unit; before cloud-init-local / networking is setup + * However it does not declare DefaultDependencies=no, and thus tries to pull in sysinit.target which should happen after cloud-init-local; yet xe-daemon.service is declared to be before cloud-init-local, thus this is a conflict of interest. + * Either xe-deamon should declare DefaultDependencies=no, or just become a regular unit wanted by multi-user.target and the cloud-config.target = Current unit = [Unit] Description=Xen Guest Monitoring Agent After=local-fs.target Requires=proc-xen.mount Before=network.target cloud-init.service cloud-init-local.service ConditionVirtualization=xen ConditionPathExists=/proc/xen/capabilities [Service] ExecStartPre=/usr/sbin/xe-linux-distribution /var/cache/xe-linux-distribution ExecStart=/usr/sbin/xe-daemon StandardOutput=journal+console [Install] WantedBy=multi-user.target = Minimal fix = --- xe-guest-utilities.xe-daemon.service.old 2017-03-03 11:45:48.679700766 +0000 +++ xe-guest-utilities.xe-daemon.service 2017-03-03 11:46:07.923549054 +0000 @@ -1,5 +1,6 @@ - [Unit] - Description=Xen Guest Monitoring Agent + [Unit] + Description=Xen Guest Monitoring Agent +DefaultDependencies=no - After=local-fs.target - Requires=proc-xen.mount - Before=network.target cloud-init.service cloud-init-local.service + After=local-fs.target + Requires=proc-xen.mount + Before=network.target cloud-init.service cloud-init-local.service = Become a normal unit fix = --- xe-guest-utilities.xe-daemon.service.old 2017-03-03 11:45:48.679700766 +0000 +++ xe-guest-utilities.xe-daemon.service 2017-03-03 11:47:44.842785194 +0000 @@ -1,8 +1,6 @@ - [Unit] - Description=Xen Guest Monitoring Agent + [Unit] + Description=Xen Guest Monitoring Agent -After=local-fs.target -Requires=proc-xen.mount -Before=network.target cloud-init.service cloud-init-local.service +Before=cloud-config.target - ConditionVirtualization=xen - ConditionPathExists=/proc/xen/capabilities - + ConditionVirtualization=xen + ConditionPathExists=/proc/xen/capabilities + @@ -13,3 +11,4 @@ - - [Install] - WantedBy=multi-user.target + + [Install] + WantedBy=multi-user.target +WantedBy=cloud-config.target == [Test Case] - * Boot a cloud instance, with xen hypervisor and cloud-init metdata - * There should be no boot cycles + * Boot a cloud instance, with xen hypervisor and cloud-init metdata + * There should be no boot cycles [Regression Potential] - * Depending choice of the fix, xe-daemon might be starting earlier or later. - * Some history checking is required, if xe-daemon must run before cloud-init-local or not - * Or if e.g. we only care for ExecStartPre= to run before cloud-init-local + * Depending choice of the fix, xe-daemon might be starting earlier or later. + * Some history checking is required, if xe-daemon must run before cloud-init-local or not + * Or if e.g. we only care for ExecStartPre= to run before cloud-init-local [Other Info] - - * Related bug #1496730 + + * Related bug #1496730 + + [Dependency cycle] + + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found ordering cycle on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on sockets.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on snapd.socket/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on sysinit.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on cloud-init.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on cloud-init-local.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on xe-daemon.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Breaking ordering cycle by deleting job sockets.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: sockets.target: Job sockets.target/start deleted to break ordering cycle starting with basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found ordering cycle on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on sysinit.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on cloud-init.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on cloud-init-local.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on xe-daemon.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Breaking ordering cycle by deleting job cloud-init.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: cloud-init.service: Job cloud-init.service/start deleted to break ordering cycle starting with basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found ordering cycle on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on sysinit.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on cloud-init-local.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on xe-daemon.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Found dependency on basic.target/start + Mar 03 12:01:15 slmeta1 systemd[1]: basic.target: Breaking ordering cycle by deleting job cloud-init-local.service/start + Mar 03 12:01:15 slmeta1 systemd[1]: cloud-init-local.service: Job cloud-init-local.service/start deleted to break ordering cycle starting with basic.target/start
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1669755 Title: Circular boot dependency cycle with cloud-init et.al. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/xe-guest-utilities/+bug/1669755/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
