This bug was fixed in the package linux - 4.4.0-135.161
---------------
linux (4.4.0-135.161) xenial; urgency=medium
* linux: 4.4.0-135.161 -proposed tracker (LP: #1788766)
* [Regression] APM Merlin boards fail to recover link after interface down/up
(LP: #1785739)
- net: phylib: fix interrupts re-enablement in phy_start
- net: phy: fix phy_start to consider PHY_IGNORE_INTERRUPT
* qeth: don't clobber buffer on async TX completion (LP: #1786057)
- s390/qeth: don't clobber buffer on async TX completion
* nvme: avoid cqe corruption (LP: #1788035)
- nvme: avoid cqe corruption when update at the same time as read
* CacheFiles: Error: Overlong wait for old active object to go away.
(LP: #1776254)
- cachefiles: Fix missing clear of the CACHEFILES_OBJECT_ACTIVE flag
- cachefiles: Wait rather than BUG'ing on "Unexpected object collision"
* fscache cookie refcount updated incorrectly during fscache object allocation
(LP: #1776277) // fscache cookie refcount updated incorrectly during fscache
object allocation (LP: #1776277)
- fscache: Fix reference overput in fscache_attach_object() error handling
* FS-Cache: Assertion failed: FS-Cache: 6 == 5 is false (LP: #1774336)
- Revert "UBUNTU: SAUCE: CacheFiles: fix a read_waiter/read_copier race"
- fscache: Allow cancelled operations to be enqueued
- cachefiles: Fix refcounting bug in backing-file read monitoring
* linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before
walinuxagent.service (LP: #1739107)
- [Debian] hyper-v -- Ensure that hv-kvp-daemon.service starts before
walinuxagent.service
-- Khalid Elmously <[email protected]> Sun, 26 Aug 2018
23:56:50 -0400
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1739107
Title:
linux-cloud-tools-common: Ensure hv-kvp-daemon.service starts before
walinuxagent.service
Status in linux package in Ubuntu:
Fix Released
Status in linux source package in Xenial:
Fix Released
Status in linux source package in Zesty:
Won't Fix
Status in linux source package in Artful:
Won't Fix
Status in linux source package in Bionic:
Fix Released
Bug description:
This is a request to make a change in the hv-kvp-daemon systemd
service which is part of the linux-cloud-tools-common package to
ensure the hv-kvp-daemon service starts before the walinuxagent
service. The default dependencies make hv-kvp-daemon wait until the
whole system is up before it can start.
Currently the /lib/systemd/system/hv-kvp-daemon.service file looks
like this:
====================
# On Azure/Hyper-V systems start the hv_kvp_daemon
#
# author "Andy Whitcroft <[email protected]>"
[Unit]
Description=Hyper-V KVP Protocol Daemon
ConditionVirtualization=microsoft
[Service]
ExecStart=/usr/sbin/hv_kvp_daemon -n
[Install]
WantedBy=multi-user.target
====================
The suggested modification is to make the [Unit] section look like
this:
[Unit]
Description=Hyper-V KVP Protocol Daemon
ConditionVirtualization=microsoft
DefaultDependencies=no
After=systemd-remount-fs.service
Before=shutdown.target cloud-init-local.service walinuxagent.service
Conflicts=shutdown.target
RequiresMountsFor=/var/lib/hyperv
The hv-kvp-daemon service is not currently part of the critical-chain:
$ systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@"
character.
The time the unit takes to start is printed after the "+" character.
graphical.target @10.809s
└─multi-user.target @10.723s
└─ephemeral-disk-warning.service @10.538s +31ms
└─cloud-config.service @8.249s +2.252s
└─basic.target @8.044s
└─sockets.target @8.019s
└─snapd.socket @7.692s +264ms
└─sysinit.target @6.719s
└─cloud-init.service @5.803s +842ms
└─networking.service @5.137s +612ms
└─network-pre.target @5.074s
└─cloud-init-local.service @2.257s +2.783s
└─systemd-remount-fs.service @1.368s +656ms
└─systemd-journald.socket @1.218s
└─-.mount @649ms
└─system.slice @653ms
└─-.slice @649ms
In an Azure VM, the current startup time of my test is:
$ systemd-analyze
Startup finished in 10.375s (kernel) + 12.352s (userspace) = 22.728s
After making the suggested change, the startup time is similar:
$ systemd-analyze
Startup finished in 9.759s (kernel) + 11.867s (userspace) = 21.627s
And the service is now in the critical-chain:
$ systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@"
character.
The time the unit takes to start is printed after the "+" character.
graphical.target @10.666s
└─multi-user.target @10.636s
└─ephemeral-disk-warning.service @10.556s +36ms
└─cloud-config.service @8.423s +2.095s
└─basic.target @8.124s
└─sockets.target @8.101s
└─lxd.socket @7.677s +326ms
└─sysinit.target @6.755s
└─cloud-init.service @5.814s +908ms
└─networking.service @5.111s +651ms
└─network-pre.target @5.087s
└─cloud-init-local.service @2.345s +2.707s
└─hv-kvp-daemon.service @2.316s
└─systemd-remount-fs.service @1.253s +680ms
└─system.slice @1.225s
└─-.slice @650ms
The ConditionVirtualization=microsoft line makes it so that this
doesn't affect non microsoft virtualization environments (ie. qemu,
kvm, vmware, xen, etc.) by checking whether the system is executed in
a virtualized environment and optionally test whether it is a specific
implementation, in this case "microsoft" for Hyper-V.
https://www.freedesktop.org/software/systemd/man/systemd-detect-virt.html#
microsoft = Hyper-V, also known as Viridian or Windows Server Virtualization
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1739107/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp