libvirt/tools
Jonathon Jongsma 95f5ac9ae5 Add API to change qemu agent response timeout
Some layered products such as oVirt have requested a way to avoid being
blocked by guest agent commands when querying a loaded vm. For example,
many guest agent commands are polled periodically to monitor changes,
and rather than blocking the calling process, they'd prefer to simply
time out when an agent query is taking too long.

This patch adds a way for the user to specify a custom agent timeout
that is applied to all agent commands.

One special case to note here is the 'guest-sync' command. 'guest-sync'
is issued internally prior to calling any other command. (For example,
when libvirt wants to call 'guest-get-fsinfo', we first call
'guest-sync' and then call 'guest-get-fsinfo').

Previously, the 'guest-sync' command used a 5-second timeout
(VIR_DOMAIN_QEMU_AGENT_COMMAND_DEFAULT), whereas the actual command that
followed always blocked indefinitely
(VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK). As part of this patch, if a
custom timeout is specified that is shorter than
5 seconds,  this new timeout is also used for 'guest-sync'. If there is
no custom timeout or if the custom timeout is longer than 5 seconds, we
will continue to use the 5-second timeout.

Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2019-11-14 19:10:01 +01:00
..
bash-completion tools: Provide bash autompletion file 2018-01-11 18:53:04 +01:00
nss libvirt_nss.h: Separate function declarations with an empty line 2019-09-30 12:27:41 +02:00
wireshark tools: use G_GNUC_UNUSED 2019-10-15 11:25:25 +02:00
libvirt_recover_xattrs.sh security_util: Remove stale XATTRs 2019-08-22 17:05:17 +02:00
libvirt_win_icon_16x16.ico
libvirt_win_icon_32x32.ico
libvirt_win_icon_48x48.ico
libvirt_win_icon_64x64.ico
libvirt-guests.service.in build: don't hardcode /etc in the config related files 2019-08-09 14:06:31 +01:00
libvirt-guests.sh.in tools: do not report unknown guests in print_guests_shutdown 2018-04-24 10:46:41 +02:00
libvirt-guests.sysconf lxc: allow use of lxc:///system URI as preferred format 2018-04-12 16:52:01 +01:00
Makefile.am tools: stop distributing generated source files 2019-11-08 17:07:57 +01:00
virsh_win_icon.rc
virsh-checkpoint.c util: buffer: Remove virBufferError 2019-10-24 19:35:34 +02:00
virsh-checkpoint.h backup: Implement virsh support for checkpoints 2019-07-26 16:48:58 -05:00
virsh-completer-checkpoint.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virsh-completer-checkpoint.h tools: Separate checkpoint related completers into a file 2019-08-09 09:18:19 +02:00
virsh-completer-domain.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-completer-domain.h tools: Separate domain related completers into a file 2019-08-09 09:05:27 +02:00
virsh-completer-host.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-completer-host.h tools: Separate host related completers into a file 2019-08-09 09:17:44 +02:00
virsh-completer-interface.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virsh-completer-interface.h tools: Separate interface related completers into a file 2019-08-09 09:07:51 +02:00
virsh-completer-network.c tools: remove unneeded cleanup labels 2019-11-12 17:54:01 +01:00
virsh-completer-network.h tools: Separate network related completers into a file 2019-08-09 09:09:59 +02:00
virsh-completer-nodedev.c Drop needless ret variable 2019-10-24 08:10:37 +02:00
virsh-completer-nodedev.h tools: Separate nodedev related completers into a file 2019-08-09 09:10:08 +02:00
virsh-completer-nwfilter.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virsh-completer-nwfilter.h tools: Separate nwfilter related completers into a file 2019-08-09 09:15:36 +02:00
virsh-completer-pool.c Drop needless ret variable 2019-10-24 08:10:37 +02:00
virsh-completer-pool.h virsh: Introduce virshPoolTypeCompleter 2019-08-09 09:20:13 +02:00
virsh-completer-secret.c Drop needless ret variable 2019-10-24 08:10:37 +02:00
virsh-completer-secret.h tools: Separate secret related completers into a file 2019-08-09 09:16:28 +02:00
virsh-completer-snapshot.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virsh-completer-snapshot.h tools: Separate snapshot related completers into a file 2019-08-09 09:17:06 +02:00
virsh-completer-volume.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virsh-completer-volume.h tools: Separate storage volume related completers into a file 2019-08-09 09:07:02 +02:00
virsh-completer.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-completer.h virsh-completer: Drop needless #include 2019-08-09 09:18:54 +02:00
virsh-console.c tools: use G_GNUC_UNUSED 2019-10-15 11:25:25 +02:00
virsh-console.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-domain-monitor.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-domain-monitor.h Use G_GNUC_WARN_UNUSED_RESULT instead of ATTRIBUTE_RETURN_CHECK 2019-10-15 11:25:22 +02:00
virsh-domain.c Add API to change qemu agent response timeout 2019-11-14 19:10:01 +01:00
virsh-domain.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-edit.c Use G_GNUC_FALLTHROUGH instead of ATTRIBUTE_FALLTHROUGH 2019-10-15 16:14:19 +02:00
virsh-host.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-host.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-interface.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-interface.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-network.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-network.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-nodedev.c tools: prefer g_strdup to vshStrdup 2019-10-20 14:37:16 +02:00
virsh-nodedev.h tools: s/Nodedev/NodeDevice/ 2019-08-09 09:03:53 +02:00
virsh-nwfilter.c tools: use G_GNUC_UNUSED 2019-10-15 11:25:25 +02:00
virsh-nwfilter.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-pool.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-pool.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-secret.c Use g_autofree instead of VIR_AUTOFREE 2019-10-16 12:06:43 +02:00
virsh-secret.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-snapshot.c util: buffer: Remove virBufferError 2019-10-24 19:35:34 +02:00
virsh-snapshot.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-util.c tools: use G_GNUC_UNUSED 2019-10-15 11:25:25 +02:00
virsh-util.h Use G_DEFINE_AUTOPTR_CLEANUP_FUNC instead of VIR_DEFINE_AUTOPTR_FUNC 2019-10-16 12:06:43 +02:00
virsh-volume.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virsh-volume.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh.c tools: prefer g_strdup to vshStrdup 2019-10-20 14:37:16 +02:00
virsh.h backup: Implement virsh support for checkpoints 2019-07-26 16:48:58 -05:00
virsh.pod Add API to change qemu agent response timeout 2019-11-14 19:10:01 +01:00
virt-admin-completer.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virt-admin-completer.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-admin.c tools: Use g_strdup_printf() instead of virAsprintf() 2019-11-12 16:15:59 +01:00
virt-admin.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-admin.pod tools: Fix grammar 2019-04-15 17:37:52 +02:00
virt-host-validate-bhyve.c internal: Move <stdio.h> include to internal.h 2018-09-20 10:16:38 +02:00
virt-host-validate-bhyve.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-common.c Use g_strdup_vprintf() instead of virVasprintf() everywhere 2019-11-12 16:15:59 +01:00
virt-host-validate-common.h Use G_GNUC_PRINTF instead of ATTRIBUTE_FMT_PRINTF 2019-10-15 16:14:18 +02:00
virt-host-validate-lxc.c virt-host-validate: require freezer for LXC 2018-10-05 15:53:29 +02:00
virt-host-validate-lxc.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-qemu.c virt-host-validate: rewrite cgroup detection to use util/vircgroup 2018-10-05 15:53:29 +02:00
virt-host-validate-qemu.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate.c src: More cleanup of some system headers already contained in internal.h 2018-09-20 10:16:39 +02:00
virt-host-validate.pod Use https:// links for most sites 2017-10-16 10:22:34 +01:00
virt-login-shell-helper.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
virt-login-shell.c tools: fix regression passing command with virt-login-shell 2019-09-30 12:08:30 +01:00
virt-login-shell.conf virt-login-shell: add ability to auto-detect shell from container 2016-06-10 11:03:02 +01:00
virt-login-shell.pod Use https:// links for most sites 2017-10-16 10:22:34 +01:00
virt-pki-validate.in tools: Fix permissions for virt-pki-validate.in 2019-07-01 17:20:32 +02:00
virt-pki-validate.pod Use https:// links for most sites 2017-10-16 10:22:34 +01:00
virt-sanlock-cleanup.in build: Extract pod from source files 2016-04-25 15:40:43 +02:00
virt-sanlock-cleanup.pod Use https:// links for most sites 2017-10-16 10:22:34 +01:00
virt-xml-validate.in tools: fix XML validator detection of network port XML schema 2019-09-12 16:06:57 +01:00
virt-xml-validate.pod virt-xml-validate: Add schema for nwfilterbinding 2018-07-19 16:16:57 -04:00
vsh-table.c tools: use g_strdup instead of VIR_STRDUP 2019-10-21 12:51:59 +02:00
vsh-table.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
vsh.c Use g_mkstemp_full instead of mkostemp(s) 2019-11-14 19:02:31 +01:00
vsh.h virsh: Reimplement _vshCalloc using g_malloc0_n 2019-10-24 19:35:34 +02:00