Tools: hv: cache FQDN in kvp_daemon to avoid timeouts
authorOlaf Hering <olaf@aepfle.de>
Wed, 7 Aug 2013 17:14:37 +0000 (19:14 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 26 Sep 2013 19:03:31 +0000 (12:03 -0700)
commit58125210ab3b202917c04fca014317944d464ea0
tree11f8eafbb3326197b82f6192db97bf523fbc6d4e
parentd6675667540a19427099cfd7eb80fcd4320a951d
Tools: hv: cache FQDN in kvp_daemon to avoid timeouts

kvp_daemon does some operations which take an unpredicable amount of
time. In addition the kernel driver gives the kvp_daemon a 5 second
timeout to respond to message from the host. If an operation such as
getaddrinfo takes a long time and the timeout triggers then netlink
errors occour. As a result of such errors the daemon just terminates and
the service becomes unavailable.

Idendifying and fixing these shortcomings in the kernel-userland
communication protocol will be done in separate patches. This change
fixes just one obvious timeout bug.

Update kvp_get_domain_name to not return a value, better diagnostic for
the consumer of the hostname string, remove trailing newline in error
case, use snprintf to not overrun output buffer, get hostname only once
and return the cached result.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
tools/hv/hv_kvp_daemon.c