Francesco Romani has uploaded a new change for review.

Change subject: vm: check commands timeout only on steady state

vm: check commands timeout only on steady state

On top of the timeout errors reported from libvirt,
Vdsm marks a VM as unresponsive also if the sampling data is too old.
This usually means the VM was unresponsive to the sampling subsystem.
While the real benefit of this reporting is not completely clear,
we must keep this reporting for backward compatibility.

However, it is meaningless or harmful (false positive) to do this
check blindly, ignoring the VM state. We should skip those states:

DOWN (for obvious reasons),
MIGRATION_SOURCE (we already did that)
MIGRATION_DESTINATION (VM still on source, pointless)
POWERING_DOWN (false positives, transient state, hopefully short)
SAVING_STATE (same for migration - is migrating to disk)
WAIT_FOR_LAUNCH (hypervisor not yet started)

This leaves us the 'UP' and 'PAUSED' state, and this is what
this patch checks for.

Change-Id: Iafd83afa8ae7d0c6a172f8ceb872c2110eba1c6f
Signed-off-by: Francesco Romani <>
M vdsm/virt/
1 file changed, 3 insertions(+), 0 deletions(-)

  git pull ssh:// refs/changes/05/65505/1

diff --git a/vdsm/virt/ b/vdsm/virt/
index dc6ffe9..7ef151a 100644
--- a/vdsm/virt/
+++ b/vdsm/virt/
@@ -4667,6 +4667,9 @@
     def _setUnresponsiveIfTimeout(self, stats, statsAge):
+        # we care about timeouts only on the stady state
+        if self.lastStatus not in (vmstatus.UP, vmstatus.PAUSED):
+            return
         if self.isMigrating():
         # we don't care about decimals here

To view, visit
To unsubscribe, visit

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iafd83afa8ae7d0c6a172f8ceb872c2110eba1c6f
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Francesco Romani <>
vdsm-patches mailing list --
To unsubscribe send an email to

Reply via email to