)]}'
{
  "commit": "83e3c48729d9ebb7af5a31a504f3fd6aff0348c4",
  "tree": "9e42ac40f3bb837359325e0b247ec8e16c1c0b52",
  "parents": [
    "967535223f9a8d95c187a8728480b569164cd4f4"
  ],
  "author": {
    "name": "Kirill A. Shutemov",
    "email": "kirill.shutemov@linux.intel.com",
    "time": "Fri Sep 29 17:08:16 2017 +0300"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@kernel.org",
    "time": "Fri Oct 20 13:07:09 2017 +0200"
  },
  "message": "mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME\u003dy\n\nSize of the mem_section[] array depends on the size of the physical address space.\n\nIn preparation for boot-time switching between paging modes on x86-64\nwe need to make the allocation of mem_section[] dynamic, because otherwise\nwe waste a lot of RAM: with CONFIG_NODE_SHIFT\u003d10, mem_section[] size is 32kB\nfor 4-level paging and 2MB for 5-level paging mode.\n\nThe patch allocates the array on the first call to sparse_memory_present_with_active_regions().\n\nSigned-off-by: Kirill A. Shutemov \u003ckirill.shutemov@linux.intel.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Andy Lutomirski \u003cluto@amacapital.net\u003e\nCc: Borislav Petkov \u003cbp@suse.de\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: linux-mm@kvack.org\nLink: http://lkml.kernel.org/r/20170929140821.37654-2-kirill.shutemov@linux.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c8f89417740bb5819bc9cb2b81549e31a4af4fc0",
      "old_mode": 33188,
      "old_path": "include/linux/mmzone.h",
      "new_id": "e796edf1296fd8d9141566c941d8467065c2805e",
      "new_mode": 33188,
      "new_path": "include/linux/mmzone.h"
    },
    {
      "type": "modify",
      "old_id": "77e4d3c5c57b72dcd7e411a03707c26dc85c7c04",
      "old_mode": 33188,
      "old_path": "mm/page_alloc.c",
      "new_id": "8dfd13f724d9666e713441680262032921e04249",
      "new_mode": 33188,
      "new_path": "mm/page_alloc.c"
    },
    {
      "type": "modify",
      "old_id": "83b3bf6461af556698c457627b0bc732725a0300",
      "old_mode": 33188,
      "old_path": "mm/sparse.c",
      "new_id": "b00a9739879537fa6fcec969f46020da17b6c01d",
      "new_mode": 33188,
      "new_path": "mm/sparse.c"
    }
  ]
}
