)]}'
{
  "commit": "d3db728125c4470a2d061ac10fa7395e18237263",
  "tree": "edc316773dde8f7a7a7dfe7358d18cba1c369ab0",
  "parents": [
    "99cb2ddcc617f43917e94a4147aa3ccdb2bcd77e"
  ],
  "author": {
    "name": "Ian Campbell",
    "email": "Ian.Campbell@citrix.com",
    "time": "Wed Dec 14 12:16:08 2011 +0000"
  },
  "committer": {
    "name": "Konrad Rzeszutek Wilk",
    "email": "konrad.wilk@oracle.com",
    "time": "Thu Dec 15 11:24:02 2011 -0500"
  },
  "message": "xen: only limit memory map to maximum reservation for domain 0.\n\nd312ae878b6a \"xen: use maximum reservation to limit amount of usable RAM\"\nclamped the total amount of RAM to the current maximum reservation. This is\ncorrect for dom0 but is not correct for guest domains. In order to boot a guest\n\"pre-ballooned\" (e.g. with memory\u003d1G but maxmem\u003d2G) in order to allow for\nfuture memory expansion the guest must derive max_pfn from the e820 provided by\nthe toolstack and not the current maximum reservation (which can reflect only\nthe current maximum, not the guest lifetime max). The existing algorithm\nalready behaves this correctly if we do not artificially limit the maximum\nnumber of pages for the guest case.\n\nFor a guest booted with maxmem\u003d512, memory\u003d128 this results in:\n [    0.000000] BIOS-provided physical RAM map:\n [    0.000000]  Xen: 0000000000000000 - 00000000000a0000 (usable)\n [    0.000000]  Xen: 00000000000a0000 - 0000000000100000 (reserved)\n-[    0.000000]  Xen: 0000000000100000 - 0000000008100000 (usable)\n-[    0.000000]  Xen: 0000000008100000 - 0000000020800000 (unusable)\n+[    0.000000]  Xen: 0000000000100000 - 0000000020800000 (usable)\n...\n [    0.000000] NX (Execute Disable) protection: active\n [    0.000000] DMI not present or invalid.\n [    0.000000] e820 update range: 0000000000000000 - 0000000000010000 (usable) \u003d\u003d\u003e (reserved)\n [    0.000000] e820 remove range: 00000000000a0000 - 0000000000100000 (usable)\n-[    0.000000] last_pfn \u003d 0x8100 max_arch_pfn \u003d 0x1000000\n+[    0.000000] last_pfn \u003d 0x20800 max_arch_pfn \u003d 0x1000000\n [    0.000000] initial memory mapped : 0 - 027ff000\n [    0.000000] Base memory trampoline at [c009f000] 9f000 size 4096\n-[    0.000000] init_memory_mapping: 0000000000000000-0000000008100000\n-[    0.000000]  0000000000 - 0008100000 page 4k\n-[    0.000000] kernel direct mapping tables up to 8100000 @ 27bb000-27ff000\n+[    0.000000] init_memory_mapping: 0000000000000000-0000000020800000\n+[    0.000000]  0000000000 - 0020800000 page 4k\n+[    0.000000] kernel direct mapping tables up to 20800000 @ 26f8000-27ff000\n [    0.000000] xen: setting RW the range 27e8000 - 27ff000\n [    0.000000] 0MB HIGHMEM available.\n-[    0.000000] 129MB LOWMEM available.\n-[    0.000000]   mapped low ram: 0 - 08100000\n-[    0.000000]   low ram: 0 - 08100000\n+[    0.000000] 520MB LOWMEM available.\n+[    0.000000]   mapped low ram: 0 - 20800000\n+[    0.000000]   low ram: 0 - 20800000\n\nWith this change \"xl mem-set \u003cdomain\u003e 512M\" will successfully increase the\nguest RAM (by reducing the balloon).\n\nThere is no change for dom0.\n\nReported-and-Tested-by:  George Shuklin \u003cgeorge.shuklin@gmail.com\u003e\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: stable@kernel.org\nReviewed-by: David Vrabel \u003cdavid.vrabel@citrix.com\u003e\nSigned-off-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "38d0af4fefec19f52d5e724c8f08102d391dc2e6",
      "old_mode": 33188,
      "old_path": "arch/x86/xen/setup.c",
      "new_id": "a54ff1aab6eb2ff5eb58eae41ae3d4913b55e599",
      "new_mode": 33188,
      "new_path": "arch/x86/xen/setup.c"
    }
  ]
}
