Comment 31 for bug 1668129

Revision history for this message
Dan Streetman (ddstreet) wrote :

Note on above; once hotadd is disabled, the xen balloon driver will still perform the memory hotplug, but the added pages won't be available for use. So you can check /proc/zoneinfo, and look at the Normal zone, e.g.:

with hotadd enabled (the default in Ubuntu):

Node 0, zone Normal
  pages free 15116671
        min 7661
        low 22873
        high 38085
   node_scanned 0
        spanned 15499264
        present 15499264
        managed 15212161

notice the 'spanned' and 'present' pages are the same; the 'spanned' pages include the physical pages added by the xen balloon driver, and 'present' indicates they're available for use (some of them are, based on how inflated the balloon is).

With memory hotadd disabled (commented out in the udev rules file, as shown in above comment):

Node 0, zone Normal
  pages free 15104522
        min 16356
        low 31567
        high 46778
   node_scanned 0
        spanned 15499264
        present 15466496
        managed 15212150

notice the 'spanned' pages is the same as before, meaning the xen balloon driver still added the physical pages, but the 'present' value is lower, indicating the extra balloon pages aren't available for the system to use, meaning they won't be sent to the NVMe controller, which works around this bug.