)]}'
{
  "commit": "62695a84eb8f2e718bf4dfb21700afaa7a08e0ea",
  "tree": "0af7bac599748a7e462bff16d70c702c9e33a2fb",
  "parents": [
    "71088785c6bc68fddb450063d57b1bd1c78e0ea1"
  ],
  "author": {
    "name": "Nick Piggin",
    "email": "npiggin@suse.de",
    "time": "Sat Oct 18 20:26:09 2008 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Mon Oct 20 08:50:25 2008 -0700"
  },
  "message": "vmscan: move isolate_lru_page() to vmscan.c\n\nOn large memory systems, the VM can spend way too much time scanning\nthrough pages that it cannot (or should not) evict from memory.  Not only\ndoes it use up CPU time, but it also provokes lock contention and can\nleave large systems under memory presure in a catatonic state.\n\nThis patch series improves VM scalability by:\n\n1) putting filesystem backed, swap backed and unevictable pages\n   onto their own LRUs, so the system only scans the pages that it\n   can/should evict from memory\n\n2) switching to two handed clock replacement for the anonymous LRUs,\n   so the number of pages that need to be scanned when the system\n   starts swapping is bound to a reasonable number\n\n3) keeping unevictable pages off the LRU completely, so the\n   VM does not waste CPU time scanning them. ramfs, ramdisk,\n   SHM_LOCKED shared memory segments and mlock()ed VMA pages\n   are keept on the unevictable list.\n\nThis patch:\n\nisolate_lru_page logically belongs to be in vmscan.c than migrate.c.\n\nIt is tough, because we don\u0027t need that function without memory migration\nso there is a valid argument to have it in migrate.c.  However a\nsubsequent patch needs to make use of it in the core mm, so we can happily\nmove it to vmscan.c.\n\nAlso, make the function a little more generic by not requiring that it\nadds an isolated page to a given list.  Callers can do that.\n\n\tNote that we now have \u0027__isolate_lru_page()\u0027, that does\n\tsomething quite different, visible outside of vmscan.c\n\tfor use with memory controller.  Methinks we need to\n\trationalize these names/purposes.\t--lts\n\n[akpm@linux-foundation.org: fix mm/memory_hotplug.c build]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "03aea612d28450f24f96274c922a8da987bb918b",
      "old_mode": 33188,
      "old_path": "include/linux/migrate.h",
      "new_id": "3f34005068d420b2b1766afdec804529dc2772d9",
      "new_mode": 33188,
      "new_path": "include/linux/migrate.h"
    },
    {
      "type": "modify",
      "old_id": "1f43f7416972d3c4f1b07ab04898008a8ec76a81",
      "old_mode": 33188,
      "old_path": "mm/internal.h",
      "new_id": "4e8e78b978b5b89031ee4ceb2a6c9fb324824bd7",
      "new_mode": 33188,
      "new_path": "mm/internal.h"
    },
    {
      "type": "modify",
      "old_id": "c299d083d8e27634b1a19af91ddb86836c787380",
      "old_mode": 33188,
      "old_path": "mm/memory_hotplug.c",
      "new_id": "3b4975815141f3f198926176d35c60a6fc282635",
      "new_mode": 33188,
      "new_path": "mm/memory_hotplug.c"
    },
    {
      "type": "modify",
      "old_id": "83369058ec133b380a482ca86792087134b944f6",
      "old_mode": 33188,
      "old_path": "mm/mempolicy.c",
      "new_id": "71b47491487d013a04a23901a3c5eefc2fc33389",
      "new_mode": 33188,
      "new_path": "mm/mempolicy.c"
    },
    {
      "type": "modify",
      "old_id": "2a80136b23bbc16fb9d2ec2fad932b29e30dda50",
      "old_mode": 33188,
      "old_path": "mm/migrate.c",
      "new_id": "da73742e52a54d2aca016bc46ca74e152c447a40",
      "new_mode": 33188,
      "new_path": "mm/migrate.c"
    },
    {
      "type": "modify",
      "old_id": "1ff1a58e7c1075fffecda7eb9ce5c360e8369a17",
      "old_mode": 33188,
      "old_path": "mm/vmscan.c",
      "new_id": "1fd4912a596c347f0eb699c5d25a085f80da6ef9",
      "new_mode": 33188,
      "new_path": "mm/vmscan.c"
    }
  ]
}
