)]}'
{
  "commit": "802f192e4a600f7ef84ca25c8b818c8830acef5a",
  "tree": "51e9a6ed164e6a2d8741af510c3954ad79bf19af",
  "parents": [
    "0216f86dafb389c0ad97529fd45e64e883298cfd"
  ],
  "author": {
    "name": "Bob Picco",
    "email": "bob.picco@hp.com",
    "time": "Sat Sep 03 15:54:26 2005 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@evo.osdl.org",
    "time": "Mon Sep 05 00:05:38 2005 -0700"
  },
  "message": "[PATCH] SPARSEMEM EXTREME\n\nA new option for SPARSEMEM is ARCH_SPARSEMEM_EXTREME.  Architecture\nplatforms with a very sparse physical address space would likely want to\nselect this option.  For those architecture platforms that don\u0027t select the\noption, the code generated is equivalent to SPARSEMEM currently in -mm.\nI\u0027ll be posting a patch on ia64 ml which uses this new SPARSEMEM feature.\n\nARCH_SPARSEMEM_EXTREME makes mem_section a one dimensional array of\npointers to mem_sections.  This two level layout scheme is able to achieve\nsmaller memory requirements for SPARSEMEM with the tradeoff of an\nadditional shift and load when fetching the memory section.  The current\nSPARSEMEM -mm implementation is a one dimensional array of mem_sections\nwhich is the default SPARSEMEM configuration.  The patch attempts isolates\nthe implementation details of the physical layout of the sparsemem section\narray.\n\nARCH_SPARSEMEM_EXTREME depends on 64BIT and is by default boolean false.\n\nI\u0027ve boot tested under aim load ia64 configured for ARCH_SPARSEMEM_EXTREME.\n I\u0027ve also boot tested a 4 way Opteron machine with !ARCH_SPARSEMEM_EXTREME\nand tested with aim.\n\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Bob Picco \u003cbob.picco@hp.com\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c02dc9809ca57a2a3299c2c5c83efe9a360583ea",
      "old_mode": 33188,
      "old_path": "arch/ppc64/mm/init.c",
      "new_id": "b3b1e9c1770a412d84cee67a1dac090e6a642586",
      "new_mode": 33188,
      "new_path": "arch/ppc64/mm/init.c"
    },
    {
      "type": "modify",
      "old_id": "c3116f0d788c359969fcd120eda6eb461451faad",
      "old_mode": 33188,
      "old_path": "arch/ppc64/mm/numa.c",
      "new_id": "cb864b8f27505abee687702fca4833dbf9d6016b",
      "new_mode": 33188,
      "new_path": "arch/ppc64/mm/numa.c"
    },
    {
      "type": "modify",
      "old_id": "cb368bf0f264306decc6b7e00618a6bfb5f52174",
      "old_mode": 33188,
      "old_path": "include/asm-ppc64/lmb.h",
      "new_id": "de91e034bd986e8d7da853aa28ca752a41b878b8",
      "new_mode": 33188,
      "new_path": "include/asm-ppc64/lmb.h"
    },
    {
      "type": "modify",
      "old_id": "6c90461ed99fd5707c178d3b4fbf922b367b55b0",
      "old_mode": 33188,
      "old_path": "include/linux/mmzone.h",
      "new_id": "b97054bbc39410d82f90df82fe10b11304908e05",
      "new_mode": 33188,
      "new_path": "include/linux/mmzone.h"
    },
    {
      "type": "modify",
      "old_id": "cd379936cac663eb1c4f1a730460ceda4216c477",
      "old_mode": 33188,
      "old_path": "mm/Kconfig",
      "new_id": "fc644c5c065d2b5a2b05864b23b8e78385f6753b",
      "new_mode": 33188,
      "new_path": "mm/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "b54e304df4a70c7232dcc9464f69582d68339993",
      "old_mode": 33188,
      "old_path": "mm/sparse.c",
      "new_id": "b2b456bf0a5d03cb10ceb3c3cd63443040a47137",
      "new_mode": 33188,
      "new_path": "mm/sparse.c"
    }
  ]
}
