)]}'
{
  "log": [
    {
      "commit": "ba52de123d454b57369f291348266d86f4b35070",
      "tree": "3973f3f3c853b5857b6b64a027cadd4fe954e3b9",
      "parents": [
        "577c4eb09d1034d0739e3135fd2cff50588024be"
      ],
      "author": {
        "name": "Theodore Ts\u0027o",
        "email": "tytso@mit.edu",
        "time": "Wed Sep 27 01:50:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:18 2006 -0700"
      },
      "message": "[PATCH] inode-diet: Eliminate i_blksize from the inode structure\n\nThis eliminates the i_blksize field from struct inode.  Filesystems that want\nto provide a per-inode st_blksize can do so by providing their own getattr\nroutine instead of using the generic_fillattr() function.\n\nNote that some filesystems were providing pretty much random (and incorrect)\nvalues for i_blksize.\n\n[bunk@stusta.de: cleanup]\n[akpm@osdl.org: generic_fillattr() fix]\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "930e652a21a08986b03d1f370f933057dc0db2dc",
      "tree": "c422f35bc2e7c17f58cb14544919affa52d8bac6",
      "parents": [
        "0112c4c6461fed12ed9bcb249f967bc17a23f6c4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:15 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Make futexes work under NOMMU conditions\n\nMake futexes work under NOMMU conditions.\n\nThis can be tested by running this in one shell:\n\n\t#define SYSERROR(X, Y) \\\n\t\tdo { if ((long)(X) \u003d\u003d -1L) { perror(Y); exit(1); }} while(0)\n\n\tint main()\n\t{\n\t\tint shmid, tmp, *f, n;\n\n\t\tshmid \u003d shmget(23, 4, IPC_CREAT|0666);\n\t\tSYSERROR(shmid, \"shmget\");\n\n\t\tf \u003d shmat(shmid, NULL, 0);\n\t\tSYSERROR(f, \"shmat\");\n\n\t\tn \u003d *f;\n\t\tprintf(\"WAIT: %p{%x}\\n\", f, n);\n\t\ttmp \u003d futex(f, FUTEX_WAIT, n, NULL, NULL, 0);\n\t\tSYSERROR(tmp, \"futex\");\n\t\tprintf(\"WAITED: %d\\n\", tmp);\n\n\t\ttmp \u003d shmdt(f);\n\t\tSYSERROR(tmp, \"shmdt\");\n\n\t\texit(0);\n\t}\n\nAnd then this in the other shell:\n\n\t#define SYSERROR(X, Y) \\\n\t\tdo { if ((long)(X) \u003d\u003d -1L) { perror(Y); exit(1); }} while(0)\n\n\tint main()\n\t{\n\t\tint shmid, tmp, *f;\n\n\t\tshmid \u003d shmget(23, 4, IPC_CREAT|0666);\n\t\tSYSERROR(shmid, \"shmget\");\n\n\t\tf \u003d shmat(shmid, NULL, 0);\n\t\tSYSERROR(f, \"shmat\");\n\n\t\t(*f)++;\n\t\tprintf(\"WAKE: %p{%x}\\n\", f, *f);\n\t\ttmp \u003d futex(f, FUTEX_WAKE, 1, NULL, NULL, 0);\n\t\tSYSERROR(tmp, \"futex\");\n\t\tprintf(\"WOKE: %d\\n\", tmp);\n\n\t\ttmp \u003d shmdt(f);\n\t\tSYSERROR(tmp, \"shmdt\");\n\n\t\texit(0);\n\t}\n\nThe first program will set up a SYSV IPC SHM segment and wait on a futex in it\nfor the number at the start to change.  The program will increment that number\nand wake the first program up.  This leads to output of the form:\n\n\tSHELL 1\t\t\tSHELL 2\n\t\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\t\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\t# /dowait\n\tWAIT: 0xc32ac000{0}\n\t\t\t\t# /dowake\n\t\t\t\tWAKE: 0xc32ac000{1}\n\tWAITED: 0\t\tWOKE: 1\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6fa5f80bc34da1a49b42117602b44441402cac2f",
      "tree": "7cdc7bf5c0df29b218c9c40d6cddd5124587b7a5",
      "parents": [
        "3034097a5017dd9281b1f795e80af9859627850e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Make mremap() partially work for NOMMU kernels\n\nMake mremap() partially work for NOMMU kernels.  It may resize a VMA provided\nthat it doesn\u0027t exceed the size of the slab object in which the storage is\nallocated that the VMA refers to.  Shareable VMAs may not be resized.\n\nMoving VMAs (as permitted by MREMAP_MAYMOVE) is not currently supported.\n\nThis patch also makes use of the fact that the VMA list is now ordered to cut\nit short when possible.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3034097a5017dd9281b1f795e80af9859627850e",
      "tree": "d03d6749ac52e6c23020bd9caa5fdee301ca8fa6",
      "parents": [
        "dbf8685c8e21404e3a8ed244bd0219d3c4b89101"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Order the per-mm_struct VMA list\n\nOrder the per-mm_struct VMA list by address so that searching it can be cut\nshort when the appropriate address has been exceeded.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d00c7b993712e4bb16d0012b35b654e40159b327",
      "tree": "79f8fc60f8e41e054abc39b5d69e84d7a389777c",
      "parents": [
        "7b4d5b8b39fd3701ed3693a89f2bd8f6ef49bce2"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Permit ptrace to ignore non-PROT_WRITE VMAs in NOMMU mode\n\nPermit ptrace to modify a section that\u0027s non-shared but is marked\nunwritable, such as is obtained by mapping the text segment of an ELF-FDPIC\nexecutable binary with into a binary that\u0027s being ptraced[*].\n\n[*] Under NOMMU conditions ptrace causes read-only MAP_PRIVATE mmaps to become\n    totally private copies because if a private mapping was actually shared\n    then the debugging setting breakpoints in it would potentially crash\n    other processes.\n\nThis is done by using the VM_MAYWRITE flag rather than the VM_WRITE flag\nwhen deciding whether to permit a write.\n\nWithout this patch a debugger can\u0027t set breakpoints in the mapped text\nsections of executables that are mapped read-only private, even if the\nmmap() syscall has taken a private copy because PT_PTRACED is set.\n\nIn addition, VM_MAYREAD is used instead of VM_READ for similar reasons.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b4d5b8b39fd3701ed3693a89f2bd8f6ef49bce2",
      "tree": "b1741de6753ec41a45a7b69276eeccb1bcb3e46d",
      "parents": [
        "910e46da4b4e93d56ffea318c64afa41868d5e6d"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Check VMA protections\n\nCheck the VMA protections in get_user_pages() against what\u0027s being asked.\n\nThis checks to see that we don\u0027t accidentally write on a non-writable VMA or\npermit an I/O mapping VMA to be accessed (which may lack page structs).\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "910e46da4b4e93d56ffea318c64afa41868d5e6d",
      "tree": "67f7dd9086dcf456101c843a1e310e7090a590db",
      "parents": [
        "0159b141d8b1f9b9f9cffacae47bec1e05c63b8b"
      ],
      "author": {
        "name": "Sonic Zhang",
        "email": "sonic.adi@gmail.com",
        "time": "Wed Sep 27 01:50:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] Check if start address is in vma region in NOMMU function get_user_pages()\n\nIn NOMMU arch, if run \"cat /proc/self/mem\", data from physical address 0\nare read.  This behavior is different from MMU arch.  In IA32, message\n\"cat: /proc/self/mem: Input/output error\" is reported.\n\nThis issue is rootcaused by not validate the start address in NOMMU\nfunction get_user_pages().  Following patch solves this issue.\n\nSigned-off-by: Sonic Zhang \u003csonic.adi@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0159b141d8b1f9b9f9cffacae47bec1e05c63b8b",
      "tree": "2555ce3afb2307b4532be4247d1f87e06f0071d0",
      "parents": [
        "5da6185bca064e35aa73a7c1f27488d2b96434f4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Use find_vma() rather than reimplementing a VMA search\n\nUse find_vma() in the NOMMU version of access_process_vm() rather than\nreimplementing it.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ec76a110f432e98277e464b82ace8dd66571689",
      "tree": "3ed8de0ea6869fe17bec7689c493a2db02f73f4a",
      "parents": [
        "361f6ed1d00f666a1a7c33f3e9aaccb713f9b9e4"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Sep 27 01:50:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:14 2006 -0700"
      },
      "message": "[PATCH] NOMMU: Check that access_process_vm() has a valid target\n\nCheck that access_process_vm() is accessing a valid mapping in the target\nprocess.\n\nThis limits ptrace() accesses and accesses through /proc/\u003cpid\u003e/maps to only\nthose regions actually mapped by a program.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d24afc57d51b1be41f95521e81399061fa5875a6",
      "tree": "325d8cd04919980d7d51e82d44dcfd9a4521e3f5",
      "parents": [
        "ead04089b138ed669658f80fafbe11fc7d97740b"
      ],
      "author": {
        "name": "Rolf Eike Beer",
        "email": "eike-kernel@sf-tec.de",
        "time": "Wed Sep 27 01:50:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] Mark __remove_vm_area() static\n\nThe function is exported but not used from anywhere else.  It\u0027s also marked as\n\"not for driver use\" so noone out there should really care.\n\nSigned-off-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ead04089b138ed669658f80fafbe11fc7d97740b",
      "tree": "35c623c292d569e9d8f99559836075ab8ec9be13",
      "parents": [
        "423b41d773abe443bb546ce91361192073b96f88"
      ],
      "author": {
        "name": "Rolf Eike Beer",
        "email": "eike-kernel@sf-tec.de",
        "time": "Wed Sep 27 01:50:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] Fix kerneldoc comments in mm/vmalloc.c\n\nThe empty line between the short description and the first argument\ndescription causes a section to appear twice in the generated manpage.\nAlso the short description should really be short: the script can\u0027t handle\nmultiple lines.\n\nSigned-off-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "423b41d773abe443bb546ce91361192073b96f88",
      "tree": "495b410fb4001ecf0daba6198e6b4c009a638ff8",
      "parents": [
        "17a3b05047119b7fc72ef03962e202becc659579"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Sep 27 01:50:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] mm/page_alloc: use NULL instead of 0 for ptr\n\nUse NULL instead of 0 for pointer value, eliminate sparse warnings.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f4b81804a2d1ab341a4613089dc31ecce0800ed8",
      "tree": "fdad77a7c40790908546a74a9b5918400d01333d",
      "parents": [
        "5d2923436217ba8bd05c5ee157712a391891c382"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Sep 27 01:50:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] do_no_pfn()\n\nImplement do_no_pfn() for handling mapping of memory without a struct page\nbacking it.  This avoids creating fake page table entries for regions which\nare not backed by real memory.\n\nThis feature is used by the MSPEC driver and other users, where it is\nhighly undesirable to have a struct page sitting behind the page (for\ninstance if the page is accessed in cached mode via the struct page in\nparallel to the the driver accessing it uncached, which can result in data\ncorruption on some architectures, such as ia64).\n\nThis version uses specific NOPFN_{SIGBUS,OOM} return values, rather than\nexpect all negative pfn values would be an error.  It also bugs on cow\nmappings as this would not work with the VM.\n\n[akpm@osdl.org: micro-optimise]\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5d2923436217ba8bd05c5ee157712a391891c382",
      "tree": "ddb06469d5a992a1839ca5d7f626486ac99490d2",
      "parents": [
        "66a550308b8e4cbaba185d0326cb05d1bd758101"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] zone_statistics: Use hot node instead of cold zone_pgdat\n\nNow that we have the node in the hot zone of struct zone we can avoid\naccessing zone_pgdat in zone_statistics.\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": "66a550308b8e4cbaba185d0326cb05d1bd758101",
      "tree": "e0ac829da7702413e57c7de288ce27398f32cfdb",
      "parents": [
        "d5f541ed6e31518508c688912e7464facf253c87"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] Do not allocate pagesets for unpopulated zones.\n\nWe do not need to allocate pagesets for unpopulated zones.\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": "d5f541ed6e31518508c688912e7464facf253c87",
      "tree": "028d296306e247ca32ec5db398d365dcd70d26b7",
      "parents": [
        "765c4507af71c39aba21006bbd3ec809fe9714ff"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:13 2006 -0700"
      },
      "message": "[PATCH] Add node to zone for the NUMA case\n\nAdd the node in order to optimize zone_to_nid.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "765c4507af71c39aba21006bbd3ec809fe9714ff",
      "tree": "8bf1f5f940af830e18321b4e8ceac55457e5b981",
      "parents": [
        "77f700dab4c05f8ee17584ec869672796d7bcb87"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] GFP_THISNODE for the slab allocator\n\nThis patch insures that the slab node lists in the NUMA case only contain\nslabs that belong to that specific node.  All slab allocations use\nGFP_THISNODE when calling into the page allocator.  If an allocation fails\nthen we fall back in the slab allocator according to the zonelists appropriate\nfor a certain context.\n\nThis allows a replication of the behavior of alloc_pages and alloc_pages node\nin the slab layer.\n\nCurrently allocations requested from the page allocator may be redirected via\ncpusets to other nodes.  This results in remote pages on nodelists and that in\nturn results in interrupt latency issues during cache draining.  Plus the slab\nis handing out memory as local when it is really remote.\n\nFallback for slab memory allocations will occur within the slab allocator and\nnot in the page allocator.  This is necessary in order to be able to use the\nexisting pools of objects on the nodes that we fall back to before adding more\npages to a slab.\n\nThe fallback function insures that the nodes we fall back to obey cpuset\nrestrictions of the current context.  We do not allocate objects from outside\nof the current cpuset context like before.\n\nNote that the implementation of locality constraints within the slab allocator\nrequires importing logic from the page allocator.  This is a mischmash that is\nnot that great.  Other allocators (uncached allocator, vmalloc, huge pages)\nface similar problems and have similar minimal reimplementations of the basic\nfallback logic of the page allocator.  There is another way of implementing a\nslab by avoiding per node lists (see modular slab) but this wont work within\nthe existing slab.\n\nV1-\u003eV2:\n- Use NUMA_BUILD to avoid #ifdef CONFIG_NUMA\n- Exploit GFP_THISNODE being 0 in the NON_NUMA case to avoid another\n  #ifdef\n\n[akpm@osdl.org: build fix]\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": "08e0f6a9705376732fd3bc9bf8ba97a6b5211eb1",
      "tree": "dfb761013377b983641fae33223157880171c498",
      "parents": [
        "c72419138fa34e1bc1f1c6fa54ee77df55a05ed0"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] Add NUMA_BUILD definition in kernel.h to avoid #ifdef CONFIG_NUMA\n\nThe NUMA_BUILD constant is always available and will be set to 1 on\nNUMA_BUILDs.  That way checks valid only under CONFIG_NUMA can easily be done\nwithout #ifdef CONFIG_NUMA\n\nF.e.\n\nif (NUMA_BUILD \u0026\u0026 \u003cnuma_condition\u003e) {\n...\n}\n\n[akpm: not a thing we\u0027d normally do, but CONFIG_NUMA is special: it is\n causing ifdef explosion in core kernel, so let\u0027s see if this is a comfortable\n way in whcih to control that]\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": "c72419138fa34e1bc1f1c6fa54ee77df55a05ed0",
      "tree": "293e2d11f5d4b8487aeccbb4eca71f3572012c17",
      "parents": [
        "de3083ec3e6bfb1ab60bc8a410f37702529f953c"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Wed Sep 27 01:50:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] Condense output of show_free_areas()\n\nOn larger systems, the amount of output dumped on the console when you do\nSysRq-M is beyond insane.  This patch is trying to reduce it somewhat as\neven with the smaller NUMA systems that have hit the desktop this seems to\nbe a fair thing to do.\n\nThe philosophy I have taken is as follows:\n 1) If a zone is empty, don\u0027t tell, we don\u0027t need yet another line\n    telling us so. The information is available since one can look up\n    the fact how many zones were initialized in the first place.\n 2) Put as much information on a line is possible, if it can be done\n    in one line, rahter than two, then do it in one. I tried to format\n    the temperature stuff for easy reading.\n\nChange show_free_areas() to not print lines for empty zones.  If no zone\noutput is printed, the zone is empty.  This reduces the number of lines\ndumped to the console in sysrq on a large system by several thousand lines.\n\nChange the zone temperature printouts to use one line per CPU instead of\ntwo lines (one hot, one cold).  On a 1024 CPU, 1024 node system, this\nreduces the console output by over a million lines of output.\n\nWhile this is a bigger problem on large NUMA systems, it is also applicable\nto smaller desktop sized and mid range NUMA systems.\n\nOld format:\n\nMem-info:\nNode 0 DMA per-cpu:\ncpu 0 hot: high 42, batch 7 used:24\ncpu 0 cold: high 14, batch 3 used:1\ncpu 1 hot: high 42, batch 7 used:34\ncpu 1 cold: high 14, batch 3 used:0\ncpu 2 hot: high 42, batch 7 used:0\ncpu 2 cold: high 14, batch 3 used:0\ncpu 3 hot: high 42, batch 7 used:0\ncpu 3 cold: high 14, batch 3 used:0\ncpu 4 hot: high 42, batch 7 used:0\ncpu 4 cold: high 14, batch 3 used:0\ncpu 5 hot: high 42, batch 7 used:0\ncpu 5 cold: high 14, batch 3 used:0\ncpu 6 hot: high 42, batch 7 used:0\ncpu 6 cold: high 14, batch 3 used:0\ncpu 7 hot: high 42, batch 7 used:0\ncpu 7 cold: high 14, batch 3 used:0\nNode 0 DMA32 per-cpu: empty\nNode 0 Normal per-cpu: empty\nNode 0 HighMem per-cpu: empty\nNode 1 DMA per-cpu:\n[snip]\nFree pages:     5410688kB (0kB HighMem)\nActive:9536 inactive:4261 dirty:6 writeback:0 unstable:0 free:338168 slab:1931 mapped:1900 pagetables:208\nNode 0 DMA free:1676304kB min:3264kB low:4080kB high:4896kB active:128048kB inactive:61568kB present:1970880kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\nNode 0 DMA32 free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\nNode 0 Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\nNode 0 HighMem free:0kB min:512kB low:512kB high:512kB active:0kB inactive:0kB present:0kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\nNode 1 DMA free:1951728kB min:3280kB low:4096kB high:4912kB active:5632kB inactive:1504kB present:1982464kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\n....\n\nNew format:\n\nMem-info:\nNode 0 DMA per-cpu:\nCPU    0: Hot: hi:   42, btch:   7 usd:  41   Cold: hi:   14, btch:   3 usd:   2\nCPU    1: Hot: hi:   42, btch:   7 usd:  40   Cold: hi:   14, btch:   3 usd:   1\nCPU    2: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nCPU    3: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nCPU    4: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nCPU    5: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nCPU    6: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nCPU    7: Hot: hi:   42, btch:   7 usd:   0   Cold: hi:   14, btch:   3 usd:   0\nNode 1 DMA per-cpu:\n[snip]\nFree pages:     5411088kB (0kB HighMem)\nActive:9558 inactive:4233 dirty:6 writeback:0 unstable:0 free:338193 slab:1942 mapped:1918 pagetables:208\nNode 0 DMA free:1677648kB min:3264kB low:4080kB high:4896kB active:129296kB inactive:58864kB present:1970880kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\nNode 1 DMA free:1948448kB min:3280kB low:4096kB high:4912kB active:6864kB inactive:3536kB present:1982464kB pages_scanned:0 all_unreclaimable? no\nlowmem_reserve[]: 0 0 0 0\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "de3083ec3e6bfb1ab60bc8a410f37702529f953c",
      "tree": "4093fcf3991e9af4be57c7c942dbea42011e4eb7",
      "parents": [
        "0fd0e6b05aa096622f151cac2f81f2e6844fb1bb"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Sep 27 01:50:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] slab: fix kmalloc_node applying memory policies if nodeid \u003d\u003d numa_node_id()\n\nkmalloc_node() falls back to ___cache_alloc() under certain conditions and\nat that point memory policies may be applied redirecting the allocation\naway from the current node.  Therefore kmalloc_node(...,numa_node_id()) or\nkmalloc_node(...,-1) may not return memory from the local node.\n\nFix this by doing the policy check in __cache_alloc() instead of\n____cache_alloc().\n\nThis version here is a cleanup of Kiran\u0027s patch.\n\n- Tested on ia64.\n- Extra material removed.\n- Consolidate the exit path if alternate_node_alloc() returned an object.\n\n[akpm@osdl.org: warning fix]\nSigned-off-by: Alok N Kataria \u003calok.kataria@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\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": "0fd0e6b05aa096622f151cac2f81f2e6844fb1bb",
      "tree": "4fd336eaea48b320f69e970323eef5dc77c62f20",
      "parents": [
        "5b99cd0effaf846240a15441aec459a592577eaf"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Wed Sep 27 01:50:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] page invalidation cleanup\n\nClean up the invalidate code, and use a common function to safely remove\nthe page from pagecache.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e129b5c23c2b471d47f1c5d2b8b193fc2034af43",
      "tree": "78232266849d0f04b056b0f44554bcb476f0b8e1",
      "parents": [
        "fb01439c5b778d5974a488c5d4fe85e6d0e18a68"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Sep 27 01:50:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] vm: add per-zone writeout counter\n\nThe VM is supposed to minimise the number of pages which get written off the\nLRU (for IO scheduling efficiency, and for high reclaim-success rates).  But\nwe don\u0027t actually have a clear way of showing how true this is.\n\nSo add `nr_vmscan_write\u0027 to /proc/vmstat and /proc/zoneinfo - the number of\npages which have been written by the vm scanner in this zone and globally.\n\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb01439c5b778d5974a488c5d4fe85e6d0e18a68",
      "tree": "dd5483b2555adbdc51f215fcb010484d423f63a0",
      "parents": [
        "9c7cd6877cf8db15269163deda69392263124c1e"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@skynet.ie",
        "time": "Wed Sep 27 01:49:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:12 2006 -0700"
      },
      "message": "[PATCH] Allow an arch to expand node boundaries\n\nArch-independent zone-sizing determines the size of a node\n(pgdat-\u003enode_spanned_pages) based on the physical memory that was\nregistered by the architecture.  However, when\nCONFIG_MEMORY_HOTPLUG_RESERVE is set, the architecture expects that the\nspanned_pages will be much larger and that mem_map will be allocated that\nis used lated on memory hot-add.\n\nThis patch allows an architecture that sets CONFIG_MEMORY_HOTPLUG_RESERVE\nto call push_node_boundaries() which will set the node beginning and end to\nat *least* the requested boundary.\n\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"Keith Mannthey\" \u003ckmannth@gmail.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9c7cd6877cf8db15269163deda69392263124c1e",
      "tree": "ff5197bdd2d5f02a5032c050eb39349534a4b14b",
      "parents": [
        "0e0b864e069c52a7b3e4a7da56e29b03a012fd75"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@skynet.ie",
        "time": "Wed Sep 27 01:49:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:11 2006 -0700"
      },
      "message": "[PATCH] Account for holes that are outside the range of physical memory\n\nabsent_pages_in_range() made the assumption that users of the API would not\ncare about holes beyound the end of physical memory.  This was not the\ncase.  This patch will account for ranges outside of physical memory as\nholes correctly.\n\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"Keith Mannthey\" \u003ckmannth@gmail.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0e0b864e069c52a7b3e4a7da56e29b03a012fd75",
      "tree": "e3fcfd997ef912ed3c61cb2b5c2ca57a7f45ec58",
      "parents": [
        "05e0caad3b7bd0d0fbeff980bca22f186241a501"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Wed Sep 27 01:49:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:11 2006 -0700"
      },
      "message": "[PATCH] Account for memmap and optionally the kernel image as holes\n\nThe x86_64 code accounted for memmap and some portions of the the DMA zone as\nholes.  This was because those areas would never be reclaimed and accounting\nfor them as memory affects min watermarks.  This patch will account for the\nmemmap as a memory hole.  Architectures may optionally use set_dma_reserve()\nif they wish to account for a portion of memory in ZONE_DMA as a hole.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"Keith Mannthey\" \u003ckmannth@gmail.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c713216deebd95d2b0ab38fef8bb2361c0180c2d",
      "tree": "a5a8c61be427e3591811ff712b9ec7ef2f1a1f20",
      "parents": [
        "2bd0cfbde2c0a74e209acbf045f1298cc2f61e01"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Wed Sep 27 01:49:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:11 2006 -0700"
      },
      "message": "[PATCH] Introduce mechanism for registering active regions of memory\n\nAt a basic level, architectures define structures to record where active\nranges of page frames are located.  Once located, the code to calculate zone\nsizes and holes in each architecture is very similar.  Some of this zone and\nhole sizing code is difficult to read for no good reason.  This set of patches\neliminates the similar-looking architecture-specific code.\n\nThe patches introduce a mechanism where architectures register where the\nactive ranges of page frames are with add_active_range().  When all areas have\nbeen discovered, free_area_init_nodes() is called to initialise the pgdat and\nzones.  The zone sizes and holes are then calculated in an architecture\nindependent manner.\n\nPatch 1 introduces the mechanism for registering and initialising PFN ranges\nPatch 2 changes ppc to use the mechanism - 139 arch-specific LOC removed\nPatch 3 changes x86 to use the mechanism - 136 arch-specific LOC removed\nPatch 4 changes x86_64 to use the mechanism - 74 arch-specific LOC removed\nPatch 5 changes ia64 to use the mechanism - 52 arch-specific LOC removed\nPatch 6 accounts for mem_map as a memory hole as the pages are not reclaimable.\n\tIt adjusts the watermarks slightly\n\nTony Luck has successfully tested for ia64 on Itanium with tiger_defconfig,\ngensparse_defconfig and defconfig.  Bob Picco has also tested and debugged on\nIA64.  Jack Steiner successfully boot tested on a mammoth SGI IA64-based\nmachine.  These were on patches against 2.6.17-rc1 and release 3 of these\npatches but there have been no ia64-changes since release 3.\n\nThere are differences in the zone sizes for x86_64 as the arch-specific code\nfor x86_64 accounts the kernel image and the starting mem_maps as memory holes\nbut the architecture-independent code accounts the memory as present.\n\nThe big benefit of this set of patches is a sizable reduction of\narchitecture-specific code, some of which is very hairy.  There should be a\ngreater reduction when other architectures use the same mechanisms for zone\nand hole sizing but I lack the hardware to test on.\n\nAdditional credit;\n\tDave Hansen for the initial suggestion and comments on early patches\n\tAndy Whitcroft for reviewing early versions and catching numerous\n\t\terrors\n\tTony Luck for testing and debugging on IA64\n\tBob Picco for fixing bugs related to pfn registration, reviewing a\n\t\tnumber of patch revisions, providing a number of suggestions\n\t\ton future direction and testing heavily\n\tJack Steiner and Robin Holt for testing on IA64 and clarifying\n\t\tissues related to memory holes\n\tYasunori for testing on IA64\n\tAndi Kleen for reviewing and feeding back about x86_64\n\tChristian Kujau for providing valuable information related to ACPI\n\t\tproblems on x86_64 and testing potential fixes\n\nThis patch:\n\nDefine the structure to represent an active range of page frames within a node\nin an architecture independent manner.  Architectures are expected to register\nactive ranges of PFNs using add_active_range(nid, start_pfn, end_pfn) and call\nfree_area_init_nodes() passing the PFNs of the end of each zone.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Bob Picco \u003cbob.picco@hp.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: \"Keith Mannthey\" \u003ckmannth@gmail.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "133d205a18b7a4d8cb52959c5310f6664277cf61",
      "tree": "be3056dedc3190d06647a07425e8fcdcce5da868",
      "parents": [
        "1a1d92c10dd24bbdc28b3d6e2d03ec199dd3a65b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Sep 27 01:49:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:11 2006 -0700"
      },
      "message": "[PATCH] Make kmem_cache_destroy() return void\n\nun-, de-, -free, -destroy, -exit, etc functions should in general return\nvoid.  Also,\n\nThere is very little, say, filesystem driver code can do upon failed\nkmem_cache_destroy().  If it will be decided to BUG in this case, BUG\nshould be put in generic code, instead.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a1d92c10dd24bbdc28b3d6e2d03ec199dd3a65b",
      "tree": "fade83955f75e718e39153d6f81d221403338bed",
      "parents": [
        "f52720ca5f48574e347dff35ffe6b389ace61537"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Sep 27 01:49:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:10 2006 -0700"
      },
      "message": "[PATCH] Really ignore kmem_cache_destroy return value\n\n* Rougly half of callers already do it by not checking return value\n* Code in drivers/acpi/osl.c does the following to be sure:\n\n\t(void)kmem_cache_destroy(cache);\n\n* Those who check it printk something, however, slab_error already printed\n  the name of failed cache.\n* XFS BUGs on failed kmem_cache_destroy which is not the decision\n  low-level filesystem driver should make. Converted to ignore.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f623f0db8e6aa86a37be86167e4ff478821a9f4f",
      "tree": "fab12e8dc57d14101e9e512ba708b83f74551dd9",
      "parents": [
        "e3920fb42c8ddfe63befb54d95c0e13eabacea9b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Sep 25 23:32:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: Fix mark_free_pages\n\nClean up mm/page_alloc.c#mark_free_pages() and make it avoid clearing\nPageNosaveFree for PageNosave pages.  This allows us to get rid of an ugly\nhack in kernel/power/snapshot.c#copy_data_pages().\n\nAdditionally, the page-copying loop in copy_data_pages() is moved to an\ninline function.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "546e0d271941dd1ff6961e2a1f7eac75f1fc277e",
      "tree": "60c74a9598f7cb4622c1b6acd25df5df67284353",
      "parents": [
        "8c002494b55119a3fd1dddee83b4fb75cfda47e5"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Sep 25 23:32:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:58 2006 -0700"
      },
      "message": "[PATCH] swsusp: read speedup\n\nImplement async reads for swsusp resuming.\n\nCrufty old PIII testbox:\n\t15.7 MB/s -\u003e 20.3 MB/s\n\nSony Vaio:\n\t14.6 MB/s -\u003e 33.3 MB/s\n\nI didn\u0027t implement the post-resume bio_set_pages_dirty().  I don\u0027t really\nunderstand why resume needs to run set_page_dirty() against these pages.\n\nIt might be a worry that this code modifies PG_Uptodate, PG_Error and\nPG_Locked against the image pages.  Can this possibly affect the resumed-into\nkernel?  Hopefully not, if we\u0027re atomically restoring its mem_map?\n\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Laurent Riffard \u003claurent.riffard@free.fr\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab954160350c91c77ae03740ef90458c3ad5412c",
      "tree": "28f99d765c2c6d497a1f5543b1867875cd6102a5",
      "parents": [
        "3a4f7577c9ef393ca80c783f02ffbc125de771c7"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Sep 25 23:32:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:58 2006 -0700"
      },
      "message": "[PATCH] swsusp: write speedup\n\nSwitch the swsusp writeout code from 4k-at-a-time to 4MB-at-a-time.\n\nCrufty old PIII testbox:\n\t12.9 MB/s -\u003e 20.9 MB/s\n\nSony Vaio:\n\t14.7 MB/s -\u003e 26.5 MB/s\n\nThe implementation is crude.  A better one would use larger BIOs, but wouldn\u0027t\ngain any performance.\n\nThe memcpys will be mostly pipelined with the IO and basically come for free.\n\nThe ENOMEM path has not been tested.  It should be.\n\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "89fa30242facca249aead2aac03c4c69764f911c",
      "tree": "1ac46b4777b819f2a4793d8e37330576ae5089ec",
      "parents": [
        "4415cc8df630b05d3a54267d5f3e5c0b63a4ec05"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:52 2006 -0700"
      },
      "message": "[PATCH] NUMA: Add zone_to_nid function\n\nThere are many places where we need to determine the node of a zone.\nCurrently we use a difficult to read sequence of pointer dereferencing.\nPut that into an inline function and use throughout VM.  Maybe we can find\na way to optimize the lookup in the future.\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": "4415cc8df630b05d3a54267d5f3e5c0b63a4ec05",
      "tree": "528a12aceb17a9c62323425bdc1dc989eb0375c5",
      "parents": [
        "5a291b98b2116d669449885abef3000f747504b3"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:52 2006 -0700"
      },
      "message": "[PATCH] Hugepages: Use page_to_nid rather than traversing zone pointers\n\nI found two location in hugetlb.c where we chase pointer instead of using\npage_to_nid().  Page_to_nid is more effective and can get the node directly\nfrom page flags.\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": "5a291b98b2116d669449885abef3000f747504b3",
      "tree": "25b2c9a9e989bea0a860ae13dffbe0e3a243012b",
      "parents": [
        "83e33a4711760469f5c3861b8ffea4947656d4eb"
      ],
      "author": {
        "name": "Ram Gupta",
        "email": "ram.gupta5@gmail.com",
        "time": "Mon Sep 25 23:31:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:52 2006 -0700"
      },
      "message": "[PATCH] oom-kill: update comments to reflect current code\n\nUpdate the comments for __oom_kill_task() to reflect the code changes.\n\nSigned-off-by: Ram Gupta \u003cr.gupta@astronautics.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83e33a4711760469f5c3861b8ffea4947656d4eb",
      "tree": "3c6b534760dee49a77157eb6512aeb329e19bc2c",
      "parents": [
        "0ff38490c836dc379ff7ec45b10a15a662f4e5f6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:52 2006 -0700"
      },
      "message": "[PATCH] zone reclaim with slab: avoid unecessary off node allocations\n\nMinor performance fix.\n\nIf we reclaimed enough slab pages from a zone then we can avoid going off\nnode with the current allocation.  Take care of updating nr_reclaimed when\nreclaiming from the slab.\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": "0ff38490c836dc379ff7ec45b10a15a662f4e5f6",
      "tree": "cb42d5d3cace3c8d12f0b304879039c503807981",
      "parents": [
        "972d1a7b140569084439a81265a0f15b74e924e0"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] zone_reclaim: dynamic slab reclaim\n\nCurrently one can enable slab reclaim by setting an explicit option in\n/proc/sys/vm/zone_reclaim_mode.  Slab reclaim is then used as a final\noption if the freeing of unmapped file backed pages is not enough to free\nenough pages to allow a local allocation.\n\nHowever, that means that the slab can grow excessively and that most memory\nof a node may be used by slabs.  We have had a case where a machine with\n46GB of memory was using 40-42GB for slab.  Zone reclaim was effective in\ndealing with pagecache pages.  However, slab reclaim was only done during\nglobal reclaim (which is a bit rare on NUMA systems).\n\nThis patch implements slab reclaim during zone reclaim.  Zone reclaim\noccurs if there is a danger of an off node allocation.  At that point we\n\n1. Shrink the per node page cache if the number of pagecache\n   pages is more than min_unmapped_ratio percent of pages in a zone.\n\n2. Shrink the slab cache if the number of the nodes reclaimable slab pages\n   (patch depends on earlier one that implements that counter)\n   are more than min_slab_ratio (a new /proc/sys/vm tunable).\n\nThe shrinking of the slab cache is a bit problematic since it is not node\nspecific.  So we simply calculate what point in the slab we want to reach\n(current per node slab use minus the number of pages that neeed to be\nallocated) and then repeately run the global reclaim until that is\nunsuccessful or we have reached the limit.  I hope we will have zone based\nslab reclaim at some point which will make that easier.\n\nThe default for the min_slab_ratio is 5%\n\nAlso remove the slab option from /proc/sys/vm/zone_reclaim_mode.\n\n[akpm@osdl.org: cleanups]\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": "972d1a7b140569084439a81265a0f15b74e924e0",
      "tree": "e86e676e407503ef3d98020a88bb925235f11434",
      "parents": [
        "8417bba4b151346ed475fcc923693c9e3be89063"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] ZVC: Support NR_SLAB_RECLAIMABLE / NR_SLAB_UNRECLAIMABLE\n\nRemove the atomic counter for slab_reclaim_pages and replace the counter\nand NR_SLAB with two ZVC counter that account for unreclaimable and\nreclaimable slab pages: NR_SLAB_RECLAIMABLE and NR_SLAB_UNRECLAIMABLE.\n\nChange the check in vmscan.c to refer to to NR_SLAB_RECLAIMABLE.  The\nintend seems to be to check for slab pages that could be freed.\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": "8417bba4b151346ed475fcc923693c9e3be89063",
      "tree": "93d559e32bc76077c1f837aed09a5df56849c610",
      "parents": [
        "d00bcc98d7ec2c87391c9d9e1cca519ef64d33ef"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] Replace min_unmapped_ratio by min_unmapped_pages in struct zone\n\n*_pages is a better description of the role of the variable.\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": "d00bcc98d7ec2c87391c9d9e1cca519ef64d33ef",
      "tree": "08b7d0fafba03d7b1d4d1d861897f78658aba173",
      "parents": [
        "39bbcb8f88154c4ac9853baf3f1134af4c987517"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] Extract the allocpercpu functions from the slab allocator\n\nThe allocpercpu functions __alloc_percpu and __free_percpu() are heavily\nusing the slab allocator.  However, they are conceptually slab.  This also\nsimplifies SLOB (at this point slob may be broken in mm.  This should fix\nit).\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39bbcb8f88154c4ac9853baf3f1134af4c987517",
      "tree": "79f9867ead896c28d138545089e6d85db426c09f",
      "parents": [
        "006d22d9bbb7e66279ba5cc4556b54eeaf8fd556"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] mm: do not check unpopulated zones for draining and counter updates\n\nIf a zone is unpopulated then we do not need to check for pages that are to\nbe drained and also not for vm counters that may need to be updated.\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": "006d22d9bbb7e66279ba5cc4556b54eeaf8fd556",
      "tree": "5af5a6676af234db8836bb1e3ef71e6cf8ccb0a9",
      "parents": [
        "46a82b2d5591335277ed2930611f6acb4ce654ed"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:51 2006 -0700"
      },
      "message": "[PATCH] Optimize free_one_page\n\nFree one_page currently adds the page to a fake list and calls\nfree_page_bulk.  Fee_page_bulk takes it off again and then calles\n__free_one_page.\n\nMake free_one_page go directly to __free_one_page.  Saves list on / off and\na temporary list in free_one_page for higher ordered 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": "d2e7b7d0aa021847c59f882b066e7d3812902870",
      "tree": "173a2271e657a1171c25de9b943bdfb92922acab",
      "parents": [
        "980128f223fa3c75e3ebdde650c9f1bcabd4c0a2"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Sep 25 23:31:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] fix potential stack overflow in mm/slab.c\n\nOn High end systems (1024 or so cpus) this can potentially cause stack\noverflow. Fix the stack usage.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "980128f223fa3c75e3ebdde650c9f1bcabd4c0a2",
      "tree": "b0fa592cf621cebc674b9ec1a4ab4e2558ec7aaf",
      "parents": [
        "fbd98167e653535c5816be154f2149c0efa7757d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] Define easier to handle GFP_THISNODE\n\nIn many places we will need to use the same combination of flags.  Specify\na single GFP_THISNODE definition for ease of use in gfp.h.\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": "1192d526412b1b8ccb1493064cea06efc12c772b",
      "tree": "8caa9e73ae1ead8d057ca6d273ed091c324e9ef9",
      "parents": [
        "bd1b1677b5d4f39deda068bf5cc43ce3aaec839f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] Cleanup: Add zone pointer to get_page_from_freelist\n\nThere are frequent references to *z in get_page_from_freelist.\n\nAdd an explicit zone variable that can be used in all these places.\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": "3d99cfb5f46191fc68f1343feeb2cf835001f7d7",
      "tree": "d679d78368b775e5f2dc4f94cc56e1512d663f86",
      "parents": [
        "9b819d204cf602eab1a53a9ec4b8d2ca51e02a1d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:43 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] sys_move_pages: Do not fall back to other nodes\n\nIf the user specified a node where we should move the page to then we\nreally do not want any other node.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b819d204cf602eab1a53a9ec4b8d2ca51e02a1d",
      "tree": "9442bf01a00a93a8ae54462fb4878588e1b2a6bf",
      "parents": [
        "056c62418cc639bf2fe962c6a6ee56054b838bc7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] Add __GFP_THISNODE to avoid fallback to other nodes and ignore cpuset/memory policy restrictions\n\nAdd a new gfp flag __GFP_THISNODE to avoid fallback to other nodes.  This\nflag is essential if a kernel component requires memory to be located on a\ncertain node.  It will be needed for alloc_pages_node() to force allocation\non the indicated node and for alloc_pages() to force allocation on the\ncurrent node.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "056c62418cc639bf2fe962c6a6ee56054b838bc7",
      "tree": "1c46080d82b43e406c6475199b9e171c2ea1cd6b",
      "parents": [
        "2ed3a4ef95ef1a13a424378c34ebd9b7e593f212"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Mon Sep 25 23:31:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] slab: fix lockdep warnings\n\nPlace the alien array cache locks of on slab malloc slab caches on a\nseperate lockdep class.  This avoids false positives from lockdep\n\n[akpm@osdl.org: build fix]\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ed3a4ef95ef1a13a424378c34ebd9b7e593f212",
      "tree": "bb08e0b3526ab71639197fad649349dc222e0451",
      "parents": [
        "117f6eb1d8b8deb6f19fc88fc15bdb413c2a0c79"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] slab: do not panic when alloc_kmemlist fails and slab is up\n\nIt is fairly easy to get a system to oops by simply sizing a cache via\n/proc in such a way that one of the chaches (shared is easiest) becomes\nbigger than the maximum allowed slab allocation size.  This occurs because\nenable_cpucache() fails if it cannot reallocate some caches.\n\nHowever, enable_cpucache() is used for multiple purposes: resizing caches,\ncache creation and bootstrap.\n\nIf the slab is already up then we already have working caches.  The resize\ncan fail without a problem.  We just need to return the proper error code.\nF.e.  after this patch:\n\n# echo \"size-64 10000 50 1000\" \u003e/proc/slabinfo\n-bash: echo: write error: Cannot allocate memory\n\nnotice no OOPS.\n\nIf we are doing a kmem_cache_create() then we also should not panic but\nreturn -ENOMEM.\n\nIf on the other hand we do not have a fully bootstrapped slab allocator yet\nthen we should indeed panic since we are unable to bring up the slab to its\nfull functionality.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "117f6eb1d8b8deb6f19fc88fc15bdb413c2a0c79",
      "tree": "471f09cb6223d8241c7edbc283c438414d7cf34e",
      "parents": [
        "dbe5e69d2d6e591996ea2b817b887d03b60bb143"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:50 2006 -0700"
      },
      "message": "[PATCH] slab: extract __kmem_cache_destroy from kmem_cache_destroy\n\nThe ability to free memory allocated to a slab cache is also useful if an\nerror occurs during setup of a slab.  So extract the function.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dbe5e69d2d6e591996ea2b817b887d03b60bb143",
      "tree": "09e21f2e0da60faef982d02a9224e62c409e776a",
      "parents": [
        "da6052f7b33abe55fbfd7d2213815f58c00a88d4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Sep 25 23:31:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] slab: optimize kmalloc_node the same way as kmalloc\n\n[akpm@osdl.org: export fix]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-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": "da6052f7b33abe55fbfd7d2213815f58c00a88d4",
      "tree": "a2deda88ae8e9fc33d9a0ce80f42fde2c55c7bbc",
      "parents": [
        "e5ac9c5aec7c4bc57fa93f2d37d760a22cb7bd33"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:35 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] update some mm/ comments\n\nLet\u0027s try to keep mm/ comments more useful and up to date. This is a start.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e5ac9c5aec7c4bc57fa93f2d37d760a22cb7bd33",
      "tree": "3f8824da788608592a06cd888eca220c297eb901",
      "parents": [
        "dfd54cbcc0b834652389ce99b5e656ea5f44a3c1"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Mon Sep 25 23:31:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] Add some comments to slab.c\n\nAlso, checks if we get a valid slabp_cache for off slab slab-descriptors.\nWe should always get this.  If we don\u0027t, then in that case we, will have to\ndisable off-slab descriptors for this cache and do the calculations again.\nThis is a rare case, so add a BUG_ON, for now, just in case.\n\nSigned-off-by: Alok N Kataria \u003calok.kataria@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dfd54cbcc0b834652389ce99b5e656ea5f44a3c1",
      "tree": "7c403a50b42b2809bb9b18122cbd83e8e2c180c9",
      "parents": [
        "b72f160443cb78b2f8addae6e331d2adaa70f869"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Sep 25 23:31:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] bootmem: use MAX_DMA_ADDRESS instead of LOW32LIMIT\n\nIntroduce ARCH_LOW_ADDRESS_LIMIT which can be set per architecture to\noverride the 4GB default limit used by the bootmem allocater within\n__alloc_bootmem_low() and __alloc_bootmem_low_node().  E.g.  s390 needs a\n2GB limit instead of 4GB.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b72f160443cb78b2f8addae6e331d2adaa70f869",
      "tree": "3321d797b286aba5f16f83db07d0d3fe93993e73",
      "parents": [
        "5081dde33f7a61d28d9b185cc386f12cb837c7a4"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] oom: more printk\n\nPrint the name of the task invoking the OOM killer.  Could make debugging\neasier.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5081dde33f7a61d28d9b185cc386f12cb837c7a4",
      "tree": "d2e6f39db4005229580f571137a833c1dabfc38b",
      "parents": [
        "af5b912435de32fbede08cee949429823ed49781"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] oom: kthread infinite loop fix\n\nSkip kernel threads, rather than having them return 0 from badness.\nTheoretically, badness might truncate all results to 0, thus a kernel thread\nmight be picked first, causing an infinite loop.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "af5b912435de32fbede08cee949429823ed49781",
      "tree": "ea1de1a800c6fc60537912d4dad35a3cf211c86e",
      "parents": [
        "4a3ede107e422a0c53d28024b0aa902ca22a8768"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:49 2006 -0700"
      },
      "message": "[PATCH] oom: swapoff tasks tweak\n\nPF_SWAPOFF processes currently cause select_bad_process to return straight\naway.  Instead, give them high priority, so we will kill them first, however\nwe also first ensure no parallel OOM kills are happening at the same time.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a3ede107e422a0c53d28024b0aa902ca22a8768",
      "tree": "39f687cc0470cea45ed1387ebc16fee7d6066485",
      "parents": [
        "50ec3bbffbe8a96347c54832d48110a5bc9e9ff8"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] oom: handle oom_disable exiting\n\nHaving the oomkilladj \u003d\u003d OOM_DISABLE check before the releasing check means\nthat oomkilladj \u003d\u003d OOM_DISABLE tasks exiting will not stop the OOM killer.\n\nMoving the test down will give the desired behaviour.  Also: it will allow\nthem to \"OOM-kill\" themselves if they are exiting.  As per the previous patch,\nthis is required to prevent OOM killer deadlocks (and they don\u0027t actually get\nkilled, because they\u0027re already exiting -- they\u0027re simply allowed access to\nmemory reserves).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "50ec3bbffbe8a96347c54832d48110a5bc9e9ff8",
      "tree": "3941902b1c68525472ea3a502e76faa7fe675cd1",
      "parents": [
        "7887a3da753e1ba8244556cc9a2b38c815bfe256"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] oom: handle current exiting\n\nIf current *is* exiting, it should actually be allowed to access reserved\nmemory rather than OOM kill something else.  Can\u0027t do this via a straight\ncheck in page_alloc.c because that would allow multiple tasks to use up\nreserves.  Instead cause current to OOM-kill itself which will mark it as\nTIF_MEMDIE.\n\nThe current procedure of simply aborting the OOM-kill if a task is exiting can\nlead to OOM deadlocks.\n\nIn the case of killing a PF_EXITING task, don\u0027t make a lot of noise about it.\nThis becomes more important in future patches, where we can \"kill\" OOM_DISABLE\ntasks.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7887a3da753e1ba8244556cc9a2b38c815bfe256",
      "tree": "f3563927615c6b9c260f7ca84567c7bca2dac91f",
      "parents": [
        "4ff1ffb4870b007b86f21e5f27eeb11498c4c077"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] oom: cpuset hint\n\ncpuset_excl_nodes_overlap does not always indicate that killing a task will\nnot free any memory we for us.  For example, we may be asking for an\nallocation from _anywhere_ in the machine, or the task in question may be\npinning memory that is outside its cpuset.  Fix this by just causing\ncpuset_excl_nodes_overlap to reduce the badness rather than disallow it.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ff1ffb4870b007b86f21e5f27eeb11498c4c077",
      "tree": "f168408f90214873e1fa36733d29f2ba002fae46",
      "parents": [
        "408d85441cd5a9bd6bc851d677a10c605ed8db5f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] oom: reclaim_mapped on oom\n\nPotentially it takes several scans of the lru lists before we can even start\nreclaiming pages.\n\nmapped pages, with young ptes can take 2 passes on the active list + one on\nthe inactive list.  But reclaim_mapped may not always kick in instantly, so it\ncould take even more than that.\n\nRaise the threshold for marking a zone as all_unreclaimable from a factor of 4\ntime the pages in the zone to 6.  Introduce a mechanism to force\nreclaim_mapped if we\u0027ve reached a factor 3 and still haven\u0027t made progress.\n\nPreviously, a customer doing stress testing was able to easily OOM the box\nafter using only a small fraction of its swap (~100MB).  After the patches, it\nwould only OOM after having used up all swap (~800MB).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "408d85441cd5a9bd6bc851d677a10c605ed8db5f",
      "tree": "547ba9fbd4000585f14e9fcdd3cf539cde58a25a",
      "parents": [
        "6ddab3b9ebebc88bfdd8107c64f12d7e4480c559"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] oom: use unreclaimable info\n\n__alloc_pages currently starts shooting if page reclaim has failed to free up\nswap_cluster_max pages in one run through the priorities.  This is not always\na good indicator on its own, so make use of the all_unreclaimable logic as\nwell: don\u0027t consider going OOM until all zones we\u0027re interested in are\nunreclaimable.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ddab3b9ebebc88bfdd8107c64f12d7e4480c559",
      "tree": "192edd3a85d3665bb7e44c429609a7357ba12bac",
      "parents": [
        "ca5f9703dffa012cc46166e6206c5a992910e041"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:31:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] mm: swap write failure fixup\n\nCurrently we can silently drop data if the write to swap failed.  It\nusually doesn\u0027t result in data-corruption because on page-in the process\nwill receive SIGBUS (assuming write-failure implies read-failure).\n\nThis assumption might or might not be valid.\n\nThis patch will avoid the page being discarded after a failed write.  But\nwill print a warning the sysadmin _should_ take to heart, if a lot of swap\nspace becomes un-writeable, OOM is not far off.\n\nTested by making the write fail \u0027randomly\u0027 once every 50 writes or so.\n\n[akpm@osdl.org: printk warning fix]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca5f9703dffa012cc46166e6206c5a992910e041",
      "tree": "d1fb19019db14465eb8674aa1b13c6506a569705",
      "parents": [
        "db37648cd6ce9b828abd6d49aa3d269926ee7b7d"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Mon Sep 25 23:31:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] slab: respect architecture and caller mandated alignment\n\nAs explained by Heiko, on s390 (32-bit) ARCH_KMALLOC_MINALIGN is set to\neight because their common I/O layer allocates data structures that need to\nhave an eight byte alignment.  This does not work when CONFIG_SLAB_DEBUG is\nenabled because kmem_cache_create will override alignment to BYTES_PER_WORD\nwhich is four.\n\nSo change kmem_cache_create to ensure cache alignment is always at minimum\nwhat the architecture or caller mandates even if slab debugging is enabled.\n\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db37648cd6ce9b828abd6d49aa3d269926ee7b7d",
      "tree": "a0155c7897f4706386d10c8718f98687bc357c82",
      "parents": [
        "28e4d965e6131ace1e813e93aebca89ac6b82dc1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] mm: non syncing lock_page()\n\nlock_page needs the caller to have a reference on the page-\u003emapping inode\ndue to sync_page, ergo set_page_dirty_lock is obviously buggy according to\nits comments.\n\nSolve it by introducing a new lock_page_nosync which does not do a sync_page.\n\nakpm: unpleasant solution to an unpleasant problem.  If it goes wrong it could\ncause great slowdowns while the lock_page() caller waits for kblockd to\nperform the unplug.  And if a filesystem has special sync_page() requirements\n(none presently do), permanent hangs are possible.\n\notoh, set_page_dirty_lock() is usually (always?) called against userspace\npages.  They are always up-to-date, so there shouldn\u0027t be any pending read I/O\nagainst these pages.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "28e4d965e6131ace1e813e93aebca89ac6b82dc1",
      "tree": "6c98aa227c5cfdc9fb51ddf53c4497127beb3ca1",
      "parents": [
        "bfa5bf6d6446f0028187a727f792fbc7934228ad"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:31:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:48 2006 -0700"
      },
      "message": "[PATCH] mm: remove_mapping() safeness\n\nSome users of remove_mapping had been unsafe.\n\nModify the remove_mapping precondition to ensure the caller has locked the\npage and obtained the correct mapping.  Modify callers to ensure the\nmapping is the correct one.\n\n[hugh@veritas.com: swapper_space fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bfa5bf6d6446f0028187a727f792fbc7934228ad",
      "tree": "bd996f39ec18a78ea72209204328e48ebf6170f2",
      "parents": [
        "7ff6f08295d90ab20d25200ef485ebb45b1b8d71"
      ],
      "author": {
        "name": "Rolf Eike Beer",
        "email": "eike-kernel@sf-tec.de",
        "time": "Mon Sep 25 23:31:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] Add kerneldocs for some functions in mm/memory.c\n\nThese functions are already documented quite well with long comments.  Now\nadd kerneldoc style header to make this turn up in everyones favorite doc\nformat.\n\nSigned-off-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7ff6f08295d90ab20d25200ef485ebb45b1b8d71",
      "tree": "4c3410dcf5191ab574304f3ffbafd675545c2297",
      "parents": [
        "8bc719d3cab8414938f9ea6e33b58d8810d18068"
      ],
      "author": {
        "name": "Martin Peschke",
        "email": "mp3@de.ibm.com",
        "time": "Mon Sep 25 23:31:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] CPU hotplug compatible alloc_percpu()\n\nThis patch splits alloc_percpu() up into two phases.  Likewise for\nfree_percpu().  This allows clients to limit initial allocations to online\ncpu\u0027s, and to populate or depopulate per-cpu data at run time as needed:\n\n  struct my_struct *obj;\n\n  /* initial allocation for online cpu\u0027s */\n  obj \u003d percpu_alloc(sizeof(struct my_struct), GFP_KERNEL);\n\n  ...\n\n  /* populate per-cpu data for cpu coming online */\n  ptr \u003d percpu_populate(obj, sizeof(struct my_struct), GFP_KERNEL, cpu);\n\n  ...\n\n  /* access per-cpu object */\n  ptr \u003d percpu_ptr(obj, smp_processor_id());\n\n  ...\n\n  /* depopulate per-cpu data for cpu going offline */\n  percpu_depopulate(obj, cpu);\n\n  ...\n\n  /* final removal */\n  percpu_free(obj);\n\nSigned-off-by: Martin Peschke \u003cmp3@de.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8bc719d3cab8414938f9ea6e33b58d8810d18068",
      "tree": "1afd4ce7865466bf9578ca746c63c1d351f07cdc",
      "parents": [
        "19655d3487001d7df0e10e9cbfc27c758b77c2b5"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Sep 25 23:31:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] out of memory notifier\n\nAdd a notifer chain to the out of memory killer.  If one of the registered\ncallbacks could release some memory, do not kill the process but return and\nretry the allocation that forced the oom killer to run.\n\nThe purpose of the notifier is to add a safety net in the presence of\nmemory ballooners.  If the resource manager inflated the balloon to a size\nwhere memory allocations can not be satisfied anymore, it is better to\ndeflate the balloon a bit instead of killing processes.\n\nThe implementation for the s390 ballooner is included.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "19655d3487001d7df0e10e9cbfc27c758b77c2b5",
      "tree": "8d0aaa216bd32bd64e3a9652fd34d40bdb9d1075",
      "parents": [
        "2f6726e54a9410e2e4cee864947c05e954051916"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] linearly index zone-\u003enode_zonelists[]\n\nI wonder why we need this bitmask indexing into zone-\u003enode_zonelists[]?\n\nWe always start with the highest zone and then include all lower zones\nif we build zonelists.\n\nAre there really cases where we need allocation from ZONE_DMA or\nZONE_HIGHMEM but not ZONE_NORMAL? It seems that the current implementation\nof highest_zone() makes that already impossible.\n\nIf we go linear on the index then gfp_zone() \u003d\u003d highest_zone() and a lot\nof definitions fall by the wayside.\n\nWe can now revert back to the use of gfp_zone() in mempolicy.c ;-)\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": "2f6726e54a9410e2e4cee864947c05e954051916",
      "tree": "91b1173dead0cfc4a25caacb34b6c80f526bbc59",
      "parents": [
        "4e4785bcf0c8503224fa6c17d8e0228de781bff6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] Apply type enum zone_type\n\nAfter we have done this we can now do some typing cleanup.\n\nThe memory policy layer keeps a policy_zone that specifies\nthe zone that gets memory policies applied. This variable\ncan now be of type enum zone_type.\n\nThe check_highest_zone function and the build_zonelists funnctionm must\nthen also take a enum zone_type parameter.\n\nPlus there are a number of loops over zones that also should use\nzone_type.\n\nWe run into some troubles at some points with functions that need a\nzone_type variable to become -1. Fix that up.\n\n[pj@sgi.com: fix set_mempolicy() crash]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e4785bcf0c8503224fa6c17d8e0228de781bff6",
      "tree": "002c0a051f7f4de4548ca0a8394b664f64c63627",
      "parents": [
        "b9b15780f808efa2c897f337644ba7a2bec03ecc"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] mempolicies: fix policy_zone check\n\nThere is a check in zonelist_policy that compares pieces of the bitmap\nobtained from a gfp mask via GFP_ZONETYPES with a zone number in function\nzonelist_policy().\n\nThe bitmap is an ORed mask of __GFP_DMA, __GFP_DMA32 and __GFP_HIGHMEM.\nThe policy_zone is a zone number with the possible values of ZONE_DMA,\nZONE_DMA32, ZONE_HIGHMEM and ZONE_NORMAL. These are two different domains\nof values.\n\nFor some reason seemed to work before the zone reduction patchset (It\ndefinitely works on SGI boxes since we just have one zone and the check\ncannot fail).\n\nWith the zone reduction patchset this check definitely fails on systems\nwith two zones if the system actually has memory in both zones.\n\nThis is because ZONE_NORMAL is selected using no __GFP flag at\nall and thus gfp_zone(gfpmask) \u003d\u003d 0. ZONE_DMA is selected when __GFP_DMA\nis set. __GFP_DMA is 0x01.  So gfp_zone(gfpmask) \u003d\u003d 1.\n\npolicy_zone is set to ZONE_NORMAL (\u003d\u003d1) if ZONE_NORMAL and ZONE_DMA are\npopulated.\n\nFor ZONE_NORMAL gfp_zone(\u003cno _GFP_DMA\u003e) yields 0 which is \u003c\npolicy_zone(ZONE_NORMAL) and so policy is not applied to regular memory\nallocations!\n\nInstead gfp_zone(__GFP_DMA) \u003d\u003d 1 which results in policy being applied\nto DMA allocations!\n\nWhat we realy want in that place is to establish the highest allowable\nzone for a given gfp_mask. If the highest zone is higher or equal to the\npolicy_zone then memory policies need to be applied. We have such\na highest_zone() function in page_alloc.c.\n\nSo move the highest_zone() function from mm/page_alloc.c into\ninclude/linux/gfp.h.  On the way we simplify the function and use the new\nzone_type that was also introduced with the zone reduction patchset plus we\nalso specify the right type for the gfp flags parameter.\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@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "27bf71c2a7e596ed34e9bf2d4a5030321a09a1ad",
      "tree": "30aca46595486b7a9d69d2d2f58b305cf32f41d9",
      "parents": [
        "e53ef38d05dd59ed281a35590e4a5b64d8ff4c52"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:47 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: remove display of counters for unconfigured zones\n\neventcounters: Do not display counters for zones that are not available on an\narch\n\nDo not define or display counters for the DMA32 and the HIGHMEM zone if such\nzones were not configured.\n\n[akpm@osdl.org: s390 fix]\n[heiko.carstens@de.ibm.com: s390 fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e53ef38d05dd59ed281a35590e4a5b64d8ff4c52",
      "tree": "42e525df84454e89abd6cab8d7983a6a0188b6bb",
      "parents": [
        "fb0e7942bdcbbd2f90e61cb4cfa4fa892a873f8a"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: make ZONE_HIGHMEM optional\n\nMake ZONE_HIGHMEM optional\n\n- ifdef out code and definitions related to CONFIG_HIGHMEM\n\n- __GFP_HIGHMEM falls back to normal allocations if there is no\n  ZONE_HIGHMEM\n\n- GFP_ZONEMASK becomes 0x01 if there is no DMA32 and no HIGHMEM\n  zone.\n\n[jdike@addtoit.com: build fix]\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb0e7942bdcbbd2f90e61cb4cfa4fa892a873f8a",
      "tree": "71344e9afafbd631f4ac010bc8c48e0b16737299",
      "parents": [
        "2f1b6248682f8b39ca3c7e549dfc216d26c4109b"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: make ZONE_DMA32 optional\n\nMake ZONE_DMA32 optional\n\n- Add #ifdefs around ZONE_DMA32 specific code and definitions.\n\n- Add CONFIG_ZONE_DMA32 config option and use that for x86_64\n  that alone needs this zone.\n\n- Remove the use of CONFIG_DMA_IS_DMA32 and CONFIG_DMA_IS_NORMAL\n  for ia64 and fix up the way per node ZVCs are calculated.\n\n- Fall back to prior GFP_ZONEMASK of 0x03 if there is no\n  DMA32 zone.\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": "2f1b6248682f8b39ca3c7e549dfc216d26c4109b",
      "tree": "2340347d10fd0e564fb8527efe3ffbcb216e1906",
      "parents": [
        "98d2b0ebda72fc39cdefd3720d50b9b3ce409085"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: use enum to define zones, reformat and comment\n\nUse enum for zones and reformat zones dependent information\n\nAdd comments explaning the use of zones and add a zones_t type for zone\nnumbers.\n\nLine up information that will be #ifdefd by the following patches.\n\n[akpm@osdl.org: comment cleanups]\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": "98d2b0ebda72fc39cdefd3720d50b9b3ce409085",
      "tree": "ce51d8a2eab039c25667e6c448d5393582065d14",
      "parents": [
        "c1f60a5a419cc60aff27daffb150f5a3a3a79ef4"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:12 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: page allocator ZONE_HIGHMEM cleanup\n\npage allocator ZONE_HIGHMEM fixups\n\n1. We do not need to do an #ifdef in si_meminfo since both counters\n   in use are zero if !CONFIG_HIGHMEM.\n\n2. Add #ifdef in si_meminfo_node instead to avoid referencing zone\n   information for ZONE_HIGHMEM if we do not have HIGHMEM\n   (may not be there after the following patches).\n\n3. Replace the use of ZONE_HIGHMEM with MAX_NR_ZONES in build_zonelists_node\n\n4. build_zonelists_node: Remove BUG_ON for ZONE_HIGHMEM. Zone will\n   be optional soon and thus BUG_ON cannot be triggered anymore.\n\n5. init_free_area_core: Replace a use of ZONE_HIGHMEM with NR_MAX_ZONES.\n\n[akpm@osdl.org: cleanups]\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": "c1f60a5a419cc60aff27daffb150f5a3a3a79ef4",
      "tree": "8ae176462d6f220cd744ae6c3454113eebda02a8",
      "parents": [
        "182e8e237349e7b6354f45aee4780b6423fd6a50"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h\n\nMove totalhigh_pages and nr_free_highpages() into highmem.c/.h\n\nMove the totalhigh_pages definition into highmem.c/.h.  Move the\nnr_free_highpages function into highmem.c\n\n[yoichi_yuasa@tripeaks.co.jp: build fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "182e8e237349e7b6354f45aee4780b6423fd6a50",
      "tree": "a1b9fc186a514e547eb257803616d67ba7b69976",
      "parents": [
        "f06a96844a577c43249fce25809a4fae07407f46"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Sep 25 23:31:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:46 2006 -0700"
      },
      "message": "[PATCH] reduce MAX_NR_ZONES: make display of highmem counters conditional on CONFIG_HIGHMEM\n\nDo not display HIGHMEM memory sizes if CONFIG_HIGHMEM is not set.\n\nMake HIGHMEM dependent texts and make display of highmem counters optional\n\nSome texts are depending on CONFIG_HIGHMEM.\n\nRemove those strings and remove the display of highmem counter values if\nCONFIG_HIGHMEM is not set.\n\n[akpm@osdl.org: remove some ifdefs]\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": "f71bf0cac730ccb5ebcdf21747db75ae0445ccde",
      "tree": "2ba089be617218753b9d8b8faf05eb97eec42120",
      "parents": [
        "bbc7b92e337ac349ca917f9bf0b6be4743c14f3a"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: miscellaneous coding style fixes\n\nIt fixes various coding style issues, specially when spaces are useless.  For\nexample \u0027*\u0027 go next to the function name.\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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"
    },
    {
      "commit": "bbc7b92e337ac349ca917f9bf0b6be4743c14f3a",
      "tree": "7361d18c6b40957fda598cc9db0d02648b0918eb",
      "parents": [
        "e786e86a542ccc1133f333402526ad00b9c088ae"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: use pfn/page conversion macros\n\nIt also creates get_mapsize() helper in order to make the code more readable\nwhen it calculates the boot bitmap size.\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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"
    },
    {
      "commit": "e786e86a542ccc1133f333402526ad00b9c088ae",
      "tree": "db08d5e3fd398e9f22128a6867aa12497abe3e7c",
      "parents": [
        "bb0923a66820718f636736b22ce47372f79e3400"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: remove useless headers inclusions\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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"
    },
    {
      "commit": "bb0923a66820718f636736b22ce47372f79e3400",
      "tree": "56554098cb8cda63a1f805db211f1eea750befae",
      "parents": [
        "71fb2e8f8753b66b1f4295aa264a2eb4e69381e8"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: limit to 80 columns width\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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"
    },
    {
      "commit": "69d49e681d7c7ed864a1ba45efc1e78433df8b9a",
      "tree": "c203f8c571d428f15b5b964468b1b90ede973915",
      "parents": [
        "2d1a07d487d8b36658404839cdf03a974968cefd"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "vagabon.xyz@gmail.com",
        "time": "Mon Sep 25 23:31:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] bootmem: mark link_bootmem() as part of the __init section\n\nSigned-off-by: Franck Bui-Huu \u003cvagabon.xyz@gmail.com\u003e\nCc: 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"
    },
    {
      "commit": "b221385bc41d6789edde3d2fa0cb20d5045730eb",
      "tree": "93f3317247d587fd011eb9d77cd73a49670d8d5f",
      "parents": [
        "204ec841fbea3e5138168edbc3a76d46747cc987"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Sep 25 23:31:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] mm/: make functions static\n\nThis patch makes the following needlessly global functions static:\n - slab.c: kmem_find_general_cachep()\n - swap.c: __page_cache_release()\n - vmalloc.c: __vmalloc_node()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "204ec841fbea3e5138168edbc3a76d46747cc987",
      "tree": "bc52089e8862b24d7f4153b56eaf7ecc3f1af9fe",
      "parents": [
        "ee6a6457886a80415db209e87033b63f2b06558c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:31:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:45 2006 -0700"
      },
      "message": "[PATCH] mm: msync() cleanup\n\nWith the tracking of dirty pages properly done now, msync doesn\u0027t need to scan\nthe PTEs anymore to determine the dirty status.\n\nFrom: Hugh Dickins \u003chugh@veritas.com\u003e\n\nIn looking to do that, I made some other tidyups: can remove several\n#includes, and sys_msync loop termination not quite right.\n\nMost of those points are criticisms of the existing sys_msync, not of your\npatch.  In particular, the loop termination errors were introduced in 2.6.17:\nI did notice this shortly before it came out, but decided I was more likely to\nget it wrong myself, and make matters worse if I tried to rush a last-minute\nfix in.  And it\u0027s not terribly likely to go wrong, nor disastrous if it does\ngo wrong (may miss reporting an unmapped area; may also fsync file of a\nfollowing vma).\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee6a6457886a80415db209e87033b63f2b06558c",
      "tree": "227351bf31ccc6153879cc900c5d6a822832b645",
      "parents": [
        "e88dd6c11c5aef74d8b74a062767add53315533b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:31:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: fixup do_wp_page()\n\nWrt. the recent modifications in do_wp_page() Hugh Dickins pointed out:\n\n  \"I now realize it\u0027s right to the first order (normal case) and to the\n   second order (ptrace poke), but not to the third order (ptrace poke\n   anon page here to be COWed - perhaps can\u0027t occur without intervening\n   mprotects).\"\n\nThis patch restores the old COW behaviour for anonymous pages.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e88dd6c11c5aef74d8b74a062767add53315533b",
      "tree": "cf1b66d110e33ab4d6a22438dff4508dd785acd1",
      "parents": [
        "c1e6098b23bb46e2b488fe9a26f831f867157483"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: small cleanup of install_page()\n\nSmallish cleanup to install_page(), could save a memory read (haven\u0027t checked\nthe asm output) and sure looks nicer.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c1e6098b23bb46e2b488fe9a26f831f867157483",
      "tree": "6bac4d3cfaab3e7153a15d1a24f9211b2de37ba6",
      "parents": [
        "edc79b2a46ed854595e40edcf3f8b37f9f14aa3f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: optimize the new mprotect() code a bit\n\nmprotect() resets the page protections, which could result in extra write\nfaults for those pages whose dirty state we track using write faults and are\ndirty already.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edc79b2a46ed854595e40edcf3f8b37f9f14aa3f",
      "tree": "c1120bebede9660ab00f9439aa7a84ab9434ac38",
      "parents": [
        "d08b3851da41d0ee60851f2c75b118e1f7a5fc89"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: balance dirty pages\n\nNow that we can detect writers of shared mappings, throttle them.  Avoids OOM\nby surprise.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d08b3851da41d0ee60851f2c75b118e1f7a5fc89",
      "tree": "a01f6930a1387e8f66607e2fe16c62bb7044353b",
      "parents": [
        "725d704ecaca4a43f067092c140d4f3271cf2856"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Sep 25 23:30:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: tracking shared dirty pages\n\nTracking of dirty pages in shared writeable mmap()s.\n\nThe idea is simple: write protect clean shared writeable pages, catch the\nwrite-fault, make writeable and set dirty.  On page write-back clean all the\nPTE dirty bits and write protect them once again.\n\nThe implementation is a tad harder, mainly because the default\nbacking_dev_info capabilities were too loosely maintained.  Hence it is not\nenough to test the backing_dev_info for cap_account_dirty.\n\nThe current heuristic is as follows, a VMA is eligible when:\n - its shared writeable\n    (vm_flags \u0026 (VM_WRITE|VM_SHARED)) \u003d\u003d (VM_WRITE|VM_SHARED)\n - it is not a \u0027special\u0027 mapping\n    (vm_flags \u0026 (VM_PFNMAP|VM_INSERTPAGE)) \u003d\u003d 0\n - the backing_dev_info is cap_account_dirty\n    mapping_cap_account_dirty(vma-\u003evm_file-\u003ef_mapping)\n - f_op-\u003emmap() didn\u0027t change the default page protection\n\nPage from remap_pfn_range() are explicitly excluded because their COW\nsemantics are already horrid enough (see vm_normal_page() in do_wp_page()) and\nbecause they don\u0027t have a backing store anyway.\n\nmprotect() is taught about the new behaviour as well.  However it overrides\nthe last condition.\n\nCleaning the pages on write-back is done with page_mkclean() a new rmap call.\nIt can be called on any page, but is currently only implemented for mapped\npages, if the page is found the be of a VMA that accounts dirty pages it will\nalso wrprotect the PTE.\n\nFinally, in fs/buffers.c:try_to_free_buffers(); remove clear_page_dirty() from\nunder -\u003eprivate_lock.  This seems to be safe, since -\u003eprivate_lock is used to\nserialize access to the buffers, not the page itself.  This is needed because\nclear_page_dirty() will call into page_mkclean() and would thereby violate\nlocking order.\n\n[dhowells@redhat.com: Provide a page_mkclean() implementation for NOMMU]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "725d704ecaca4a43f067092c140d4f3271cf2856",
      "tree": "320cf8ab5457ac6c01c05da8c30d6026538ee259",
      "parents": [
        "a6ca1b99ed434f3fb41bbed647ed36c0420501e5"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Sep 25 23:30:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:44 2006 -0700"
      },
      "message": "[PATCH] mm: VM_BUG_ON\n\nIntroduce a VM_BUG_ON, which is turned on with CONFIG_DEBUG_VM.  Use this\nin the lightweight, inline refcounting functions; PageLRU and PageActive\nchecks in vmscan, because they\u0027re pretty well confined to vmscan.  And in\npage allocate/free fastpaths which can be the hottest parts of the kernel\nfor kbuilds.\n\nUnlike BUG_ON, VM_BUG_ON must not be used to execute statements with\nside-effects, and should not be used outside core mm code.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3ef9ead31ae995251b420ac98398bd7545bf4e1",
      "tree": "aa5addbe49c1f7864bc2e5023b7edb11aaf3706b",
      "parents": [
        "24fd425edd53ea580cad917e825c1f6715e9b939"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@cs.washington.edu",
        "time": "Mon Sep 25 16:24:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 25 17:38:36 2006 -0700"
      },
      "message": "[PATCH] do not free non slab allocated per_cpu_pageset\n\nStops panic associated with attempting to free a non slab-allocated\nper_cpu_pageset.\n\nSigned-off-by: David Rientjes \u003crientjes@cs.washington.edu\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9f261e011340bcd22c1dd48b465153bd78caa8c8",
      "tree": "b1c266ea746a0e8591e6af781aef22854e652ff9",
      "parents": [
        "a4c12d6c5dde48c69464baf7c703e425ee511433",
        "026ed5c9185dcc4b2df92e98c3d61a01cea19cbf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:58:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:58:40 2006 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (74 commits)\n  NFS: unmark NFS direct I/O as experimental\n  NFS: add comments clarifying the use of nfs_post_op_update()\n  NFSv4: rpc_mkpipe creating socket inodes w/out sk buffers\n  NFS: Use SEEK_END instead of hardcoded value\n  NFSv4: When mounting with a port\u003d0 argument, substitute port\u003d2049\n  NFSv4: Poll more aggressively when handling NFS4ERR_DELAY\n  NFSv4: Handle the condition NFS4ERR_FILE_OPEN\n  NFSv4: Retry lease recovery if it failed during a synchronous operation.\n  NFS: Don\u0027t invalidate the symlink we just stuffed into the cache\n  NFS: Make read() return an ESTALE if the file has been deleted\n  NFSv4: It\u0027s perfectly legal for clp to be NULL here....\n  NFS: nfs_lookup - don\u0027t hash dentry when optimising away the lookup\n  SUNRPC: Fix Oops in pmap_getport_done\n  SUNRPC: Add refcounting to the struct rpc_xprt\n  SUNRPC: Clean up soft task error handling\n  SUNRPC: Handle ENETUNREACH, EHOSTUNREACH and EHOSTDOWN socket errors\n  SUNRPC: rpc_delay() should not clobber the rpc_task-\u003etk_status\n  Fix a referral error Oops\n  NFS: NFS_ROOT should use the new rpc_create API\n  NFS: Fix up compiler warnings on 64-bit platforms in client.c\n  ...\n\nManually resolved conflict in net/sunrpc/xprtsock.c\n"
    },
    {
      "commit": "a4c12d6c5dde48c69464baf7c703e425ee511433",
      "tree": "73c375e41a353e2da0461ff30d744bff73958b08",
      "parents": [
        "73af07de3e32b9ac328c3d1417258bb98a9b0a9b",
        "3b9f9a1c3903b64c38505f9fed3bb11e48dbc931"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:49:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 23 16:49:31 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (353 commits)\n  [IPV6] ADDRCONF: Mobile IPv6 Home Address support.\n  [IPV6] ADDRCONF: Allow non-DAD\u0027able addresses.\n  [IPV6] NDISC: Fix is_router flag setting.\n  [IPV6] ADDRCONF: Convert addrconf_lock to RCU.\n  [IPV6] NDISC: Add proxy_ndp sysctl.\n  [IPV6] NDISC: Set per-entry is_router flag in Proxy NA.\n  [IPV6] NDISC: Avoid updating neighbor cache for proxied address in receiving NA.\n  [IPV6]: Don\u0027t forward packets to proxied link-local address.\n  [IPV6] NDISC: Handle NDP messages to proxied addresses.\n  [NETFILTER]: PPTP conntrack: fix another GRE keymap leak\n  [NETFILTER]: PPTP conntrack: fix GRE keymap leak\n  [NETFILTER]: PPTP conntrack: fix PPTP_IN_CALL message types\n  [NETFILTER]: PPTP conntrack: check call ID before changing state\n  [NETFILTER]: PPTP conntrack: clean up debugging cruft\n  [NETFILTER]: PPTP conntrack: consolidate header parsing\n  [NETFILTER]: PPTP conntrack: consolidate header size checks\n  [NETFILTER]: PPTP conntrack: simplify expectation handling\n  [NETFILTER]: PPTP conntrack: remove unnecessary cid/pcid header pointers\n  [NETFILTER]: PPTP conntrack: fix header definitions\n  [NETFILTER]: PPTP conntrack: remove more dead code\n  ...\n"
    },
    {
      "commit": "275a082fe9308e710324e26ccb5363c53d8fd45f",
      "tree": "e97df6e45f98ea2827f71dc749f8cd47f3f353cc",
      "parents": [
        "94a6d75320b3681e6e728b70e18bd186cb55e682"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Aug 22 20:06:24 2006 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Sep 22 23:24:54 2006 -0400"
      },
      "message": "Add a real API for dealing with blk_congestion_wait()\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "6585b572402e5ec7936422123b44b65fef7a5ea6",
      "tree": "52eef1d14bcf6f6ad6226fca02e8198a30d7abe3",
      "parents": [
        "2ee8099f2c2bc74a7c2fac7f83e12a5d651681d3",
        "edf03fb0575cbee2595a63374b17dc0921f2094a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 22 17:50:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 22 17:50:50 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:\n  [AGPGART] Rework AGPv3 modesetting fallback.\n  [AGPGART] Add suspend callback for i965\n  [AGPGART] Fix number of aperture sizes in 830 gart structs.\n  [AGPGART] Intel 965 Express support.\n  [AGPGART] agp.h: constify struct agp_bridge_data::version\n  [AGPGART] const\u0027ify VIA AGP PCI table.\n  [AGPGART] CONFIG_PM\u003dn slim: drivers/char/agp/intel-agp.c\n  [AGPGART] CONFIG_PM\u003dn slim: drivers/char/agp/efficeon-agp.c\n  [AGPGART] Const\u0027ify the agpgart driver version.\n  [AGPGART] remove private page protection map\n"
    },
    {
      "commit": "f034b5d4efdfe0fb9e2a1ce1d95fa7914f24de49",
      "tree": "e166f1e87606f7e53a78cac543284c3484481727",
      "parents": [
        "8f126e37c0b250310a48a609bedf92a19a5559ec"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Aug 24 03:08:07 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:08:41 2006 -0700"
      },
      "message": "[XFRM]: Dynamic xfrm_state hash table sizing.\n\nThe grow algorithm is simple, we grow if:\n\n1) we see a hash chain collision at insert, and\n2) we haven\u0027t hit the hash size limit (currently 1*1024*1024 slots), and\n3) the number of xfrm_state objects is \u003e the current hash mask\n\nAll of this needs some tweaking.\n\nRemove __initdata from \"hashdist\" so we can use it safely at run time.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "016eb4a0ed06a3677d67a584da901f0e9a63c666",
      "tree": "574ead6bd03d31ca7036ff2389cb0400f3fd63fc",
      "parents": [
        "3665d0e58fa44f50c744f85c7e8ad21d5b10e206"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Sep 08 09:48:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 08 10:22:50 2006 -0700"
      },
      "message": "[PATCH] invalidate_complete_page() race fix\n\nIf a CPU faults this page into pagetables after invalidate_mapping_pages()\nchecked page_mapped(), invalidate_complete_page() will still proceed to remove\nthe page from pagecache.  This leaves the page-faulting process with a\ndetached page.  If it was MAP_SHARED then file data loss will ensue.\n\nFix that up by checking the page\u0027s refcount after taking tree_lock.\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3a459756810912d2c2bf188cef566af255936b4d",
      "tree": "1b52d90a2412811ebf5078b4f55112864e1890df",
      "parents": [
        "10387e5eb45c6e48d67102b88229f5bc6037461c"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@openvz.org",
        "time": "Thu Sep 07 14:17:04 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 08 08:40:46 2006 -0700"
      },
      "message": "[PATCH] IA64,sparc: local DoS with corrupted ELFs\n\nThis prevents cross-region mappings on IA64 and SPARC which could lead\nto system crash.  They were correctly trapped for normal mmap() calls,\nbut not for the kernel internal calls generated by executable loading.\n\nThis code just moves the architecture-specific cross-region checks into\nan arch-specific \"arch_mmap_check()\" macro, and defines that for the\narchitectures that needed it (ia64, sparc and sparc64).\n\nArchitectures that don\u0027t have any special requirements can just ignore\nthe new cross-region check, since the mmap() code will just notice on\nits own when the macro isn\u0027t defined.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nSigned-off-by: Kirill Korotaev \u003cdev@openvz.org\u003e\nAcked-by: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n[ Cleaned up to not affect architectures that don\u0027t need it ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "115b384cf87249d76adb0b21aca11ee22128927d",
      "tree": "f39a2a54863e9d82d1196906f92c82ab5991c6af",
      "parents": [
        "8eb7925f93af75e66a240d148efdec212f95bcb7",
        "c336923b668fdcf0312efbec3b44895d713f4d81"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Sep 05 17:20:21 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Sep 05 17:20:21 2006 -0400"
      },
      "message": "Merge ../linus\n"
    }
  ],
  "next": "3b98b087fc2daab67518d2baa8aef19a6ad82723"
}
