While testing Bionic daily build with kernel 4.15.0-20-generic we saw that there are 2 issues with the KVP daemon:
1. KVP daemon crashes after approximatively 2 minutes of uptime and it enters in a failed state. The daemon can be manually started and it enters back in active (running) state.
The error messages from /var/log/syslog after the daemon enters the failed state are the following:
Apr 25 04:28:46 bionicDaily KVP: read failed; error:9 Bad file descriptor
Apr 25 04:28:46 bionicDaily systemd[1]: hv-kvp-daemon.service: Main process exited, code=exited, status=1/FAILURE
Apr 25 04:28:46 bionicDaily systemd[1]: hv-kvp-daemon.service: Failed with result 'exit-code'.
Apr 25 04:28:59 bionicDaily systemd[1]: Started Hyper-V KVP Protocol Daemon.
2. After the KVP daemon is being started the following messages appear:
Apr 25 04:45:25 bionicDaily hv_kvp_daemon[1895]: sh: 1: /usr/libexec/hypervkvpd/hv_get_dns_info: not found
Apr 25 04:45:25 bionicDaily hv_kvp_daemon[1895]: sh: 1: /usr/libexec/hypervkvpd/hv_get_dhcp_info: not found
The above binaries are present on the system, but the their actual path is /usr/sbin/hv_get_dns_info and /usr/sbin/hv_get_dhcp_info. Either the hv_get_dhcp_info and hv_get_dns_info binaries should be placed in the location where the daemon is looking for (/usr/libexec/hypervkvpd/), or the daemon should be set to search for the binaries in the /usr/sbin directory.
While testing Bionic daily build with kernel 4.15.0-20-generic we saw that there are 2 issues with the KVP daemon:
1. KVP daemon crashes after approximatively 2 minutes of uptime and it enters in a failed state. The daemon can be manually started and it enters back in active (running) state.
The error messages from /var/log/syslog after the daemon enters the failed state are the following:
Apr 25 04:28:46 bionicDaily KVP: read failed; error:9 Bad file descriptor daemon. service: Main process exited, code=exited, status=1/FAILURE daemon. service: Failed with result 'exit-code'.
Apr 25 04:28:46 bionicDaily systemd[1]: hv-kvp-
Apr 25 04:28:46 bionicDaily systemd[1]: hv-kvp-
Apr 25 04:28:59 bionicDaily systemd[1]: Started Hyper-V KVP Protocol Daemon.
Note: There was a simmilar issue discussed on this thread https:/ /bugs.launchpad .net/ubuntu/ +source/ linux/+ bug/1664663, but the fixing commit seems to be inclued in this Bionic build.
2. After the KVP daemon is being started the following messages appear:
Apr 25 04:45:25 bionicDaily hv_kvp_ daemon[ 1895]: sh: 1: /usr/libexec/ hypervkvpd/ hv_get_ dns_info: not found daemon[ 1895]: sh: 1: /usr/libexec/ hypervkvpd/ hv_get_ dhcp_info: not found
Apr 25 04:45:25 bionicDaily hv_kvp_
The above binaries are present on the system, but the their actual path is /usr/sbin/ hv_get_ dns_info and /usr/sbin/ hv_get_ dhcp_info. Either the hv_get_dhcp_info and hv_get_dns_info binaries should be placed in the location where the daemon is looking for (/usr/libexec/ hypervkvpd/ ), or the daemon should be set to search for the binaries in the /usr/sbin directory.