• Igor Mammedov's avatar
    pc: count in 1Gb hugepage alignment when sizing hotplug-memory container · 085f8e88
    Igor Mammedov authored
    
    
    if DIMMs with different size/alignment are interleaved
    in creation order, it could lead to hotplug-memory
    container fragmentation and following inability to use
    all RAM upto maxmem.
    For example:
        -m 4G,slots=3,maxmem=7G
        -object memory-backend-file,id=mem-1,size=256M,mem-path=/pagesize-2MB
        -device pc-dimm,id=mem1,memdev=mem-1
        -object memory-backend-file,id=mem-2,size=1G,mem-path=/pagesize-1GB
        -device pc-dimm,id=mem2,memdev=mem-2
        -object memory-backend-file,id=mem-3,size=256M,mem-path=/pagesize-2MB
        -device pc-dimm,id=mem3,memdev=mem-3
    
    fragments hotplug-memory container and doesn't allow
    to use 1GB hugepage backend to consume remainig 1Gb.
    
    To ease managment factor count in max 1Gb alignment for
    each memory slot when sizing hotplug-memory region so
    that regadless of fragmentaion it would be possible to
    add max aligned DIMM.
    Signed-off-by: default avatarIgor Mammedov <imammedo@redhat.com>
    Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
    085f8e88