Bug 985973 - Can't launch VM with 2048 GB memory but 2047 GB is OK.
Can't launch VM with 2048 GB memory but 2047 GB is OK.
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: vdsm (Show other bugs)
x86_64 Linux
unspecified Severity unspecified
: ---
: 3.2.2
Assigned To: Martin Sivák
meital avital
: ZStream
Depends On: 974917
  Show dependency treegraph
Reported: 2013-07-18 11:54 EDT by Idith Tal-Kohen
Modified: 2016-02-10 15:18 EST (History)
18 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
The API now uses strings instead of integers when reporting virtual machine memory and balloon statistics. This fixes a limitation with xmlrpc that could only transfer 32-bit signed numbers. Virtual machines defined with a memory value of 2048 GB or more can now be successfully launched.
Story Points: ---
Clone Of: 974917
Last Closed: 2013-08-16 03:22:34 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: SLA
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
oVirt gerrit 17086 None None None Never

  None (edit)
Comment 8 Eyal Edri 2013-08-08 08:19:26 EDT
moving to ON_QA since this is on errata for async - https://errata.devel.redhat.com/errata/details/15420
Comment 9 Aharon Canan 2013-08-13 09:10:10 EDT
it is impossible to verify using real HW as we do not have 2TB host.

we first check that the value pass as str instead of int from vdsm to engine.
changing the /usr/share/vdsm/libvirtvm.py (adding "max_mem = 2147483648")

    def _getBalloonInfo(self):
        for dev in self.conf['devices']:
            if dev['type'] == vm.BALLOON_DEVICES and \
                                  dev['specParams']['model'] != 'none':
                max_mem = int(self.conf.get('memSize')) * 1024
                max_mem = 2147483648 
                cur_mem = dev.get('target', max_mem)
                return {'balloon_max': str(max_mem), 'balloon_cur': str(cur_mem)}
        return {}

no xml-rpc error appears in engine.log

we then tried to simulate 2TB host by adding "caps['memSize'] = '2097152'" to the /usr/share/vdsm/caps.py

    caps['memSize'] = str(utils.readMemInfo()['MemTotal'] / 1024)
    caps['memSize'] = '2097152'

failed becuase of libvirt with below error - 
2013-08-13 11:59:44.034+0000: 2895: error : qemuProcessWaitForMonitor:1767 : internal error process exited while connecting to monitor: Failed to allocate 2199023255552 B: Cannot allocate memory

as there is no other way to verify, marking as verified using is19.2 based on above.
Comment 11 errata-xmlrpc 2013-08-16 03:22:34 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.