2017-03-03 11:50:17 |
Dimitri John Ledkov |
bug |
|
|
added bug |
2017-03-03 11:54:34 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Zesty |
|
2017-03-03 11:54:34 |
Dimitri John Ledkov |
bug task added |
|
xe-guest-utilities (Ubuntu Zesty) |
|
2017-03-03 11:54:34 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Yakkety |
|
2017-03-03 11:54:34 |
Dimitri John Ledkov |
bug task added |
|
xe-guest-utilities (Ubuntu Yakkety) |
|
2017-03-03 11:54:34 |
Dimitri John Ledkov |
nominated for series |
|
Ubuntu Xenial |
|
2017-03-03 11:54:34 |
Dimitri John Ledkov |
bug task added |
|
xe-guest-utilities (Ubuntu Xenial) |
|
2017-03-03 12:02:25 |
Dimitri John Ledkov |
description |
[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
= 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
+DefaultDependencies=no
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
-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
@@ -13,3 +11,4 @@
[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
[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
[Other Info]
* Related bug #1496730 |
[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
= 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
+DefaultDependencies=no
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
-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
@@ -13,3 +11,4 @@
[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
[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
[Other Info]
* 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 |
|
2017-03-03 12:32:13 |
Dimitri John Ledkov |
description |
[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
= 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
+DefaultDependencies=no
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
-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
@@ -13,3 +11,4 @@
[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
[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
[Other Info]
* 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 |
[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.
* xe-deamon should declare DefaultDependencies=no
= 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
= Proposed 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
+DefaultDependencies=no
After=local-fs.target
Requires=proc-xen.mount
Before=network.target cloud-init.service cloud-init-local.service
==
[Test Case]
* Boot a cloud instance, with xen hypervisor and cloud-init metdata
* There should be no boot cycles
[Regression Potential]
* Minimal, currently xe-daemon.service creates dependency cycles which prevent reliable and reproducible boots.
[Other Info]
* 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 |
|
2017-03-03 12:38:42 |
Dimitri John Ledkov |
xe-guest-utilities (Ubuntu Zesty): status |
New |
Fix Committed |
|
2017-03-03 12:38:46 |
Dimitri John Ledkov |
xe-guest-utilities (Ubuntu Yakkety): status |
New |
Triaged |
|
2017-03-03 12:38:48 |
Dimitri John Ledkov |
xe-guest-utilities (Ubuntu Xenial): status |
New |
Triaged |
|
2017-03-03 13:17:47 |
Launchpad Janitor |
xe-guest-utilities (Ubuntu Zesty): status |
Fix Committed |
Fix Released |
|