Martin Sivák has uploaded a new change for review.

Change subject: core: Fix balloon check so it supports more than 2TB of RAM
......................................................................

core: Fix balloon check so it supports more than 2TB of RAM

All BalloonInfo fields are Longs so it does not make sense
to compare them as Ints. Moreover the VM has more than about 2TB
of RAM then Int (32 bits) overflows.

Change-Id: I69c7ccf6d58cbf000d95e3448c75eb986ba39b0a
Signed-off-by: Martin Sivak <msi...@redhat.com>
---
M 
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsUpdateRunTimeInfo.java
1 file changed, 4 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/93/21793/1

diff --git 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsUpdateRunTimeInfo.java
 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsUpdateRunTimeInfo.java
index e372f5b..716dfa0 100644
--- 
a/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsUpdateRunTimeInfo.java
+++ 
b/backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsUpdateRunTimeInfo.java
@@ -9,6 +9,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.util.Objects;
 import java.util.Set;
 import java.util.concurrent.atomic.AtomicBoolean;
 
@@ -1294,8 +1295,8 @@
                 }
 
                 if (isBalloonDeviceActiveOnVm(vmInternalData)
-                        && (balloonInfo.getCurrentMemory().intValue() == 
balloonInfo.getBalloonMaxMemory().intValue()
-                || balloonInfo.getCurrentMemory().intValue() != 
balloonInfo.getBalloonTargetMemory().intValue())) {
+                        && (Objects.equals(balloonInfo.getCurrentMemory(), 
balloonInfo.getBalloonMaxMemory())
+                || !Objects.equals(balloonInfo.getCurrentMemory(), 
balloonInfo.getBalloonTargetMemory()))) {
                     vmBalloonDriverIsRequestedAndUnavailable(vmId);
                 } else {
                     vmBalloonDriverIsNotRequestedOrAvailable(vmId);
@@ -1304,7 +1305,7 @@
                 if (vmInternalData.getVmStatistics().getusage_mem_percent() != 
null
                     && vmInternalData.getVmStatistics().getusage_mem_percent() 
== 0  // guest agent is down
                         && balloonInfo.isBalloonDeviceEnabled() // check if 
the device is present
-                        && balloonInfo.getCurrentMemory().intValue() != 
balloonInfo.getBalloonMaxMemory().intValue()) {
+                        && !Objects.equals(balloonInfo.getCurrentMemory(), 
balloonInfo.getBalloonMaxMemory())) {
                     guestAgentIsDownAndBalloonInfalted(vmId);
                 } else {
                     guestAgentIsUpOrBalloonDeflated(vmId);


-- 
To view, visit http://gerrit.ovirt.org/21793
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I69c7ccf6d58cbf000d95e3448c75eb986ba39b0a
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Martin Sivák <msi...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to