)]}'
{
  "log": [
    {
      "commit": "799202cbd0ef6a201446d99fcbd78b9f0bda6ae5",
      "tree": "cfc6a988170f4e65b810ee6a523e6d858ee01ce2",
      "parents": [
        "3833a748aa75dd39494bb861ab018216b0a2c14e"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:30 2006 -0800"
      },
      "message": "[PATCH] cciss: add support for 1024 logical volumes\n\nAdd the support for a large number of logical volumes.  We will soon have\nhardware that support up to 1024 logical volumes.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3833a748aa75dd39494bb861ab018216b0a2c14e",
      "tree": "271d84ba23b1c0d7ae890151bb3802028291133e",
      "parents": [
        "7a06f789e0a1b46e4ed2a68f885cbe5ff74a34d6"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:30 2006 -0800"
      },
      "message": "[PATCH] cciss: remove unused revalidate_allvol function\n\nRemove the no longer used revalidate_allvol function.  It was replaced by\nrebuild_lun_table.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7a06f789e0a1b46e4ed2a68f885cbe5ff74a34d6",
      "tree": "65577874417e03e71321a4fe0266461dca2e0f03",
      "parents": [
        "92c4231aef720bd5e1d634d2f7335f31277318da"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:30 2006 -0800"
      },
      "message": "[PATCH] cciss: change cciss_open for consistency\n\nChange our open to test for drv-\u003eheads like we do in other places in the\ndriver.  Mostly for consistency.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92c4231aef720bd5e1d634d2f7335f31277318da",
      "tree": "3c08d3479b2db7db693c5439357648ea02135e2e",
      "parents": [
        "f92e2f5f889803306e50c06e17ee330403e91b8d"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: set sector_size to 2048 for performance\n\nChange the blk_queue_max_sectors from 512 to 2048.  This helps increase\nperformance.\n\n[akpm@osdl.org: s/sector_size/max_sectors/]\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f92e2f5f889803306e50c06e17ee330403e91b8d",
      "tree": "0971abf513da37eba31de1aa8d7753aa2e5fa8b7",
      "parents": [
        "de9239167158c0210c5b9a709d67cea1b6f8ae56"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: disable DMA prefetch on P600\n\nUnconditionally disable DMA prefetch on the P600 controller.  An ASIC bug may\nresult in prefetching beyond the end of physical memory.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "de9239167158c0210c5b9a709d67cea1b6f8ae56",
      "tree": "370dbb0f2ea4a00f96cd3e275391c5bf73ceb9c9",
      "parents": [
        "f880632f963c3611d096d9373d16663c076310c7"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: fix pci ssid for the E500 controller\n\nChange the SSID on the E500 as a workaround for a firmware bug.  It looks like\nthe original patch was backed out between rc2 and rc4.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f880632f963c3611d096d9373d16663c076310c7",
      "tree": "f1e287ce43b1dd08cb7d5f8be661f48d99b902ed",
      "parents": [
        "4ff9a9a4baff2627d7bcf65d0ec07d647bc1ad29"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: increase number of commands on controller\n\nRemove #define NR_CMDS and replace it w/hba[i]-\u003enr_cmds.  Most Smart Array\ncontrollers can support up to 1024 commands but the E200 family can only\nsupport 128.  To prevent annoying \"fifo full\" messages we define nr_cmds on a\nper controller basis by adding it the product table.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ff9a9a4baff2627d7bcf65d0ec07d647bc1ad29",
      "tree": "2ffc0c340d506ddcd04ae6ac214d577787f0ab10",
      "parents": [
        "9d827c9e8a9d8592167ac3fdc3a50544c86302b1"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:35:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: reference driver support\n\nAdd the support to fire up on any HP RAID class device that has a valid cciss\nsignature.\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9d827c9e8a9d8592167ac3fdc3a50544c86302b1",
      "tree": "5611dda86a060ce7687d0c17aac0232a84430eac",
      "parents": [
        "eef88d16a2cb641d9915bfdf6377e70fccec9fde"
      ],
      "author": {
        "name": "Mike Miller",
        "email": "mike.miller@hp.com",
        "time": "Wed Dec 06 20:34:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] cciss: version change\n\nChange the cciss version number to 3.6.14 to reflect the following\nfunctionality changes added by the rest of the set.  They include:\n\n - Support to fire up on any HP RAID class controller\n - Increase nr_cmds to 512 for most controllers by adding it to the product table\n - PCI subsystem ID fix fix was pulled\n - Disable DMA prefetch for the P600 on IPF platforms\n - Change from 512 to 2048 sector_size for performance\n - Fix in cciss_open for consistency\n - Remove the no longer used revalidate_allvol function\n - Bug fix for busy configuring\n - Support for more than 16 logical volumes\n - Cleanups in cciss_interrupt_mode\n - Fix for iostats, it\u0027s been broken for several kernel releases\n\nSigned-off-by: Mike Miller \u003cmike.miller@hp.com\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eef88d16a2cb641d9915bfdf6377e70fccec9fde",
      "tree": "ab3566f60a24d48cdd65b32575cc178a25e29dbc",
      "parents": [
        "8210fd2a9fe4b36e99ab777a1a81eb47b703c235"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 06 20:34:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] fix v850 compilation\n\nMore fallout of the post 2.6.19-rc1 IRQ changes...\n\n      CC      init/main.o\n    In file included from\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/include/linux/rtc.h:102,\n                     from\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/include/linux/efi.h:19,\n                     from\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/init/main.c:43:\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/include/linux/interrupt.h:67:\n    error: conflicting types for \u0027irq_handler_t\u0027\n    include2/asm/irq.h:49: error: previous declaration of \u0027irq_handler_t\u0027 was here\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8210fd2a9fe4b36e99ab777a1a81eb47b703c235",
      "tree": "e39b0dd28492a6255928557504284fe6e99eead6",
      "parents": [
        "e46962fdd28f8b30b465e507b657627aa4c1a409"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Dec 06 20:34:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] uml: use get_random_bytes() after random pool is seeded\n\nWhen the UML network driver generates random MACs for its devices, it was\npossible for a number of UMLs to get the same MACs because the ethernet\ninitialization was done before the random pool was properly seeded.\n\nThis patch moves the initialization later so that it gets better randomness.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e46962fdd28f8b30b465e507b657627aa4c1a409",
      "tree": "db301f83855aa16e2abd9b3297cd906f6fa19223",
      "parents": [
        "7b65fee21c6bff68711b48e0aa1cfd42b3198312"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Dec 06 20:34:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] uml: size register files correctly\n\nWe were using the wrong symbol to size register files.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b65fee21c6bff68711b48e0aa1cfd42b3198312",
      "tree": "eaec0d13ceaa9fa98ece1c29659bffc66d0fd808",
      "parents": [
        "54f9a398e18a49e302e2187fa694043250391d80"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Dec 06 20:34:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] uml: include asm/page.h in order to get PAGE_SHIFT\n\nInclude the proper header to get a definition of PAGE_SHIFT.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54f9a398e18a49e302e2187fa694043250391d80",
      "tree": "962dd6b0100206bd47b2fcb131f53463cb78fd57",
      "parents": [
        "8bcbdf603bc4bf24c2bcfa071871afb03dd3ae80"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Dec 06 20:34:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] uml: include stddef.h correctly\n\nWe were not including stddef.h in files that used offsetof.\n\nOne file was also including linux/stddef.h for no perciptible reason.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8bcbdf603bc4bf24c2bcfa071871afb03dd3ae80",
      "tree": "234d6f79b5a94170be722d32b22cfef149d93231",
      "parents": [
        "58e14b148ddb56f0bf999965d6279932ed4a00bc"
      ],
      "author": {
        "name": "Yan Burman",
        "email": "burman.yan@gmail.com",
        "time": "Wed Dec 06 20:34:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] m68k: replace kmalloc+memset with kzalloc\n\nReplace kmalloc+memset with kzalloc\n\nSigned-off-by: Yan Burman \u003cburman.yan@gmail.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "58e14b148ddb56f0bf999965d6279932ed4a00bc",
      "tree": "3e7225a03d740da0bb10fbfbbd1f9c8920f2e0f1",
      "parents": [
        "341a595850dac1b0503df34260257d71b4fdf72c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] Use freezeable workqueues in XFS\n\nMake the workqueues used by XFS freezeable, so their worker threads don\u0027t\nsubmit any I/O after the suspend image has been created.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "341a595850dac1b0503df34260257d71b4fdf72c",
      "tree": "478bba299639ddebed62c6d9feb3c54504726e9b",
      "parents": [
        "5045cfc103566878228ca36d05a0ae0076673e5a"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] Support for freezeable workqueues\n\nMake it possible to create a workqueue the worker thread of which will be\nfrozen during suspend, along with other kernel threads.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5045cfc103566878228ca36d05a0ae0076673e5a",
      "tree": "2594f9220285957c5ba2309fe168710aa455b1c5",
      "parents": [
        "2d87595ea628ea58415ba4638c553a8c2fbd90e2"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Wed Dec 06 20:34:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:29 2006 -0800"
      },
      "message": "[PATCH] swsusp: kill write-only variable\n\nCleanup write-only variable, suggested by D Binderman.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d87595ea628ea58415ba4638c553a8c2fbd90e2",
      "tree": "5e9a94416c45d9b1c6360fd1c87d9d72968af67b",
      "parents": [
        "06df6a5c181f462c71ddcc20ff6c7ea0bec18ec8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] PM: Fix swsusp debug mode testproc\n\nThe \u0027testproc\u0027 swsusp debug mode thaws tasks twice in a row, which is _very_\nconfusing.  Fix that.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\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": "06df6a5c181f462c71ddcc20ff6c7ea0bec18ec8",
      "tree": "d5cadf44380e75d16f11117c65a848f1a6cdd204",
      "parents": [
        "59a493350e7aefff7e262efa39e017517b31b8e8"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Wed Dec 06 20:34:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] s2ram debugging documentation\n\nLinus posted quite nice TRACE_RESUME how-to, and I think it is too nice to\nbe hidden in archives of mailing list, so I turned it into Documentation\npiece.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "59a493350e7aefff7e262efa39e017517b31b8e8",
      "tree": "c707e294afd5f6b015844257a044c5f62fef7025",
      "parents": [
        "5b6d15de2d4c8149902a680a6cd1d3b26cd2e828"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Fix labels\n\nMove all labels in the swsusp code to the second column, so that they won\u0027t\nfool diff -p.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5b6d15de2d4c8149902a680a6cd1d3b26cd2e828",
      "tree": "b9dcc80d995246a13f0c8fe3c21e45e561d1bcb1",
      "parents": [
        "11b2ce2ba90f801e2a5ebba4e6b7da72d87f2b13"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Fix coding style in suspend.c\n\nFix coding style in suspend.c.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "11b2ce2ba90f801e2a5ebba4e6b7da72d87f2b13",
      "tree": "e7477edb04a15a3128523877558e1eb8694adbc9",
      "parents": [
        "a9b6f562f14dc28fb4b2415f0f275cede0abe9b5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:40 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Untangle freeze_processes\n\nMove the loop from freeze_processes() to a separate function and call it\nindependently for user space processes and kernel threads so that the order\nof freezing tasks is clearly visible.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a9b6f562f14dc28fb4b2415f0f275cede0abe9b5",
      "tree": "8d83009585877bf4c5f263690468d35105058822",
      "parents": [
        "a6d70980602e6f1869ebcdcbfaf55a0a5941583e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Untangle thaw_processes\n\nMove the loop from thaw_processes() to a separate function and call it\nindependently for kernel threads and user space processes so that the order\nof thawing tasks is clearly visible.\n\nDrop thaw_kernel_threads() which is never used.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a6d70980602e6f1869ebcdcbfaf55a0a5941583e",
      "tree": "b7e9b5f457eb7fe91fbbdbe978a50493da862cf2",
      "parents": [
        "3eb1b3a40722cbb46631db373af66d13d1e7ac81"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Dec 06 20:34:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] convert pm_sem to a mutex\n\nThe power management semaphore is only used as mutex, so convert it.\n\n[akpm@osdl.org: fix rotten bug]\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: 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": "3eb1b3a40722cbb46631db373af66d13d1e7ac81",
      "tree": "34b2d04387845a7074c5665269acc86b03812f0d",
      "parents": [
        "0d3a9abe8ae055e1052295698bcd0722c92eff47"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] suspend to disk fails if gdb is suspended with a traced child\n\nFix http://bugzilla.kernel.org/show_bug.cgi?id\u003d7534\n\nFix the freezing of processes so that it won\u0027t fail if there is a traced\nprocess the parent of which has been stopped.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: maurice barnum \u003cpixi+kbug@burble.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0d3a9abe8ae055e1052295698bcd0722c92eff47",
      "tree": "84225335704f0989a1556ba093732e023618b8f6",
      "parents": [
        "112cecb2cc0e7341db92281ba04b26c41bb8146d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Measure memory shrinking time\n\nMake swsusp measure and print the time needed to shrink memory during the\nsuspend.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "112cecb2cc0e7341db92281ba04b26c41bb8146d",
      "tree": "5eed4de8bfa3ed7e7f71454e82d3e92a5ee36347",
      "parents": [
        "2d4a34c9365c6e3f94a5b26ce296e1fce9b66c8b"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Wed Dec 06 20:34:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] suspend: don\u0027t change cpus_allowed for task initiating the suspend\n\nDon\u0027t modify the cpus_allowed of the task initiating the suspend.\n_cpu_down() already makes sure that the task doing the suspend doesn\u0027t run\non dying cpu.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d4a34c9365c6e3f94a5b26ce296e1fce9b66c8b",
      "tree": "ad8303f7db40d963f7a7b120996d4fe658a43cce",
      "parents": [
        "ff39593ad0ff7a79a3717edac6634407aa8200c2"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: Support i386 systems with PAE or without PSE\n\nMake swsusp support i386 systems with PAE or without PSE.\n\nThis is done by creating temporary page tables located in resume-safe page\nframes before the suspend image is restored in the same way as x86_64 does\nit.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Nigel Cunningham \u003cncunningham@linuxmail.org\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": "ff39593ad0ff7a79a3717edac6634407aa8200c2",
      "tree": "571e02e20d5d211224567d5cc22333196cf6f563",
      "parents": [
        "14b5b7cfaa110b1d25b8f80b01a8c97cf2db30bc"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: thaw userspace and kernel space separately\n\nModify process thawing so that we can thaw kernel space without thawing\nuserspace, and thaw kernelspace first.  This will be useful in later\npatches, where I intend to get swsusp thawing kernel threads only before\nseeking to free memory.\n\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\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": "14b5b7cfaa110b1d25b8f80b01a8c97cf2db30bc",
      "tree": "0c07f82d699c2aedbd27bf38acfa4ff14d6951fc",
      "parents": [
        "32d50f57dab94d8c46566a903bbb633ee72fdcc2"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:28 2006 -0800"
      },
      "message": "[PATCH] swsusp: clean up whitespace in freezer output\n\nMinor whitespace and formatting modifications for the freezer.\n\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nAcked-by: 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": "32d50f57dab94d8c46566a903bbb633ee72fdcc2",
      "tree": "ab56f3e10bd6eebd3f6ea0e27f68a00e53a6d32a",
      "parents": [
        "7dfb71030f7636a0d65200158113c37764552f93"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: quieten Freezer if !CONFIG_PM_DEBUG\n\nThe freezer currently prints an \u0027\u003d\u0027 for every process that is frozen.  This\nis pretty pointless, as the equals sign says nothing about which process is\nfrozen, and makes logs look messier (especially if there were a large\nnumber of processes running).  All we really need to know is that we\nstarted trying to freeze processes and what processes (if any) failed to\nfreeze, or that we succeeded.\n\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nAcked-by: 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": "7dfb71030f7636a0d65200158113c37764552f93",
      "tree": "276b812903d377b16d8828e888552fd256f48aab",
      "parents": [
        "8a05aac2631aa0e6494d9dc990f8c68ed8b8fde7"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@linuxmail.org",
        "time": "Wed Dec 06 20:34:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] Add include/linux/freezer.h and move definitions from sched.h\n\nMove process freezing functions from include/linux/sched.h to freezer.h, so\nthat modifications to the freezer or the kernel configuration don\u0027t require\nrecompiling just about everything.\n\n[akpm@osdl.org: fix ueagle driver]\nSigned-off-by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nCc: \"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": "8a05aac2631aa0e6494d9dc990f8c68ed8b8fde7",
      "tree": "90ae9235bcffc08fea77741596c65727e80bc023",
      "parents": [
        "859491218770315ba95ee3fa09961fc71c506cae"
      ],
      "author": {
        "name": "Stefan Seyfried",
        "email": "seife@suse.de",
        "time": "Wed Dec 06 20:34:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: fix platform mode\n\nAt some point after 2.6.13, in-kernel software suspend got \"incomplete\" for\nthe so-called \"platform\" mode.  pm_ops-\u003eprepare() is never called.  A\nvisible sign of this is the \"moon\" light on thinkpads not flashing during\nsuspend.  Fix by readding the pm_ops-\u003eprepare call during suspend.\n\nSigned-off-by: Stefan Seyfried \u003cseife@suse.de\u003e\nAcked-by: \"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": "859491218770315ba95ee3fa09961fc71c506cae",
      "tree": "102516d38b2ad342a193324771048d96d401dc8c",
      "parents": [
        "8357376d3df21b7d6f857931a57ac50da9c66e26"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: use __GFP_WAIT\n\nswsusp uses GFP_ATOMIC, but it can afford to use __GFP_WAIT, which will\npermit it to reclaim clean pagecache instead of emitting scary\npage-allocation-failure messages.\n\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": "8357376d3df21b7d6f857931a57ac50da9c66e26",
      "tree": "daf2c369e9b79d24c1666323b3ae75189e482a4a",
      "parents": [
        "bf73bae6ba0dc4bd4f1e570feb34a06b72725af6"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: Improve handling of highmem\n\nCurrently swsusp saves the contents of highmem pages by copying them to the\nnormal zone which is quite inefficient (eg.  it requires two normal pages\nto be used for saving one highmem page).  This may be improved by using\nhighmem for saving the contents of saveable highmem pages.\n\nNamely, during the suspend phase of the suspend-resume cycle we try to\nallocate as many free highmem pages as there are saveable highmem pages.\nIf there are not enough highmem image pages to store the contents of all of\nthe saveable highmem pages, some of them will be stored in the \"normal\"\nmemory.  Next, we allocate as many free \"normal\" pages as needed to store\nthe (remaining) image data.  We use a memory bitmap to mark the allocated\nfree pages (ie.  highmem as well as \"normal\" image pages).\n\nNow, we use another memory bitmap to mark all of the saveable pages\n(highmem as well as \"normal\") and the contents of the saveable pages are\ncopied into the image pages.  Then, the second bitmap is used to save the\npfns corresponding to the saveable pages and the first one is used to save\ntheir data.\n\nDuring the resume phase the pfns of the pages that were saveable during the\nsuspend are loaded from the image and used to mark the \"unsafe\" page\nframes.  Next, we try to allocate as many free highmem page frames as to\nload all of the image data that had been in the highmem before the suspend\nand we allocate so many free \"normal\" page frames that the total number of\nallocated free pages (highmem and \"normal\") is equal to the size of the\nimage.  While doing this we have to make sure that there will be some extra\nfree \"normal\" and \"safe\" page frames for two lists of PBEs constructed\nlater.\n\nNow, the image data are loaded, if possible, into their \"original\" page\nframes.  The image data that cannot be written into their \"original\" page\nframes are loaded into \"safe\" page frames and their \"original\" kernel\nvirtual addresses, as well as the addresses of the \"safe\" pages containing\ntheir copies, are stored in one of two lists of PBEs.\n\nOne list of PBEs is for the copies of \"normal\" suspend pages (ie.  \"normal\"\npages that were saveable during the suspend) and it is used in the same way\nas previously (ie.  by the architecture-dependent parts of swsusp).  The\nother list of PBEs is for the copies of highmem suspend pages.  The pages\nin this list are restored (in a reversible way) right before the\narch-dependent code is called.\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": "bf73bae6ba0dc4bd4f1e570feb34a06b72725af6",
      "tree": "3d224f68d04b6c9e96ebf5903406ada9307824d9",
      "parents": [
        "37b2ba12df88f0e29f2d52aaf1ab22789377d5b5"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: update userland interface documentation\n\nThe swsusp userland interface has recently changed for a couple of times, but\nthe changes have not been documented.  Fix this, and document the\nSNAPSHOT_SET_SWAP_AREA ioctl().\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: 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": "37b2ba12df88f0e29f2d52aaf1ab22789377d5b5",
      "tree": "38a05add5793bb82be9afdb9fa81d48ccf70da1f",
      "parents": [
        "ecbd0da1eced957e0cbb611b4a4cb5b0cf63ba31"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: add ioctl for swap files support\n\nTo be able to use swap files as suspend storage from the userland suspend\ntools we need an additional ioctl() that will allow us to provide the kernel\nwith both the swap header\u0027s offset and the identification of the resume\npartition.\n\nThe new ioctl() should be regarded as a replacement for the\nSNAPSHOT_SET_SWAP_FILE ioctl() that from now on will be considered as\nobsolete, but has to stay for backwards compatibility of the interface.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: 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": "ecbd0da1eced957e0cbb611b4a4cb5b0cf63ba31",
      "tree": "c7756453fa284eb1cf27b914be9ea9a8303b87d4",
      "parents": [
        "9a154d9d95b7b9845938242f5c62505b3cab5bcd"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: document support for swap files\n\nDocument the \"resume_offset\u003d\" command line parameter as well as the way in\nwhich swap files are supported by swsusp.\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": "9a154d9d95b7b9845938242f5c62505b3cab5bcd",
      "tree": "fd3c51434298b139671f5accd42ab112a310555c",
      "parents": [
        "3aef83e0ef1ffb8ea3bea97be46821a45c952173"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: add resume_offset command line parameter\n\nAdd the kernel command line parameter \"resume_offset\u003d\" allowing us to specify\nthe offset, in \u003cPAGE_SIZE\u003e units, from the beginning of the partition pointed\nto by the \"resume\u003d\" parameter at which the swap header is located.\n\nThis offset can be determined, for example, by an application using the FIBMAP\nioctl to obtain the swap header\u0027s block number for given file.\n\n[akpm@osdl.org: we don\u0027t know what type sector_t is]\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": "3aef83e0ef1ffb8ea3bea97be46821a45c952173",
      "tree": "f73878eb2ecce804c9eea6fbb13603907b3674b4",
      "parents": [
        "3fc6b34f4803b959c1e30c15247e2180cd529115"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: use block device offsets to identify swap locations\n\nMake swsusp use block device offsets instead of swap offsets to identify swap\nlocations and make it use the same code paths for writing as well as for\nreading data.\n\nThis allows us to use the same code for handling swap files and swap\npartitions and to simplify the code, eg.  by dropping rw_swap_page_sync().\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": "3fc6b34f4803b959c1e30c15247e2180cd529115",
      "tree": "1a867b3224db5e890ca23858c90f4ac33cb9c606",
      "parents": [
        "915bae9ebe41e52d71ad8b06d50e4ab26189f964"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: rearrange swap-handling code\n\nRearrange the code in kernel/power/swap.c so that the next patch is more\nreadable.\n\n[This patch only moves the existing code.]\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: 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": "915bae9ebe41e52d71ad8b06d50e4ab26189f964",
      "tree": "daf0c9a370d3a551c1bb5beea69a3a0cfecd9885",
      "parents": [
        "3592695c363c3f3119621bdcf5ed852d6b9d1a5c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Dec 06 20:34:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:27 2006 -0800"
      },
      "message": "[PATCH] swsusp: use partition device and offset to identify swap areas\n\nThe Linux kernel handles swap files almost in the same way as it handles swap\npartitions and there are only two differences between these two types of swap\nareas:\n\n(1) swap files need not be contiguous,\n\n(2) the header of a swap file is not in the first block of the partition\n    that holds it.  From the swsusp\u0027s point of view (1) is not a problem,\n    because it is already taken care of by the swap-handling code, but (2) has\n    to be taken into consideration.\n\nIn principle the location of a swap file\u0027s header may be determined with the\nhelp of appropriate filesystem driver.  Unfortunately, however, it requires\nthe filesystem holding the swap file to be mounted, and if this filesystem is\njournaled, it cannot be mounted during a resume from disk.  For this reason we\nneed some other means by which swap areas can be identified.\n\nFor example, to identify a swap area we can use the partition that holds the\narea and the offset from the beginning of this partition at which the swap\nheader is located.\n\nThe following patch allows swsusp to identify swap areas this way.  It changes\nswap_type_of() so that it takes an additional argument representing an offset\nof the swap header within the partition represented by its first argument.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: 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": "3592695c363c3f3119621bdcf5ed852d6b9d1a5c",
      "tree": "bdc238af4d044ce822d88e5d18e6cf284b433728",
      "parents": [
        "074cec54d1049ab580ecd0026623b553e0e270c4"
      ],
      "author": {
        "name": "Stefan Seyfried",
        "email": "seife@suse.de",
        "time": "Wed Dec 06 20:34:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:26 2006 -0800"
      },
      "message": "[PATCH] uswsusp: add pmops-\u003e{prepare,enter,finish} support (aka \"platform mode\")\n\nAdd an ioctl to the userspace swsusp code that enables the usage of the\npmops-\u003eprepare, pmops-\u003eenter and pmops-\u003efinish methods (the in-kernel\nsuspend knows these as \"platform method\").  These are needed on many\nmachines to (among others) speed up resuming by letting the BIOS skip some\nsteps or let my hp nx5000 recognise the correct ac_adapter state after\nresume again.\n\nIt also ensures on many machines, that changed hardware (unplugged AC\nadapters) gets correctly detected and that kacpid does not run wild after\nresume.\n\nSigned-off-by: Stefan Seyfried \u003cseife@suse.de\u003e\nCc: \"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": "074cec54d1049ab580ecd0026623b553e0e270c4",
      "tree": "46de20e33bee156e7edb948b1d8acbf46c67c80a",
      "parents": [
        "3869aa292fbd24103b8338937cb351459efe3f82"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Dec 06 20:33:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:26 2006 -0800"
      },
      "message": "[PATCH] alpha: switch to pci_get API\n\nNow that we have pci_get_bus_and_slot we can do the job correctly.  Note that\nsome of these calls intentionally leak a device - this is because the device\nin question is always needed from boot to reboot.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3869aa292fbd24103b8338937cb351459efe3f82",
      "tree": "c6b9c2135fea91c5cb5bd18f98a8686fc3add5f2",
      "parents": [
        "4d3eeeac97a6e4fc1ff3ad184f1c3bf328de7cb6"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Wed Dec 06 20:33:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:26 2006 -0800"
      },
      "message": "[PATCH] h8300 stray bracket fix\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d3eeeac97a6e4fc1ff3ad184f1c3bf328de7cb6",
      "tree": "2b5387323106e3bc48d955f8c2ac4a6de8d34630",
      "parents": [
        "e9c1528a429c831458e54c8701a0b80ba563a7a8"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Dec 06 20:33:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:26 2006 -0800"
      },
      "message": "[PATCH] avr32: fixup kprobes preemption handling\n\nWhile working on SH kprobes, I noticed that avr32 got the preemption\nhandling wrong in the no probe case.  The idea is that upon entry of\nkprobe_handler() preemption is disabled outright across the life of the\nkprobe, only to be re-enabled in post_kprobe_handler().\n\nHowever, in the event that the probe is never activated, there\u0027s never any\nchance of hitting the post probe handler, which allows for the current\navr32 implementation to disable preemption indefinitely, as it\u0027s currently\nmissing a re-enable when no probe is activated.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e9c1528a429c831458e54c8701a0b80ba563a7a8",
      "tree": "1f4b519bb5281e9537fc4fb42d3734479486be46",
      "parents": [
        "48ad504ee7d598431cb2d0b2f01c6d1aff1d2a07"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 06 20:33:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:26 2006 -0800"
      },
      "message": "[PATCH] arch/frv/kernel/futex.c must #include \u003clinux/uaccess.h\u003e\n\nThis patch fixes the following compile error with\n-Werror-implicit-function-declaration\n(without -Werror-implicit-function-declaration it\u0027s a link error):\n\n    ...\n      CC      arch/frv/kernel/futex.o\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:\n    In function \u0027futex_atomic_op_inuser\u0027:\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:203:\n    error: implicit declaration of function \u0027pagefault_disable\u0027\n    /home/bunk/linux/kernel-2.6/linux-2.6.19-rc6-mm2/arch/frv/kernel/futex.c:226:\n    error: implicit declaration of function \u0027pagefault_enable\u0027\n    make[2]: *** [arch/frv/kernel/futex.o] Error 1\n    ...\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-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": "48ad504ee7d598431cb2d0b2f01c6d1aff1d2a07",
      "tree": "52862e12cdca605b04959fc0fa28164dc015013b",
      "parents": [
        "7cf9c2c76c1a17b32f2da85b50cd4fe468ed44b5"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Wed Dec 06 20:33:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] security/keys/*: user kmemdup()\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-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": "7cf9c2c76c1a17b32f2da85b50cd4fe468ed44b5",
      "tree": "c3ed3e92e21f19ef744c9ea6829f4ff8d06e9f14",
      "parents": [
        "36de6437866bbb1d37e2312ff4f95ee4ed6d2b61"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Dec 06 20:33:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] radix-tree: RCU lockless readside\n\nMake radix tree lookups safe to be performed without locks.  Readers are\nprotected against nodes being deleted by using RCU based freeing.  Readers\nare protected against new node insertion by using memory barriers to ensure\nthe node itself will be properly written before it is visible in the radix\ntree.\n\nEach radix tree node keeps a record of their height (above leaf nodes).\nThis height does not change after insertion -- when the radix tree is\nextended, higher nodes are only inserted in the top.  So a lookup can take\nthe pointer to what is *now* the root node, and traverse down it even if\nthe tree is concurrently extended and this node becomes a subtree of a new\nroot.\n\n\"Direct\" pointers (tree height of 0, where root-\u003ernode points directly to\nthe data item) are handled by using the low bit of the pointer to signal\nwhether rnode is a direct pointer or a pointer to a radix tree node.\n\nWhen a reader wants to traverse the next branch, they will take a copy of\nthe pointer.  This pointer will be either NULL (and the branch is empty) or\nnon-NULL (and will point to a valid node).\n\n[akpm@osdl.org: cleanups]\n[Lee.Schermerhorn@hp.com: bugfixes, comments, simplifications]\n[clameter@sgi.com: build fix]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.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": "36de6437866bbb1d37e2312ff4f95ee4ed6d2b61",
      "tree": "5e77ff1af2ccaaeaba09d9aa0d9f10732207e865",
      "parents": [
        "33f2ef89f8e181486b63fdbdc97c6afa6ca9f34b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Wed Dec 06 20:33:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] Save some bytes in struct mm_struct\n\nBefore:\n[acme@newtoy net-2.6.20]$ pahole --cacheline 32 kernel/sched.o mm_struct\n\n/* include2/asm/processor.h:542 */\nstruct mm_struct {\n        struct vm_area_struct *    mmap;                 /*     0     4 */\n        struct rb_root             mm_rb;                /*     4     4 */\n        struct vm_area_struct *    mmap_cache;           /*     8     4 */\n        long unsigned int          (*get_unmapped_area)(); /*    12     4 */\n        void                       (*unmap_area)();      /*    16     4 */\n        long unsigned int          mmap_base;            /*    20     4 */\n        long unsigned int          task_size;            /*    24     4 */\n        long unsigned int          cached_hole_size;     /*    28     4 */\n        /* ---------- cacheline 1 boundary ---------- */\n        long unsigned int          free_area_cache;      /*    32     4 */\n        pgd_t *                    pgd;                  /*    36     4 */\n        atomic_t                   mm_users;             /*    40     4 */\n        atomic_t                   mm_count;             /*    44     4 */\n        int                        map_count;            /*    48     4 */\n        struct rw_semaphore        mmap_sem;             /*    52    64 */\n        spinlock_t                 page_table_lock;      /*   116    40 */\n        struct list_head           mmlist;               /*   156     8 */\n        mm_counter_t               _file_rss;            /*   164     4 */\n        mm_counter_t               _anon_rss;            /*   168     4 */\n        long unsigned int          hiwater_rss;          /*   172     4 */\n        long unsigned int          hiwater_vm;           /*   176     4 */\n        long unsigned int          total_vm;             /*   180     4 */\n        long unsigned int          locked_vm;            /*   184     4 */\n        long unsigned int          shared_vm;            /*   188     4 */\n        /* ---------- cacheline 6 boundary ---------- */\n        long unsigned int          exec_vm;              /*   192     4 */\n        long unsigned int          stack_vm;             /*   196     4 */\n        long unsigned int          reserved_vm;          /*   200     4 */\n        long unsigned int          def_flags;            /*   204     4 */\n        long unsigned int          nr_ptes;              /*   208     4 */\n        long unsigned int          start_code;           /*   212     4 */\n        long unsigned int          end_code;             /*   216     4 */\n        long unsigned int          start_data;           /*   220     4 */\n        /* ---------- cacheline 7 boundary ---------- */\n        long unsigned int          end_data;             /*   224     4 */\n        long unsigned int          start_brk;            /*   228     4 */\n        long unsigned int          brk;                  /*   232     4 */\n        long unsigned int          start_stack;          /*   236     4 */\n        long unsigned int          arg_start;            /*   240     4 */\n        long unsigned int          arg_end;              /*   244     4 */\n        long unsigned int          env_start;            /*   248     4 */\n        long unsigned int          env_end;              /*   252     4 */\n        /* ---------- cacheline 8 boundary ---------- */\n        long unsigned int          saved_auxv[44];       /*   256   176 */\n        unsigned int               dumpable:2;           /*   432     4 */\n        cpumask_t                  cpu_vm_mask;          /*   436     4 */\n        mm_context_t               context;              /*   440    68 */\n        long unsigned int          swap_token_time;      /*   508     4 */\n        /* ---------- cacheline 16 boundary ---------- */\n        char                       recent_pagein;        /*   512     1 */\n\n        /* XXX 3 bytes hole, try to pack */\n\n        int                        core_waiters;         /*   516     4 */\n        struct completion *        core_startup_done;    /*   520     4 */\n        struct completion          core_done;            /*   524    52 */\n        rwlock_t                   ioctx_list_lock;      /*   576    36 */\n        struct kioctx *            ioctx_list;           /*   612     4 */\n}; /* size: 616, sum members: 613, holes: 1, sum holes: 3, cachelines: 20,\n      last cacheline: 8 bytes */\n\nAfter:\n\n[acme@newtoy net-2.6.20]$ pahole --cacheline 32 kernel/sched.o mm_struct\n/* include2/asm/processor.h:542 */\nstruct mm_struct {\n        struct vm_area_struct *    mmap;                 /*     0     4 */\n        struct rb_root             mm_rb;                /*     4     4 */\n        struct vm_area_struct *    mmap_cache;           /*     8     4 */\n        long unsigned int          (*get_unmapped_area)(); /*    12     4 */\n        void                       (*unmap_area)();      /*    16     4 */\n        long unsigned int          mmap_base;            /*    20     4 */\n        long unsigned int          task_size;            /*    24     4 */\n        long unsigned int          cached_hole_size;     /*    28     4 */\n        /* ---------- cacheline 1 boundary ---------- */\n        long unsigned int          free_area_cache;      /*    32     4 */\n        pgd_t *                    pgd;                  /*    36     4 */\n        atomic_t                   mm_users;             /*    40     4 */\n        atomic_t                   mm_count;             /*    44     4 */\n        int                        map_count;            /*    48     4 */\n        struct rw_semaphore        mmap_sem;             /*    52    64 */\n        spinlock_t                 page_table_lock;      /*   116    40 */\n        struct list_head           mmlist;               /*   156     8 */\n        mm_counter_t               _file_rss;            /*   164     4 */\n        mm_counter_t               _anon_rss;            /*   168     4 */\n        long unsigned int          hiwater_rss;          /*   172     4 */\n        long unsigned int          hiwater_vm;           /*   176     4 */\n        long unsigned int          total_vm;             /*   180     4 */\n        long unsigned int          locked_vm;            /*   184     4 */\n        long unsigned int          shared_vm;            /*   188     4 */\n        /* ---------- cacheline 6 boundary ---------- */\n        long unsigned int          exec_vm;              /*   192     4 */\n        long unsigned int          stack_vm;             /*   196     4 */\n        long unsigned int          reserved_vm;          /*   200     4 */\n        long unsigned int          def_flags;            /*   204     4 */\n        long unsigned int          nr_ptes;              /*   208     4 */\n        long unsigned int          start_code;           /*   212     4 */\n        long unsigned int          end_code;             /*   216     4 */\n        long unsigned int          start_data;           /*   220     4 */\n        /* ---------- cacheline 7 boundary ---------- */\n        long unsigned int          end_data;             /*   224     4 */\n        long unsigned int          start_brk;            /*   228     4 */\n        long unsigned int          brk;                  /*   232     4 */\n        long unsigned int          start_stack;          /*   236     4 */\n        long unsigned int          arg_start;            /*   240     4 */\n        long unsigned int          arg_end;              /*   244     4 */\n        long unsigned int          env_start;            /*   248     4 */\n        long unsigned int          env_end;              /*   252     4 */\n        /* ---------- cacheline 8 boundary ---------- */\n        long unsigned int          saved_auxv[44];       /*   256   176 */\n        cpumask_t                  cpu_vm_mask;          /*   432     4 */\n        mm_context_t               context;              /*   436    68 */\n        long unsigned int          swap_token_time;      /*   504     4 */\n        char                       recent_pagein;        /*   508     1 */\n        unsigned char              dumpable:2;           /*   509     1 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        int                        core_waiters;         /*   512     4 */\n        struct completion *        core_startup_done;    /*   516     4 */\n        struct completion          core_done;            /*   520    52 */\n        rwlock_t                   ioctx_list_lock;      /*   572    36 */\n        struct kioctx *            ioctx_list;           /*   608     4 */\n}; /* size: 612, sum members: 610, holes: 1, sum holes: 2, cachelines: 20,\n      last cacheline: 4 bytes */\n\n[acme@newtoy net-2.6.20]$ codiff -V /tmp/sched.o.before kernel/sched.o\n/pub/scm/linux/kernel/git/acme/net-2.6.20/kernel/sched.c:\n  struct mm_struct |   -4\n    dumpable:2;\n     from: unsigned int          /*   432(30)    4(2) */\n     to:   unsigned char         /*   509(6)     1(2) */\n\u003c SNIP other offset changes \u003e\n 1 struct changed\n[acme@newtoy net-2.6.20]$\n\nI\u0027m not aware of any problem about using 2 byte wide bitfields where\npreviously a 4 byte wide one was, holler if there is any, I wouldn\u0027t be\nsurprised, bitfields are things from hell.\n\nFor the curious, 432(30) means: at offset 432 from the struct start, at\noffset 30 in the bitfield (yeah, it comes backwards, hellish, huh?) ditto\nfor 509(6), while 4(2) and 1(2) means \"struct field size(bitfield size)\".\n\nNow we have a 2 bytes hole and are using only 4 bytes of the last 32\nbytes cacheline, any takers? :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "33f2ef89f8e181486b63fdbdc97c6afa6ca9f34b",
      "tree": "b90eac24ff367bc628c44eaa51a9f0ea1b69d1a4",
      "parents": [
        "3c517a6132098ca37e122a2980fc64a9e798b0d7"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@shadowen.org",
        "time": "Wed Dec 06 20:33:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] mm: make compound page destructor handling explicit\n\nCurrently we we use the lru head link of the second page of a compound page\nto hold its destructor.  This was ok when it was purely an internal\nimplmentation detail.  However, hugetlbfs overrides this destructor\nviolating the layering.  Abstract this out as explicit calls, also\nintroduce a type for the callback function allowing them to be type\nchecked.  For each callback we pre-declare the function, causing a type\nerror on definition rather than on use elsewhere.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3c517a6132098ca37e122a2980fc64a9e798b0d7",
      "tree": "e8fa49ef3f873624c0f5d29b34fdc8684988b426",
      "parents": [
        "952f3b51beb592f3f1de15adcdef802fc086ea91"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: better fallback allocation behavior\n\nCurrently we simply attempt to allocate from all allowed nodes using\nGFP_THISNODE.  However, GFP_THISNODE does not do reclaim (it wont do any at\nall if the recent GFP_THISNODE patch is accepted).  If we truly run out of\nmemory in the whole system then fallback_alloc may return NULL although\nmemory may still be available if we would perform more thorough reclaim.\n\nThis patch changes fallback_alloc() so that we first only inspect all the\nper node queues for available slabs.  If we find any then we allocate from\nthose.  This avoids slab fragmentation by first getting rid of all partial\nallocated slabs on every node before allocating new memory.\n\nIf we cannot satisfy the allocation from any per node queue then we extend\na slab.  We now call into the page allocator without specifying\nGFP_THISNODE.  The page allocator will then implement its own fallback (in\nthe given cpuset context), perform necessary reclaim (again considering not\na single node but the whole set of allowed nodes) and then return pages for\na new slab.\n\nWe identify from which node the pages were allocated and then insert the\npages into the corresponding per node structure.  In order to do so we need\nto modify cache_grow() to take a parameter that specifies the new slab.\nkmem_getpages() can no longer set the GFP_THISNODE flag since we need to be\nable to use kmem_getpage to allocate from an arbitrary node.  GFP_THISNODE\nneeds to be specified when calling cache_grow().\n\nOne key advantage is that the decision from which node to allocate new\nmemory is removed from slab fallback processing.  The patch allows to go\nback to use of the page allocators fallback/reclaim logic.\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": "952f3b51beb592f3f1de15adcdef802fc086ea91",
      "tree": "45d9b240230494d3d985400f81f963b67db1e788",
      "parents": [
        "5bcd234d881d83ac0259c6d42d98f134e31c60a8"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] GFP_THISNODE must not trigger global reclaim\n\nThe intent of GFP_THISNODE is to make sure that an allocation occurs on a\nparticular node.  If this is not possible then NULL needs to be returned so\nthat the caller can choose what to do next on its own (the slab allocator\ndepends on that).\n\nHowever, GFP_THISNODE currently triggers reclaim before returning a failure\n(GFP_THISNODE means GFP_NORETRY is set).  If we have over allocated a node\nthen we will currently do some reclaim before returning NULL.  The caller\nmay want memory from other nodes before reclaim should be triggered.  (If\nthe caller wants reclaim then he can directly use __GFP_THISNODE instead).\n\nThere is no flag to avoid reclaim in the page allocator and adding yet\nanother GFP_xx flag would be difficult given that we are out of available\nflags.\n\nSo just compare and see if all bits for GFP_THISNODE (__GFP_THISNODE,\n__GFP_NORETRY and __GFP_NOWARN) are set.  If so then we return NULL before\nwaking up kswapd.\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": "5bcd234d881d83ac0259c6d42d98f134e31c60a8",
      "tree": "40d58218ce224200336c449ba035bcb6ec119d89",
      "parents": [
        "1b1cec4bbc59feac89670d5d6d222a02545bac94"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: fix two issues in kmalloc_node / __cache_alloc_node\n\nThis addresses two issues:\n\n1. Kmalloc_node() may intermittently return NULL if we are allocating\n   from the current node and are unable to obtain memory for the current\n   node from the page allocator.  This is because we call ___cache_alloc()\n   if nodeid \u003d\u003d numa_node_id() and ____cache_alloc is not able to fallback\n   to other nodes.\n\n   This was introduced in the 2.6.19 development cycle.  \u003c\u003d 2.6.18 in\n   that case does not do a restricted allocation and blindly trusts the\n   page allocator to have given us memory from the indicated node.  It\n   inserts the page regardless of the node it came from into the queues for\n   the current node.\n\n2. If kmalloc_node() is used on a node that has not been bootstrapped\n   yet then we may try to pass an invalid node number to\n   ____cache_alloc_node() triggering a BUG().\n\n   Change the function to call fallback_alloc() instead.  Only call\n   fallback_alloc() if we are allowed to fallback at all.  The need to\n   handle a node not bootstrapped yet also first surfaced in the 2.6.19\n   cycle.\n\nUpdate the comments since they were still describing the old kmalloc_node\nfrom 2.6.12.\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": "1b1cec4bbc59feac89670d5d6d222a02545bac94",
      "tree": "5480d4f5e3bf9700d355adc02a90c9395fbcbd46",
      "parents": [
        "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Dec 06 20:33:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: deprecate kmem_cache_t\n\nCc: 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": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\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": "441e143e95f5aa1e04026cb0aa71c801ba53982f",
      "tree": "884855ea1fdaa65ebc885ffebc65ee3a26f8a78f",
      "parents": [
        "e94b1766097d53e6f3ccfb36c8baa562ffeda3fc"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_DMA\n\nSLAB_DMA is an alias of GFP_DMA. This is the last one so we\nremove the leftover comment too.\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": "e94b1766097d53e6f3ccfb36c8baa562ffeda3fc",
      "tree": "93fa0a8ab84976d4e89c50768ca8b8878d642a0d",
      "parents": [
        "54e6ecb23951b195d02433a741c7f7cb0b796c78"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_KERNEL\n\nSLAB_KERNEL is an alias of GFP_KERNEL.\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": "54e6ecb23951b195d02433a741c7f7cb0b796c78",
      "tree": "c8885c49f37c8d383945b8af69d51597494ed62c",
      "parents": [
        "f7267c0c0721fd02ad3dc37c3d6dd24ccd81d4d6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_ATOMIC\n\nSLAB_ATOMIC is an alias of GFP_ATOMIC\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": "f7267c0c0721fd02ad3dc37c3d6dd24ccd81d4d6",
      "tree": "4bbc467e881f9dce909de3d9d9d27bb068a8a3b4",
      "parents": [
        "e6b4f8da3a88457148038bc952043e99a7fdba64"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_USER\n\nSLAB_USER is an alias of GFP_USER\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": "e6b4f8da3a88457148038bc952043e99a7fdba64",
      "tree": "858c2a0e04b442395e7ecd0f60c8d2a3304b83e1",
      "parents": [
        "55acbda0965ca0a29b0ca276e7d17a55edc11d1b"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_NOFS\n\nSLAB_NOFS is an alias of GFP_NOFS.\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": "55acbda0965ca0a29b0ca276e7d17a55edc11d1b",
      "tree": "db2eb5d570999e3e04f24d1ad57f7544b58df395",
      "parents": [
        "a06d72c1dcbff015250df6ad9f0b1d18c02113bf"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_NOIO\n\nSLAB_NOIO is an alias of GFP_NOIO with a single instance of use.\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": "a06d72c1dcbff015250df6ad9f0b1d18c02113bf",
      "tree": "e3284c3fa53817481c05a1cf8033f85ad6c6a26b",
      "parents": [
        "6e0eaa4b05cf53ca5caa702fd2760a5b3376be69"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_LEVEL_MASK\n\nSLAB_LEVEL_MASK is only used internally to the slab and is\nand alias of GFP_LEVEL_MASK.\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": "6e0eaa4b05cf53ca5caa702fd2760a5b3376be69",
      "tree": "f79ade4f91bf4b5c9fd5ec9605ac925740b9a8a6",
      "parents": [
        "2d4d862f729f0cb1ad8027203aceff49dc9f63fa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_NO_GROW\n\nIt is only used internally in 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": "2d4d862f729f0cb1ad8027203aceff49dc9f63fa",
      "tree": "e081c175e65efee2e0bf239a215cceeeb8b8a26b",
      "parents": [
        "ce421c799b5bde77aa60776d6fb61036ae0aea11"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Wed Dec 06 20:33:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] kill install_file_pte\u0027s pte_val\n\nDavid Binderman and his Intel C compiler rightly observe that\ninstall_file_pte no longer has any use for its pte_val.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: d binderman \u003cdcb314@hotmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce421c799b5bde77aa60776d6fb61036ae0aea11",
      "tree": "98e0a52cdafdfa28c986991f57854209e68b8226",
      "parents": [
        "5d1854e15ee979f8e27330f0d3ce5e2703afa1dc"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@shadowen.org",
        "time": "Wed Dec 06 20:33:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] mm: cleanup indentation on switch for CPU operations\n\nThese patches introduced new switch statements which are indented contrary\nto the concensus in mm/*.c.  Fix them up to match that concensus.\n\n    [PATCH] node local per-cpu-pages\n    [PATCH] ZVC: Scale thresholds depending on the size of the system\n    commit e7c8d5c9955a4d2e88e36b640563f5d6d5aba48a\n    commit df9ecaba3f152d1ea79f2a5e0b87505e03f47590\n\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\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": "5d1854e15ee979f8e27330f0d3ce5e2703afa1dc",
      "tree": "8aff9641966020284218f2cdd75fd3b7bfc2babc",
      "parents": [
        "4af2bfc1202041006a0f01d0591a975f6c573f09"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Wed Dec 06 20:33:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] reject corrupt swapfiles earlier\n\nThe fsfuzzer found this; with a corrupt small swapfile that claims to have\nmany pages:\n\n  [root]# file swap.741.img\n  swap.741.img: Linux/i386 swap file (new style) 1 (4K pages) size 1040191487 pages\n  [root]# ls -l swap.741.img\n  -rw-r--r-- 1 root root 16777216 Nov 22 05:18 swap.741.img\n\nsys_swapon() will try to vmalloc all those pages, and -then- check to see if\nthe file is actually that large:\n\n                if (!(p-\u003eswap_map \u003d vmalloc(maxpages * sizeof(short)))) {\n  \u003csnip\u003e\n        if (swapfilesize \u0026\u0026 maxpages \u003e swapfilesize) {\n                printk(KERN_WARNING\n                       \"Swap area shorter than signature indicates\\n\");\n\nIt seems to me that it would make more sense to move this test up before\nthe vmalloc, with the other checks, to avoid the OOM-killer in this\nsituation...\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\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": "4af2bfc1202041006a0f01d0591a975f6c573f09",
      "tree": "6fb140a40083c793919a417cfa28b31c9f86c662",
      "parents": [
        "25ba77c141dbcd2602dd0171824d0d72aa023a01"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@shadowen.org",
        "time": "Wed Dec 06 20:33:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] silence unused pgdat warning from alloc_bootmem_node and friends\n\nx86 NUMA systems only define bootmem for node 0.  alloc_bootmem_node() and\nfriends therefore ignore the passed pgdat and use NODE_DATA(0) in all\ncases.  This leads to the following warnings as we are not using the passed\nparameter:\n\n  .../mm/page_alloc.c: In function \u0027zone_wait_table_init\u0027:\n  .../mm/page_alloc.c:2259: warning: unused variable \u0027pgdat\u0027\n\nOne option would be to define all variables used with these macros\n__attribute__ ((unused)), but this would leave us exposed should these\nbecome genuinely unused.\n\nThe key here is that we _are_ using the value, we ignore it but that is a\ndeliberate action.  This patch adds a nested local variable within the\nalloc_bootmem_node helper to which the pgdat parameter is assigned making\nit \u0027used\u0027.  The nested local is marked __attribute__ ((unused)) to silence\nthis same warning for it.\n\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "25ba77c141dbcd2602dd0171824d0d72aa023a01",
      "tree": "153eb9bc567f63d739dcaf8a3caf11c8f48b8379",
      "parents": [
        "bc4ba393c007248f76c05945abb7b7b892cdd1cc"
      ],
      "author": {
        "name": "Andy Whitcroft",
        "email": "apw@shadowen.org",
        "time": "Wed Dec 06 20:33:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] numa node ids are int, page_to_nid and zone_to_nid should return int\n\nNUMA node ids are passed as either int or unsigned int almost exclusivly\npage_to_nid and zone_to_nid both return unsigned long.  This is a throw\nback to when page_to_nid was a #define and was thus exposing the real type\nof the page flags field.\n\nIn addition to fixing up the definitions of page_to_nid and zone_to_nid I\naudited the users of these functions identifying the following incorrect\nuses:\n\n1) mm/page_alloc.c show_node() -- printk dumping the node id,\n2) include/asm-ia64/pgalloc.h pgtable_quicklist_free() -- comparison\n   against numa_node_id() which returns an int from cpu_to_node(), and\n3) mm/mpolicy.c check_pte_range -- used as an index in node_isset which\n   uses bit_set which in generic code takes an int.\n\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc4ba393c007248f76c05945abb7b7b892cdd1cc",
      "tree": "3c2cf7e13ecf991c58ffc00617757fcdeb3d863f",
      "parents": [
        "ebe29738f3934ad6a93c8bd76e30aa5d797a269d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] drain_node_page(): Drain pages in batch units\n\ndrain_node_pages() currently drains the complete pageset of all pages.  If\nthere are a large number of pages in the queues then we may hold off\ninterrupts for too long.\n\nDuplicate the method used in free_hot_cold_page.  Only drain pcp-\u003ebatch\npages at one time.\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": "ebe29738f3934ad6a93c8bd76e30aa5d797a269d",
      "tree": "bde287ec1b33aaeaa0941eeac6bdb677eec3feb3",
      "parents": [
        "b86c089b83b8ae2bc814db865057768a9ba787b5"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] Remove uses of kmem_cache_t from mm/* and include/linux/slab.h\n\nRemove all uses of kmem_cache_t (the most were left in slab.h).  The\ntypedef for kmem_cache_t is then only necessary for other kernel\nsubsystems.  Add a comment to that effect.\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": "b86c089b83b8ae2bc814db865057768a9ba787b5",
      "tree": "f5a838ca841c6f655ad25e73a0295c357b904ee4",
      "parents": [
        "aa362a83e78d2e9320da588805cf2a0b53356bc3"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] Move names_cachep to linux/fs.h\n\nThe names_cachep is used for getname() and putname().  So lets put it into\nfs.h near those two definitions.\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": "aa362a83e78d2e9320da588805cf2a0b53356bc3",
      "tree": "74851124298557f468fe6549b6eed06b410f7ddf",
      "parents": [
        "8b7d91eb7f6a3e8f0caaa613937bda5ab7dc7dc2"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] Move fs_cachep to linux/fs_struct.h\n\nfs_cachep is only used in kernel/exit.c and in kernel/fork.c.\n\nIt is used to store fs_struct items so it should be placed in linux/fs_struct.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": "8b7d91eb7f6a3e8f0caaa613937bda5ab7dc7dc2",
      "tree": "8036dc7f0c05ec2712acfed92589bd41ed5766f9",
      "parents": [
        "5d6538fcf231faccb2ac42f92851d259d00e62f9"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:23 2006 -0800"
      },
      "message": "[PATCH] Move filep_cachep to include/file.h\n\nfilp_cachep is only used in fs/file_table.c and in fs/dcache.c where\nit is defined.\n\nMove it to related definitions in linux/file.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": "5d6538fcf231faccb2ac42f92851d259d00e62f9",
      "tree": "6ccf2d0755d32d5049d365a7f30c13240030585f",
      "parents": [
        "c43692e85f306667545b91194c748a6e46c1f8b4"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Move files_cachep to include/file.h\n\nProper place is in file.h since files_cachep uses are rated to file I/O.\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": "c43692e85f306667545b91194c748a6e46c1f8b4",
      "tree": "5a1a47c0ddeded4d4591befcd3176f50669cd322",
      "parents": [
        "298ec1e2ac85cecce3eddd167286359358c44d5d"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Move vm_area_cachep to include/mm.h\n\nvm_area_cachep is used to store vm_area_structs. So move to mm.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": "298ec1e2ac85cecce3eddd167286359358c44d5d",
      "tree": "36472ce09abe8bcb0dbdb56270abaf572594cb30",
      "parents": [
        "54cc211ce3fc73a9d21c6316886db0676beaca95"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Move sighand_cachep to include/signal.h\n\nMove sighand_cachep definitioni to linux/signal.h\n\nThe sighand cache is only used in fs/exec.c and kernel/fork.c.  It is defined\nin kernel/fork.c but only used in fs/exec.c.\n\nThe sighand_cachep is related to signal processing.  So add the definition to\nsignal.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": "54cc211ce3fc73a9d21c6316886db0676beaca95",
      "tree": "1b78720012a6f1b8764c2937791eb59b3add2ca0",
      "parents": [
        "e30500557eca09ddd340806ce44abf84d9115ab1"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:32:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Remove bio_cachep from slab.h\n\nRemove bio_cachep from slab.h - it no longer exists.\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": "e30500557eca09ddd340806ce44abf84d9115ab1",
      "tree": "2745f903ea3a0f6f85d78a8f296fc4a22dcb5120",
      "parents": [
        "7c309a64d6afa90a0a07813c836ba480aeaeca8c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Dec 06 20:32:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] make mm/thrash.c:global_faults static\n\nThis patch makes the needlessly global \"global_faults\" static.\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": "7c309a64d6afa90a0a07813c836ba480aeaeca8c",
      "tree": "a56b235fa35c2e528752071df2a6e21a25a4e8f6",
      "parents": [
        "a120586873d3d64de93bd6d593d237e131994e58"
      ],
      "author": {
        "name": "Christian Krafft",
        "email": "krafft@de.ibm.com",
        "time": "Wed Dec 06 20:32:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] enable booting a NUMA system where some nodes have no memory\n\nWhen booting a NUMA system with nodes that have no memory (eg by limiting\nmemory), bootmem_alloc_core tried to find pages in an uninitialized\nbootmem_map.  This caused a null pointer access.  This fix adds a check, so\nthat NULL is returned.  That will enable the caller (bootmem_alloc_nopanic)\nto alloc memory on other without a panic.\n\nSigned-off-by: Christian Krafft \u003ckrafft@de.ibm.com\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Martin Bligh \u003cmbligh@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a120586873d3d64de93bd6d593d237e131994e58",
      "tree": "ae284884e23268e867f748a2ab52353cf2390e89",
      "parents": [
        "b30973f877fea1a3fb84e05599890fcc082a88e5"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Dec 06 20:32:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Allow NULL pointers in percpu_free\n\nThe patch (as824b) makes percpu_free() ignore NULL arguments, as one would\nexpect for a deallocation routine.  (Note that free_percpu is #defined as\npercpu_free in include/linux/percpu.h.) A few callers are updated to remove\nnow-unneeded tests for NULL.  A few other callers already seem to assume\nthat passing a NULL pointer to percpu_free() is okay!\n\nThe patch also removes an unnecessary NULL check in percpu_depopulate().\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b30973f877fea1a3fb84e05599890fcc082a88e5",
      "tree": "198f7c31d5945288c1195348ac4e521ba90d81d6",
      "parents": [
        "873481367edb18a7d0d7e5a285e6728c16bb44a9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Dec 06 20:32:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] node-aware skb allocation\n\nNode-aware allocation of skbs for the receive path.\n\nDetails:\n\n  - __alloc_skb gets a new node argument and cals the node-aware\n    slab functions with it.\n  - netdev_alloc_skb passed the node number it gets from dev_to_node\n    to it, everyone else passes -1 (any node)\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "873481367edb18a7d0d7e5a285e6728c16bb44a9",
      "tree": "dd97507a3c061addac715bb07bfd5c4991e08f80",
      "parents": [
        "8b98c1699eba23cfd2e8b366625c50ff5fd1415b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Dec 06 20:32:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] add numa node information to struct device\n\nFor node-aware skb allocations we need information about the node in struct\nnet_device or struct device.  Davem suggested to put it into struct device\nwhich this patch does.\n\nIn particular:\n\n - struct device gets a new int numa_node member if CONFIG_NUMA is set\n - there are two new helpers, dev_to_node and set_dev_node to\n   transparently deal with the non-numa case\n - for pci devices the node-info is set to the value we get from\n   pcibus_to_node.\n\nNote that for some architectures pcibus_to_node doesn\u0027t work yet at the time\nwe call it currently.  This is harmless and will just mean skb allocations\naren\u0027t node-local on this architectures until the implementation of\npcibus_to_node on these architectures have been updated (There are patches for\nx86 and x86_64 floating around)\n\n[akpm@osdl.org: cleanup]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8b98c1699eba23cfd2e8b366625c50ff5fd1415b",
      "tree": "24462eaefeb4e2fa85e77d392a94a60316ad2349",
      "parents": [
        "881e4aabe4c6b3fce93674b67c6adc646fe2683b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Dec 06 20:32:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] leak tracking for kmalloc_node\n\nWe have variants of kmalloc and kmem_cache_alloc that leave leak tracking to\nthe caller.  This is used for subsystem-specific allocators like skb_alloc.\n\nTo make skb_alloc node-aware we need similar routines for the node-aware slab\nallocator, which this patch adds.\n\nNote that the code is rather ugly, but it mirrors the non-node-aware code 1:1:\n\n[akpm@osdl.org: add module export]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "881e4aabe4c6b3fce93674b67c6adc646fe2683b",
      "tree": "f5e429c01ca20c8bb8bd300e33013f056516b131",
      "parents": [
        "b43a57bb4dae72e8f7232e7c821a8799eda30022"
      ],
      "author": {
        "name": "Suleiman Souhlal",
        "email": "ssouhlal@FreeBSD.org",
        "time": "Wed Dec 06 20:32:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] Always print out the header line in /proc/swaps\n\nIt would be possible for /proc/swaps to not always print out the header:\n\nswapon /dev/hdc2\nswapon /dev/hde2\nswapoff /dev/hdc2\n\nAt this point /proc/swaps would not have a header.\n\nSigned-off-by: Suleiman Souhlal \u003csuleiman@google.com\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": "b43a57bb4dae72e8f7232e7c821a8799eda30022",
      "tree": "4293286b44c8b11bac6a03c4ddfe75aea40aa089",
      "parents": [
        "a3eea484f7a1aadb70ed6665338026a09ad6ce85"
      ],
      "author": {
        "name": "Kirill Korotaev",
        "email": "dev@openvz.org",
        "time": "Wed Dec 06 20:32:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] OOM can panic due to processes stuck in __alloc_pages()\n\nOOM can panic due to the processes stuck in __alloc_pages() doing infinite\nrebalance loop while no memory can be reclaimed.  OOM killer tries to kill\nsome processes, but unfortunetaly, rebalance label was moved by someone\nbelow the TIF_MEMDIE check, so buddy allocator doesn\u0027t see that process is\nOOM-killed and it can simply fail the allocation :/\n\nObserved in reality on RHEL4(2.6.9)+OpenVZ kernel when a user doing some\nmemory allocation tricks triggered OOM panic.\n\nSigned-off-by: Denis Lunev \u003cden@sw.ru\u003e\nSigned-off-by: Kirill Korotaev \u003cdev@openvz.org\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": "a3eea484f7a1aadb70ed6665338026a09ad6ce85",
      "tree": "95bf0a3d1bc65d00b4cb26e5cf2a419f13ac5814",
      "parents": [
        "8fb4fc68ca391862b061b3d358a288ccf6abed39"
      ],
      "author": {
        "name": "Rik Bobbaers",
        "email": "Rik.Bobbaers@cc.kuleuven.be",
        "time": "Wed Dec 06 20:32:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:22 2006 -0800"
      },
      "message": "[PATCH] mlock cleanup\n\nmm is defined as vma-\u003evm_mm, so use that.\n\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": "8fb4fc68ca391862b061b3d358a288ccf6abed39",
      "tree": "5fb67541fb76957260879812d6d21ead6c4e6852",
      "parents": [
        "3b17979bda74493633364c2c263b452b7788e350"
      ],
      "author": {
        "name": "Guillem Jover",
        "email": "guillem.jover@nokia.com",
        "time": "Wed Dec 06 20:32:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] Allow user processes to raise their oom_adj value\n\nCurrently a user process cannot rise its own oom_adj value (i.e.\nunprotecting itself from the OOM killer).  As this value is stored in the\ntask structure it gets inherited and the unprivileged childs will be unable\nto rise it.\n\nThe EPERM will be handled by the generic proc fs layer, as only processes\nwith the proper caps or the owner of the process will be able to write to\nthe file.  So we allow only the processes with CAP_SYS_RESOURCE to lower\nthe value, otherwise it will get an EACCES which seems more appropriate\nthan EPERM.\n\nSigned-off-by: Guillem Jover \u003cguillem.jover@nokia.com\u003e\nAcked-by: Andrea Arcangeli \u003candrea@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3b17979bda74493633364c2c263b452b7788e350",
      "tree": "3b15ec560ae56bb7730eedb3e7e8594ced2f7029",
      "parents": [
        "ad76fb6b5a5183255279e0ab5260715481770678"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed Dec 06 20:32:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] Fix kunmap_atomic\u0027s use of kpte_clear_flush()\n\nkunmap_atomic() will call kpte_clear_flush with vaddr/ptep arguments which\ndon\u0027t correspond if the vaddr is just a normal lowmem address (ie, not in\nthe KMAP area).  This patch makes sure that the pte is only cleared if kmap\narea was actually used for the mapping.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ad76fb6b5a5183255279e0ab5260715481770678",
      "tree": "31034294d70f5fc3d6166a76fe9b7f8cd19db0fd",
      "parents": [
        "a866374aecc90c7d90619727ccd851ac096b2fc7"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:32:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: k{,um}map_atomic() vs in_atomic()\n\nMake kmap_atomic/kunmap_atomic denote a pagefault disabled scope.  All non\ntrivial implementations already do this anyway.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-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": "a866374aecc90c7d90619727ccd851ac096b2fc7",
      "tree": "eabae0b36b5281dcef20563470c7f05549689b8c",
      "parents": [
        "6edaf68a87d17570790fd55f0c451a29ec1d6703"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:32:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: pagefault_{disable,enable}()\n\nIntroduce pagefault_{disable,enable}() and use these where previously we did\nmanual preempt increments/decrements to make the pagefault handler do the\natomic thing.\n\nCurrently they still rely on the increased preempt count, but do not rely on\nthe disabled preemption, this might go away in the future.\n\n(NOTE: the extra barrier() in pagefault_disable might fix some holes on\n       machines which have too many registers for their own good)\n\n[heiko.carstens@de.ibm.com: s390 fix]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\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": "6edaf68a87d17570790fd55f0c451a29ec1d6703",
      "tree": "8ea1f3509dcf3e721919471dea67ef55a3aff78f",
      "parents": [
        "3395ee0588795b0b3bd889c260e55959cf2b61f5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 06 20:32:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: arch do_page_fault() vs in_atomic()\n\nIn light of the recent pagefault and filemap_copy_from_user work I\u0027ve gone\nthrough all the arch pagefault handlers to make sure the inc_preempt_count()\n\u0027feature\u0027 works as expected.\n\nSeveral sections of code (including the new filemap_copy_from_user) rely on\nthe fact that faults do not take locks under increased preempt count.\n\narch/x86_64 - good\narch/powerpc - good\narch/cris - fixed\narch/i386 - good\narch/parisc - fixed\narch/sh - good\narch/sparc - good\narch/s390 - good\narch/m68k - fixed\narch/ppc - good\narch/alpha - fixed\narch/mips - good\narch/sparc64 - good\narch/ia64 - good\narch/arm - fixed\narch/um - good\narch/avr32 - good\narch/h8300 - NA\narch/m32r - good\narch/v850 - good\narch/frv - fixed\narch/m68knommu - NA\narch/arm26 - fixed\narch/sh64 - fixed\narch/xtensa - good\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-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": "3395ee0588795b0b3bd889c260e55959cf2b61f5",
      "tree": "ea2513a28464a5b2907a9cb71cbfb6be88389205",
      "parents": [
        "8f5be20bf87da7c7c59c5cc84f630a1eca5cc99c"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Wed Dec 06 20:32:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: add noaliencache boot option to disable numa alien caches\n\nWhen using numa\u003dfake on non-NUMA hardware there is no benefit to having the\nalien caches, and they consume much memory.\n\nAdd a kernel boot option to disable them.\n\nChristoph sayeth \"This is good to have even on large NUMA.  The problem is\nthat the alien caches grow by the square of the size of the system in terms of\nnodes.\"\n\nCc: Christoph Lameter \u003cclameter@engr.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": "8f5be20bf87da7c7c59c5cc84f630a1eca5cc99c",
      "tree": "0fc18e33fa1b43543837e99a0f09c77f686f327b",
      "parents": [
        "a44b56d354b49f9abb184e5a14f71889856283bb"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Dec 06 20:32:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: slab: eliminate lock_cpu_hotplug from slab\n\nHere\u0027s an attempt towards doing away with lock_cpu_hotplug in the slab\nsubsystem.  This approach also fixes a bug which shows up when cpus are\nbeing offlined/onlined and slab caches are being tuned simultaneously.\n\nhttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d116098888100481\u0026w\u003d2\n\nThe patch has been stress tested overnight on a 2 socket 4 core AMD box with\nrepeated cpu online and offline, while dbench and kernbench process are\nrunning, and slab caches being tuned at the same time.\nThere were no lockdep warnings either.  (This test on 2,6.18 as 2.6.19-rc\ncrashes at __drain_pages\nhttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d116172164217678\u0026w\u003d2 )\n\nThe approach here is to hold cache_chain_mutex from CPU_UP_PREPARE until\nCPU_ONLINE (similar in approach as worqueue_mutex) .  Slab code sensitive\nto cpu_online_map (kmem_cache_create, kmem_cache_destroy, slabinfo_write,\n__cache_shrink) is already serialized with cache_chain_mutex.  (This patch\nlengthens cache_chain_mutex hold time at kmem_cache_destroy to cover this).\n This patch also takes the cache_chain_sem at kmem_cache_shrink to protect\nsanity of cpu_online_map at __cache_shrink, as viewed by slab.\n(kmem_cache_shrink-\u003e__cache_shrink-\u003edrain_cpu_caches).  But, really,\nkmem_cache_shrink is used at just one place in the acpi subsystem!  Do we\nreally need to keep kmem_cache_shrink at all?\n\nAnother note.  Looks like a cpu hotplug event can send  CPU_UP_CANCELED to\na registered subsystem even if the subsystem did not receive CPU_UP_PREPARE.\nThis could be due to a subsystem registered for notification earlier than\nthe current subsystem crapping out with NOTIFY_BAD. Badness can occur with\nin the CPU_UP_CANCELED code path at slab if this happens (The same would\napply for workqueue.c as well).  To overcome this, we might have to use either\na) a per subsystem flag and avoid handling of CPU_UP_CANCELED, or\nb) Use a special notifier events like LOCK_ACQUIRE/RELEASE as Gautham was\n   using in his experiments, or\nc) Do not send CPU_UP_CANCELED to a subsystem which did not receive\n   CPU_UP_PREPARE.\n\nI would prefer c).\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a44b56d354b49f9abb184e5a14f71889856283bb",
      "tree": "36eced3b179038a70463645395e6b31f3a5cc74c",
      "parents": [
        "cace673d376d97b0c66ffa0a49b8d588a696d5d2"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@mvista.com",
        "time": "Wed Dec 06 20:32:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] slab debug and ARCH_SLAB_MINALIGN don\u0027t get along\n\nWhen CONFIG_SLAB_DEBUG is used in combination with ARCH_SLAB_MINALIGN, some\ndebug flags should be disabled which depend on BYTES_PER_WORD alignment.\n\nThe disabling of these debug flags is not properly handled when\nBYTES_PER_WORD \u003c ARCH_SLAB_MEMALIGN \u003c cache_line_size()\n\nThis patch fixes that and also adds an alignment check to\ncache_alloc_debugcheck_after() when ARCH_SLAB_MINALIGN is used.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@mvista.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\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": "cace673d376d97b0c66ffa0a49b8d588a696d5d2",
      "tree": "c85c2ad65ad10132f00b484e91c8bfcd6e3f1afc",
      "parents": [
        "39dde65c9940c97fcd178a3d2b1c57ed8b7b68aa"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Wed Dec 06 20:32:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] htlb forget rss with pt sharing\n\nImprecise RSS accounting is an irritating ill effect with pt sharing.  After\nconsulted with several VM experts, I have tried various methods to solve that\nproblem: (1) iterate through all mm_structs that share the PT and increment\ncount; (2) keep RSS count in page table structure and then sum them up at\nreporting time.  None of the above methods yield any satisfactory\nimplementation.\n\nSince process RSS accounting is pure information only, I propose we don\u0027t\ncount them at all for hugetlb page.  rlimit has such field, though there is\nabsolutely no enforcement on limiting that resource.  One other method is to\naccount all RSS at hugetlb mmap time regardless they are faulted or not.  I\nopt for the simplicity of no accounting at all.\n\nHugetlb page are special, they are reserved up front in global reservation\npool and is not reclaimable.  From physical memory resource point of view, it\nis already consumed regardless whether there are users using them.\n\nIf the concern is that RSS can be used to control resource allocation, we\nalready can specify hugetlb fs size limit and sysadmin can enforce that at\nmount time.  Combined with the two points mentioned above, I fail to see if\nthere is anything got affected because of this patch.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Dave McCracken \u003cdmccr@us.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39dde65c9940c97fcd178a3d2b1c57ed8b7b68aa",
      "tree": "750818d68ac7381f80fec31491e1d1c78df4b9f6",
      "parents": [
        "e1dbeda60a7ea9e82a908d93c07308d104d50d79"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Wed Dec 06 20:32:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] shared page table for hugetlb page\n\nFollowing up with the work on shared page table done by Dave McCracken.  This\nset of patch target shared page table for hugetlb memory only.\n\nThe shared page table is particular useful in the situation of large number of\nindependent processes sharing large shared memory segments.  In the normal\npage case, the amount of memory saved from process\u0027 page table is quite\nsignificant.  For hugetlb, the saving on page table memory is not the primary\nobjective (as hugetlb itself already cuts down page table overhead\nsignificantly), instead, the purpose of using shared page table on hugetlb is\nto allow faster TLB refill and smaller cache pollution upon TLB miss.\n\nWith PT sharing, pte entries are shared among hundreds of processes, the cache\nconsumption used by all the page table is smaller and in return, application\ngets much higher cache hit ratio.  One other effect is that cache hit ratio\nwith hardware page walker hitting on pte in cache will be higher and this\nhelps to reduce tlb miss latency.  These two effects contribute to higher\napplication performance.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Dave McCracken \u003cdmccr@us.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e1dbeda60a7ea9e82a908d93c07308d104d50d79",
      "tree": "f83d342064a72336bf37fb6bb8bdf5fc9fc47c10",
      "parents": [
        "cc102509074bba0316f2b5deebd7ef4447da295e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Dec 06 20:32:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] balance_pdgat() cleanup\n\nDespaghettify balance_pdgat() a bit.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cc102509074bba0316f2b5deebd7ef4447da295e",
      "tree": "44ac5fc0c0dd7a24e8925e680a03361f4722a5a6",
      "parents": [
        "7602bdf2fd14a40dd9b104e516fdc05e1bd17952"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Dec 06 20:32:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:21 2006 -0800"
      },
      "message": "[PATCH] mm: add arch_alloc_page\n\nAdd an arch_alloc_page to match arch_free_page.\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"
    }
  ],
  "next": "7602bdf2fd14a40dd9b104e516fdc05e1bd17952"
}
