)]}'
{
  "log": [
    {
      "commit": "748446bb6b5a9390b546af38ec899c868a9dbcf0",
      "tree": "4c27d0805a5e094b39ff938ad60dd270b953a79f",
      "parents": [
        "c175a0ce7584e5b498fff8cbdb9aa7912aa9fbba"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon May 24 14:32:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:06:59 2010 -0700"
      },
      "message": "mm: compaction: memory compaction core\n\nThis patch is the core of a mechanism which compacts memory in a zone by\nrelocating movable pages towards the end of the zone.\n\nA single compaction run involves a migration scanner and a free scanner.\nBoth scanners operate on pageblock-sized areas in the zone.  The migration\nscanner starts at the bottom of the zone and searches for all movable\npages within each area, isolating them onto a private list called\nmigratelist.  The free scanner starts at the top of the zone and searches\nfor suitable areas and consumes the free pages within making them\navailable for the migration scanner.  The pages isolated for migration are\nthen migrated to the newly isolated free pages.\n\n[aarcange@redhat.com: Fix unsafe optimisation]\n[mel@csn.ul.ie: do not schedule work on other CPUs for compaction]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e13861d822f8f443ca0c020ea8fc2dc01039cd63",
      "tree": "0e1ccaa6a2d682f7636b9d5ef5d4c73a28074988",
      "parents": [
        "4b50dc26a0a25a9d1998d206e1f7d849aa78063f"
      ],
      "author": {
        "name": "Minchan Kim",
        "email": "minchan.kim@gmail.com",
        "time": "Mon May 24 14:31:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:06:57 2010 -0700"
      },
      "message": "mm: remove return value of putback_lru_pages()\n\nputback_lru_page() never can fail.  So it doesn\u0027t matter count of \"the\nnumber of pages put back\".\n\nIn addition, users of this functions don\u0027t use return value.\n\nLet\u0027s remove unnecessary code.\n\nSigned-off-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "62b61f611eb5e20f7e9f8619bfd03bdfe8af6348",
      "tree": "9f06fff7eb6530fbe90b4d998b91071133f6af25",
      "parents": [
        "e9995ef978a7d5296fe04a9a2c5ca6e66d8bb4e5"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh.dickins@tiscali.co.uk",
        "time": "Mon Dec 14 17:59:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:20 2009 -0800"
      },
      "message": "ksm: memory hotremove migration only\n\nThe previous patch enables page migration of ksm pages, but that soon gets\ninto trouble: not surprising, since we\u0027re using the ksm page lock to lock\noperations on its stable_node, but page migration switches the page whose\nlock is to be used for that.  Another layer of locking would fix it, but\ndo we need that yet?\n\nDo we actually need page migration of ksm pages?  Yes, memory hotremove\nneeds to offline sections of memory: and since we stopped allocating ksm\npages with GFP_HIGHUSER, they will tend to be GFP_HIGHUSER_MOVABLE\ncandidates for migration.\n\nBut KSM is currently unconscious of NUMA issues, happily merging pages\nfrom different NUMA nodes: at present the rule must be, not to use\nMADV_MERGEABLE where you care about NUMA.  So no, NUMA page migration of\nksm pages does not make sense yet.\n\nSo, to complete support for ksm swapping we need to make hotremove safe.\nksm_memory_callback() take ksm_thread_mutex when MEM_GOING_OFFLINE and\nrelease it when MEM_OFFLINE or MEM_CANCEL_OFFLINE.  But if mapped pages\nare freed before migration reaches them, stable_nodes may be left still\npointing to struct pages which have been removed from the system: the\nstable_node needs to identify a page by pfn rather than page pointer, then\nit can safely prune them when MEM_OFFLINE.\n\nAnd make NUMA migration skip PageKsm pages where it skips PageReserved.\nBut it\u0027s only when we reach unmap_and_move() that the page lock is taken\nand we can be sure that raised pagecount has prevented a PageAnon from\nbeing upgraded: so add offlining arg to migrate_pages(), to migrate ksm\npage when offlining (has sufficient locking) but reject it otherwise.\n\nSigned-off-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: Izik Eidus \u003cieidus@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Chris Wright \u003cchrisw@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64cdd548ffe26849d4cd113ac640f60606063b14",
      "tree": "9a7a8af9022621d2da3648757b724fcd32b20168",
      "parents": [
        "1b0bd118862cd9fe9ac2872137a1b8107e83ff9d"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Jan 06 14:39:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:00 2009 -0800"
      },
      "message": "mm: cleanup: remove #ifdef CONFIG_MIGRATION\n\n#ifdef in *.c file decrease source readability a bit.  removing is better.\n\nThis patch doesn\u0027t have any functional change.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: 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"
    },
    {
      "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"
    },
    {
      "commit": "83d1674a946141c3c59d430e96c224f7937e6158",
      "tree": "03420c9fdf56ad35de685b7c0b48899d886bd7ff",
      "parents": [
        "9ca908f47bc784c90e17a553ce33e756c73feac4"
      ],
      "author": {
        "name": "Gerald Schaefer",
        "email": "gerald.schaefer@de.ibm.com",
        "time": "Wed Jul 23 21:28:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 24 10:47:21 2008 -0700"
      },
      "message": "mm: make CONFIG_MIGRATION available w/o CONFIG_NUMA\n\nWe\u0027d like to support CONFIG_MEMORY_HOTREMOVE on s390, which depends on\nCONFIG_MIGRATION.  So far, CONFIG_MIGRATION is only available with NUMA\nsupport.\n\nThis patch makes CONFIG_MIGRATION selectable for architectures that define\nARCH_ENABLE_MEMORY_HOTREMOVE.  When MIGRATION is enabled w/o NUMA, the\nkernel won\u0027t compile because migrate_vmas() does not know about\nvm_ops-\u003emigrate() and vma_migratable() does not know about policy_zone.\nTo fix this, those two functions can be restricted to \u0027#ifdef CONFIG_NUMA\u0027\nbecause they are not being used w/o NUMA.  vma_migratable() is moved over\nfrom migrate.h to mempolicy.h.\n\n[kosaki.motohiro@jp.fujitsu.com: build fix]\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Gerald Schaefer \u003cgerald.schaefer@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: KOSAKI Motorhiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "906e0be197232c219197d058ef5095baa7764cd4",
      "tree": "0b2401f5448ddb1b856da8c080e71e0080183c41",
      "parents": [
        "4ab688c51226188f2d4ad4f789032c107944ef89"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun May 06 14:50:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:57 2007 -0700"
      },
      "message": "page migration: Only migrate pages if allocation in the highest zone is possible\n\nAddress spaces contain an allocation flag that specifies restriction on the\nzone for pages placed in the mapping.  I.e.  some device may require pages\nto be allocated from a DMA zone.  Block devices may not be able to use\npages from HIGHMEM.\n\nMemory policies and the common use of page migration works only on the\nhighest zone.  If the address space does not allow allocation from the\nhighest zone then the pages in the address space are not migratable simply\nbecause we can only allocate memory for a specified node if we allow\nallocation for the highest zone on each node.\n\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0dc952dc3e6d96d554a19fa7bee3f3b1d55e3cff",
      "tree": "1dcf2ff93784716143b7acef816888a71a9504c2",
      "parents": [
        "1f2b69f9bdce8461341e5fb864568a2ee90079c8"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Mon Mar 05 00:30:33 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 05 07:57:51 2007 -0800"
      },
      "message": "[PATCH] Page migration: Fix vma flag checking\n\nCurrently we do not check for vma flags if sys_move_pages is called to move\nindividual pages.  If sys_migrate_pages is called to move pages then we\ncheck for vm_flags that indicate a non migratable vma but that still\nincludes VM_LOCKED and we can migrate mlocked pages.\n\nExtract the vma_migratable check from mm/mempolicy.c, fix it and put it\ninto migrate.h so that is can be used from both locations.\n\nProblem was spotted by Lee Schermerhorn\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.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"
    },
    {
      "commit": "7b2259b3e53f128c10a9fded0965e69d4a949847",
      "tree": "c1827144c22dd49775190e05de791531e9fd21fd",
      "parents": [
        "68402ddc677005ed1b1359bbc1f279548cfc0928"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Sun Jun 25 05:46:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:00:55 2006 -0700"
      },
      "message": "[PATCH] page migration: Support a vma migration function\n\nHooks for calling vma specific migration functions\n\nWith this patch a vma may define a vma-\u003evm_ops-\u003emigrate function.  That\nfunction may perform page migration on its own (some vmas may not contain page\nstructs and therefore cannot be handled by regular page migration.  Pages in a\nvma may require special preparatory treatment before migration is possible\netc) .  Only mmap_sem is held when the migration function is called.  The\nmigrate() function gets passed two sets of nodemasks describing the source and\nthe target of the migration.  The flags parameter either contains\n\nMPOL_MF_MOVE\twhich means that only pages used exclusively by\n\t\tthe specified mm should be moved\n\nor\n\nMPOL_MF_MOVE_ALL which means that pages shared with other processes\n\t\tshould also be moved.\n\nThe migration function returns 0 on success or an error condition.  An error\ncondition will prevent regular page migration from occurring.\n\nOn its own this patch cannot be included since there are no users for this\nfunctionality.  But it seems that the uncached allocator will need this\nfunctionality at some point.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "742755a1d8ce2b548428f7aacf1758b4bba50080",
      "tree": "53426657e14dc19a694d418274c9a6f4dcb8a997",
      "parents": [
        "95a402c3847cc16f4ba03013cd01404fa0f14c2e"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] page migration: sys_move_pages(): support moving of individual pages\n\nmove_pages() is used to move individual pages of a process. The function can\nbe used to determine the location of pages and to move them onto the desired\nnode. move_pages() returns status information for each page.\n\nlong move_pages(pid, number_of_pages_to_move,\n\t\taddresses_of_pages[],\n\t\tnodes[] or NULL,\n\t\tstatus[],\n\t\tflags);\n\nThe addresses of pages is an array of void * pointing to the\npages to be moved.\n\nThe nodes array contains the node numbers that the pages should be moved\nto. If a NULL is passed instead of an array then no pages are moved but\nthe status array is updated. The status request may be used to determine\nthe page state before issuing another move_pages() to move pages.\n\nThe status array will contain the state of all individual page migration\nattempts when the function terminates. The status array is only valid if\nmove_pages() completed successfullly.\n\nPossible page states in status[]:\n\n0..MAX_NUMNODES\tThe page is now on the indicated node.\n\n-ENOENT\t\tPage is not present\n\n-EACCES\t\tPage is mapped by multiple processes and can only\n\t\tbe moved if MPOL_MF_MOVE_ALL is specified.\n\n-EPERM\t\tThe page has been mlocked by a process/driver and\n\t\tcannot be moved.\n\n-EBUSY\t\tPage is busy and cannot be moved. Try again later.\n\n-EFAULT\t\tInvalid address (no VMA or zero page).\n\n-ENOMEM\t\tUnable to allocate memory on target node.\n\n-EIO\t\tUnable to write back page. The page must be written\n\t\tback in order to move it since the page is dirty and the\n\t\tfilesystem does not provide a migration function that\n\t\twould allow the moving of dirty pages.\n\n-EINVAL\t\tA dirty page cannot be moved. The filesystem does not provide\n\t\ta migration function and has no ability to write back pages.\n\nThe flags parameter indicates what types of pages to move:\n\nMPOL_MF_MOVE\tMove pages that are only mapped by the process.\n\nMPOL_MF_MOVE_ALL Also move pages that are mapped by multiple processes.\n\t\tRequires sufficient capabilities.\n\nPossible return codes from move_pages()\n\n-ENOENT\t\tNo pages found that would require moving. All pages\n\t\tare either already on the target node, not present, had an\n\t\tinvalid address or could not be moved because they were\n\t\tmapped by multiple processes.\n\n-EINVAL\t\tFlags other than MPOL_MF_MOVE(_ALL) specified or an attempt\n\t\tto migrate pages in a kernel thread.\n\n-EPERM\t\tMPOL_MF_MOVE_ALL specified without sufficient priviledges.\n\t\tor an attempt to move a process belonging to another user.\n\n-EACCES\t\tOne of the target nodes is not allowed by the current cpuset.\n\n-ENODEV\t\tOne of the target nodes is not online.\n\n-ESRCH\t\tProcess does not exist.\n\n-E2BIG\t\tToo many pages to move.\n\n-ENOMEM\t\tNot enough memory to allocate control array.\n\n-EFAULT\t\tParameters could not be accessed.\n\nA test program for move_pages() may be found with the patches\non ftp.kernel.org:/pub/linux/kernel/people/christoph/pmig/patches-2.6.17-rc4-mm3\n\nFrom: Christoph Lameter \u003cclameter@sgi.com\u003e\n\n  Detailed results for sys_move_pages()\n\n  Pass a pointer to an integer to get_new_page() that may be used to\n  indicate where the completion status of a migration operation should be\n  placed.  This allows sys_move_pags() to report back exactly what happened to\n  each page.\n\n  Wish there would be a better way to do this. Looks a bit hacky.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Jes Sorensen \u003cjes@trained-monkey.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95a402c3847cc16f4ba03013cd01404fa0f14c2e",
      "tree": "0fd9b3379f70cc99b2325bccaa150089abf6c8b3",
      "parents": [
        "aaa994b300a172afafab47938804836b923e5ef7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] page migration: use allocator function for migrate_pages()\n\nInstead of passing a list of new pages, pass a function to allocate a new\npage.  This allows the correct placement of MPOL_INTERLEAVE pages during page\nmigration.  It also further simplifies the callers of migrate pages.\nmigrate_pages() becomes similar to migrate_pages_to() so drop\nmigrate_pages_to().  The batching of new page allocations becomes unnecessary.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Jes Sorensen \u003cjes@trained-monkey.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aaa994b300a172afafab47938804836b923e5ef7",
      "tree": "ccc1acf72e9d1dfbd25fa5f8e067a195f93b0319",
      "parents": [
        "e24f0b8f76cc3dd96f36f5b6a9f020f6c3fce198"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] page migration: handle freeing of pages in migrate_pages()\n\nDo not leave pages on the lists passed to migrate_pages().  Seems that we will\nnot need any postprocessing of pages.  This will simplify the handling of\npages by the callers of migrate_pages().\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Jes Sorensen \u003cjes@trained-monkey.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d1db3b1170db4e8bf0531dd636742269c2cf579",
      "tree": "1161ed614a55869c278234d7472673fd1a577887",
      "parents": [
        "c3fcf8a5daacf350f0632e1379414c01f34eeea3"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:50 2006 -0700"
      },
      "message": "[PATCH] page migration cleanup: pass \"mapping\" to migration functions\n\nChange handling of address spaces.\n\nPass a pointer to the address space in which the page is migrated to all\nmigration function.  This avoids repeatedly having to retrieve the address\nspace pointer from the page and checking it for validity.  The old page\nmapping will change once migration has gone to a certain step, so it is less\nconfusing to have the pointer always available.\n\nMove the setting of the mapping and index for the new page into\nmigrate_pages().\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7340f73307abed9283d0a07570d06e228c205dd",
      "tree": "e786e2d09cfaf670128571029d833d1d27998d59",
      "parents": [
        "1d8b85ccf1ed53a71b092fb5d807edf1ea7dabdd"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:50 2006 -0700"
      },
      "message": "[PATCH] page migration cleanup: remove useless definitions\n\nRemove the export for migrate_page_remove_references() and migrate_page_copy()\nthat are unlikely to be used directly by filesystems implementing migration.\nThe export was useful when buffer_migrate_page() lived in fs/buffer.c but it\nhas now been moved to migrate.c in the migration reorg.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "9bf9e89c3d147ca8cf9622d2d053684fba77a464",
      "tree": "e47d654953aea7226b47489d4ed6e94acd8014d8",
      "parents": [
        "b5ac5d7edb64b3ca1a489b30d95d62492a1f0b80"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Mar 31 02:29:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] migrate_pages_to() must be defined for the no swap case\n\nFix migrate_pages_to() definition.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b20a35035f983f4ac7e29c4a68f30e43510007e0",
      "tree": "fdf090ddddbcc275349f62f71adc98649e2c683b",
      "parents": [
        "442295c94bf650221af3ef20fc68fa3e93876818"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Mar 22 00:09:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:06 2006 -0800"
      },
      "message": "[PATCH] page migration reorg\n\nCentralize the page migration functions in anticipation of additional\ntinkering.  Creates a new file mm/migrate.c\n\n1. Extract buffer_migrate_page() from fs/buffer.c\n\n2. Extract central migration code from vmscan.c\n\n3. Extract some components from mempolicy.c\n\n4. Export pageout() and remove_from_swap() from vmscan.c\n\n5. Make it possible to configure NUMA systems without page migration\n   and non-NUMA systems with page migration.\n\nI had to so some #ifdeffing in mempolicy.c that may need a cleanup.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
