Description of problem: The memory size of the guest can higher than the max memory size before guest balloon driver start up. Version-Release number of selected component (if applicable): xen-3.0.3-103.el5 How reproducible: always Steps to Reproduce: 1.Start the guest by following command with setting memory size and max memory size: # xm cr /etc/xen/PvDomain memory=512 maxmem=1024 2.Type the following command immediately, that is before the guest or the balloon driver finished starting up. # xm mem-max PvDomain 800 # xm mem-set PvDomain 1500 3.Checking the memory size of the guest # xm list 4. I can get the following out put: [root@intel-8400-8-1 ~]# xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 2048 2 r----- 65.9 PvDomain 11 1500 1 -b---- 0.4 Actual results: The Mem size of the guest is large than the max memory. The maxmem is 1024, and currently the memory size is 1500. Expected results: The Mem size of the guest should no more large than the max memory. Additional info:
Can you please check xentop output if the 1500MB is really assigned to guest or this is just xenstore value? xm list data does not have to corresponded to real value.
After I check the xentop output, and check the memory information in it, and get that the memory is around 1535760 about this guest.
Using the package available at the comment #3, I will get the follow error info: # xm cr /etc/xen/rhel54_64_pv memory=512 maxmem=1024 # xm mem-set rhel54_64_pv 1500 Error: Memory size too large. Limit is 1024 MiB Usage: xm mem-set <Domain> <Mem> Set the current memory usage for a domain. So the new package is ok.
Problem is the same as in case of bz #528431 - when memory is set higher then maxmem, maxmem is set to new value. As this is done before balloon driver inicialization, it is initialize with new values. Fix for bz #528431 solve this problem as tested by reporter. *** This bug has been marked as a duplicate of bug 528431 ***