)]}'
{
  "log": [
    {
      "commit": "f9dcf192ed527fbf2f3a8a3574006d1ae855100b",
      "tree": "c46b06aaada10004ad1c1f25092f2fa76161e2c1",
      "parents": [
        "9a2ffd168ef8ec3705060ffb21d6dcb20eeb9506"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:46 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:50 2011 -0400"
      },
      "message": "msi-laptop: pr_\u003clevel\u003e neatening\n\nJust making it a bit more like other logging message uses.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "9a2ffd168ef8ec3705060ffb21d6dcb20eeb9506",
      "tree": "04e236286c6b4d549c34fc7cf26f5a87f12595c2",
      "parents": [
        "4686f6df69c5bca5ea795e01048d32f6eed07ba7"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:45 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:50 2011 -0400"
      },
      "message": "intel_pmic_gpio: Convert printks to pr_\u003clevel\u003e\n\nAdd #define pr_fmt(fmt) \"%s: \" fmt, __func__\nto prefix function name to each output message.\nConvert printks to pr_\u003clevel\u003e.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "4686f6df69c5bca5ea795e01048d32f6eed07ba7",
      "tree": "13fd158f986b3ac2944d4055eb83064db9ac5456",
      "parents": [
        "9ab23989d3e774f4545c83eeab0137e35f7115be"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:44 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:49 2011 -0400"
      },
      "message": "intel_menlow: Add pr_fmt and use pr_\u003clevel\u003e\n\nAdd pr_fmt to prefix the logging messages.\nConvert printk to pr_\u003clevel\u003e.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "9ab23989d3e774f4545c83eeab0137e35f7115be",
      "tree": "8ae93dd1502b6c4170e8bbe7b5ffc962e1f1aad1",
      "parents": [
        "323623a717c7feec3f36099f4caa18b3319c5cca"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:43 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:49 2011 -0400"
      },
      "message": "ideapad-laptop: Add pr_fmt\n\nAdd pr_fmt to prefix logging messages.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "323623a717c7feec3f36099f4caa18b3319c5cca",
      "tree": "e2377ec8d9ecc41d6816741ed3ff1745c06f7d67",
      "parents": [
        "b5a4223c1ce5edbaae3db9494de8dcb2d08a755b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:42 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:49 2011 -0400"
      },
      "message": "ibm_rtl: Use pr_fmt and pr_\u003clevel\u003e\n\nRemove hard coded prefixes from logging messages.\nNeaten RTL_DEBUG macro and uses.\nConvert __FUNCTION__ to __func__.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "b5a4223c1ce5edbaae3db9494de8dcb2d08a755b",
      "tree": "f6d7a80c37a45d1bccc0add9c5e4c17c137b5361",
      "parents": [
        "611f5763fd0e38f896aa38346d4bc3f5c388b608"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:41 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:48 2011 -0400"
      },
      "message": "hp-wmi: Convert printks to pr_\u003clevel\u003e\n\nAdded pr_fmt and converted printks to pr_\u003clevel\u003e.\nRemoved now unused PREFIX and UNIMPL #defines.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "611f5763fd0e38f896aa38346d4bc3f5c388b608",
      "tree": "4723648711ba28168057eb96b563ff807cf633ee",
      "parents": [
        "77bad7c830e20085deba6a760ce85c13ecb12f4d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:40 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:48 2011 -0400"
      },
      "message": "hdaps: Convert printks to pr_\u003clevel\u003e\n\nAdded pr_fmt, converted printks and removed\nhard coded prefixes.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "77bad7c830e20085deba6a760ce85c13ecb12f4d",
      "tree": "6ea0c207fe5c4c101dfcfa671640adc37e4e2f75",
      "parents": [
        "22441ffeed17b94b28bd7c609f2cdb24d11e81f3"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:39 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:47 2011 -0400"
      },
      "message": "fujitsu-laptop: Convert printks to pr_\u003clevel\u003e\n\nAdded pr_fmt, converted printks and removed\nhard coded prefixes.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "22441ffeed17b94b28bd7c609f2cdb24d11e81f3",
      "tree": "0beabb0a9ef6a2564ce08ae88b15f6c6ee256277",
      "parents": [
        "eb8895241dfb6c26114928b186cc1810cbd57f1b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:38 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:47 2011 -0400"
      },
      "message": "eeepc: Use pr_warn\n\nJust a trivial pr_warning to pr_warn conversion\nwhile adding a few missing newlines.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "eb8895241dfb6c26114928b186cc1810cbd57f1b",
      "tree": "86c80a9b2719b35794be580cc285fc18dba6a47f",
      "parents": [
        "b4a4bc0bd1328b587a905e346d8494f9b9423cc5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:37 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:47 2011 -0400"
      },
      "message": "dell: Convert printks to pr_\u003clevel\u003e\n\nAdd pr_fmt.\nRemove hard coded prefixes and use pr_\u003clevel\u003e.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "b4a4bc0bd1328b587a905e346d8494f9b9423cc5",
      "tree": "917e91f5f25f87bb2e40e1e0b29b6574f250b886",
      "parents": [
        "5ad77dcfb49a85715bcb9174a133cba140eda1bc"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:36 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:46 2011 -0400"
      },
      "message": "compal-laptop: Convert printks to pr_\u003clevel\u003e\n\nAdd pr_fmt.\nConvert printks to pr_\u003clevel\u003e removing DRIVER_NAME prefix.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "5ad77dcfb49a85715bcb9174a133cba140eda1bc",
      "tree": "e32c0ce7a6fa42d35268a93a291a39faa5165a07",
      "parents": [
        "249c720d88fa325522cb763dda09f8c9e8e964cb"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:35 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:46 2011 -0400"
      },
      "message": "asus: Add pr_fmt and convert printks to pr_\u003clevel\u003e\n\nAdd pr_fmt, prefixes each log message.\nConvert printks to pr_\u003clevel\u003e.\nConvert pr_warning to pr_warn.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "249c720d88fa325522cb763dda09f8c9e8e964cb",
      "tree": "a48f3da9f4190e7175a7871944693f864c5f275c",
      "parents": [
        "3a35125f97be0658305c9509c51077959c19b244"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:34 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:45 2011 -0400"
      },
      "message": "acer-wmi: pr_\u003clevel\u003e cleanups\n\nConvert pr_warning to pr_warn.\nAdd some missing newlines to pr_\u003clevel\u003e uses.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "3a35125f97be0658305c9509c51077959c19b244",
      "tree": "98f6f2f10b83a72b2cd86ff3e78b837daeb951cc",
      "parents": [
        "39ddf3bf6463bc86041e806b43e014d50a144aa4"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:33 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:45 2011 -0400"
      },
      "message": "ibm_rtl: Remove warnings from casts of pointer to int\n\nJust print them as %p.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "39ddf3bf6463bc86041e806b43e014d50a144aa4",
      "tree": "99ad0be36fec4da3989b51d80b49fc1cc8ebc886",
      "parents": [
        "dc7acbb2518f250050179c8581a972df3b6a24f1"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Mar 29 15:21:32 2011 -0700"
      },
      "committer": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Fri May 27 12:35:45 2011 -0400"
      },
      "message": "asus-wmi: Remove __init from asus_wmi_platform_init\n\nIt\u0027s used by a non-init function.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\n"
    },
    {
      "commit": "dc7acbb2518f250050179c8581a972df3b6a24f1",
      "tree": "bc14a36d5cfe1a1aa0d9a2a18ea6f19ad88a8958",
      "parents": [
        "f01e1af445fac107e91d62a2d59dd535f633810b",
        "4bf0ff24e371ce71521ccb21513203facfd8491f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 19:01:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 19:01:15 2011 -0700"
      },
      "message": "Merge branch \u0027upstream/tidy-xen-mmu-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen\n\n* \u0027upstream/tidy-xen-mmu-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen:\n  xen: fix compile without CONFIG_XEN_DEBUG_FS\n  Use arbitrary_virt_to_machine() to deal with ioremapped pud updates.\n  Use arbitrary_virt_to_machine() to deal with ioremapped pmd updates.\n  xen/mmu: remove all ad-hoc stats stuff\n  xen: use normal virt_to_machine for ptes\n  xen: make a pile of mmu pvop functions static\n  vmalloc: remove vmalloc_sync_all() from alloc_vm_area()\n  xen: condense everything onto xen_set_pte\n  xen: use mmu_update for xen_set_pte_at()\n  xen: drop all the special iomap pte paths.\n"
    },
    {
      "commit": "f01e1af445fac107e91d62a2d59dd535f633810b",
      "tree": "f5da7e4162f0a6f4bb50e4cb41f6a06c672f66b0",
      "parents": [
        "bc9bc72e2f9bb07384c00604d1a40d0b5f62be6c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 24 13:48:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 18:13:57 2011 -0700"
      },
      "message": "selinux: don\u0027t pass in NULL avd to avc_has_perm_noaudit\n\nRight now security_get_user_sids() will pass in a NULL avd pointer to\navc_has_perm_noaudit(), which then forces that function to have a dummy\nentry for that case and just generally test it.\n\nDon\u0027t do it.  The normal callers all pass a real avd pointer, and this\nhelper function is incredibly hot.  So don\u0027t make avc_has_perm_noaudit()\ndo conditional stuff that isn\u0027t needed for the common case.\n\nThis also avoids some duplicated stack space.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc9bc72e2f9bb07384c00604d1a40d0b5f62be6c",
      "tree": "99fc71a5d5889445fb39279d7ff3f0d66c1cca0d",
      "parents": [
        "968d803c98410910fbadca031b6a873d4bc12dd5",
        "d7f2ff6718efa155fd92e481a5960496d084c63f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:27:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:27:35 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus:\n  Squashfs: update email address\n  Squashfs: add extra sanity checks at mount time\n  Squashfs: add sanity checks to fragment reading at mount time\n  Squashfs: add sanity checks to lookup table reading at mount time\n  Squashfs: add sanity checks to id reading at mount time\n  Squashfs: add sanity checks to xattr reading at mount time\n  Squashfs: reverse order of filesystem table reading\n  Squashfs: move table allocation into squashfs_read_table()\n"
    },
    {
      "commit": "968d803c98410910fbadca031b6a873d4bc12dd5",
      "tree": "656b5b3e4c3eb806244b1d7f34a68ba2275f53ed",
      "parents": [
        "802caabbededeecbe433bcdb8a8ee0721836f7db"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:39 2011 -0700"
      },
      "message": "m68knommu: use generic find_next_bit_le()\n\nThe implementation of find_next_bit_le() on m68knommu is identical with\nthe generic implementation of find_next_bit_le().\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "802caabbededeecbe433bcdb8a8ee0721836f7db",
      "tree": "7b9508b62710187e997cbfe4ce3006383054e34a",
      "parents": [
        "04b18ff9ca69545a2447462a65c7ba5373e23f69"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "s390: use asm-generic/bitops/le.h\n\nThe previous style change enables to use asm-generic/bitops/le.h on s390.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04b18ff9ca69545a2447462a65c7ba5373e23f69",
      "tree": "750ded98da86a30730b77d195e94bf6d271ffe99",
      "parents": [
        "63e424c84429903c92a0f1e9654c31ccaf6694d0"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "arm: use asm-generic/bitops/le.h\n\nThe previous style change enables to use asm-generic/bitops/le.h on arm.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63e424c84429903c92a0f1e9654c31ccaf6694d0",
      "tree": "7a5dbe2587176f3552a71aa18d4cc006bc05261b",
      "parents": [
        "19de85ef574c3a2182e3ccad9581805052f14946"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "arch: remove CONFIG_GENERIC_FIND_{NEXT_BIT,BIT_LE,LAST_BIT}\n\nBy the previous style change, CONFIG_GENERIC_FIND_NEXT_BIT,\nCONFIG_GENERIC_FIND_BIT_LE, and CONFIG_GENERIC_FIND_LAST_BIT are not used\nto test for existence of find bitops anymore.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19de85ef574c3a2182e3ccad9581805052f14946",
      "tree": "98212bc122ac55807e562fd1ae6d0c5f0f2564d0",
      "parents": [
        "a2812e178321132811a53f7be40fe7e9bbffd9e0"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "bitops: add #ifndef for each of find bitops\n\nThe style that we normally use in asm-generic is to test the macro itself\nfor existence, so in asm-generic, do:\n\n\t#ifndef find_next_zero_bit_le\n\textern unsigned long find_next_zero_bit_le(const void *addr,\n\t\tunsigned long size, unsigned long offset);\n\t#endif\n\nand in the architectures, write\n\n\tstatic inline unsigned long find_next_zero_bit_le(const void *addr,\n\t\tunsigned long size, unsigned long offset)\n\t#define find_next_zero_bit_le find_next_zero_bit_le\n\nThis adds the #ifndef for each of the find bitops in the generic header\nand source files.\n\nSuggested-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a2812e178321132811a53f7be40fe7e9bbffd9e0",
      "tree": "5e1ae6d683d964cce8b4f107d8032522ac69b372",
      "parents": [
        "e0819410dba141338ebf6ab1057c1863be6247ab"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "arch: add #define for each of optimized find bitops\n\nThe style that we normally use in asm-generic is to test the macro itself\nfor existence, so in asm-generic, do:\n\n\t#ifndef find_next_zero_bit_le\n\textern unsigned long find_next_zero_bit_le(const void *addr,\n\t\tunsigned long size, unsigned long offset);\n\t#endif\n\nand in the architectures, write\n\n\tstatic inline unsigned long find_next_zero_bit_le(const void *addr,\n\t\tunsigned long size, unsigned long offset)\n\t#define find_next_zero_bit_le find_next_zero_bit_le\n\nThis adds the #define for each of the optimized find bitops in the\narchitectures.\n\nSuggested-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0819410dba141338ebf6ab1057c1863be6247ab",
      "tree": "e8c744ce78d0c4333b976be5be8bafcdda88996c",
      "parents": [
        "275ac74629c4d8ec430d7edecb16d936f46a47c5"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Thu May 26 16:26:05 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "m68knommu: fix build error due to the lack of find_next_bit_le()\n\nm68knommu can\u0027t build ext4, udf, and ocfs2 due to the lack of\nfind_next_bit_le().\n\nThis implements find_next_bit_le() on m68knommu by duplicating the generic\nfind_next_bit_le() in lib/find_next_bit.c.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "275ac74629c4d8ec430d7edecb16d936f46a47c5",
      "tree": "4b1afa61ec2547d10f07084d9c33fd96d28350a5",
      "parents": [
        "963bb101010169b9bb32b5c21af785e2f9abdaf3"
      ],
      "author": {
        "name": "Clifton Barnes",
        "email": "cabarnes@indesign-llc.com",
        "time": "Thu May 26 16:26:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "w1: add Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC support\n\nAdd support for the Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC.\n\nIt was suggested to combine this functionality with the current ds2782\ndriver.  Unfortunately, I\u0027m unable to commit the time to refactoring this\ndriver to that extent and I don\u0027t have a platform with the ds2782 part to\nvalidate that there are no regression issues by adding this functionality.\n\n[akpm@linux-foundation.org: use min_t()]\nSigned-off-by: Clifton Barnes \u003ccabarnes@indesign-llc.com\u003e\nTested-by: Haojian Zhuang \u003chaojian.zhuang@gmail.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: Ryan Mallon \u003cryan@bluewatersys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "963bb101010169b9bb32b5c21af785e2f9abdaf3",
      "tree": "8e5d4cfae208bf5ac1044994291e7cde9570362a",
      "parents": [
        "26a6afb917a8e3eb603358be1238a69e8a16d0ee"
      ],
      "author": {
        "name": "David Fries",
        "email": "David@Fries.net",
        "time": "Thu May 26 16:26:03 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "w1: have netlink search update kernel list\n\nReorganize so the netlink connector one wire search command will update\nthe kernel list of detected slave devices.  Otherwise, a newly detected\ndevice is unusable because unless it\u0027s in the kernel list of known devices\nany commands will result in ENODEV status.\n\nSigned-off-by: David Fries \u003cDavid@Fries.net\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26a6afb917a8e3eb603358be1238a69e8a16d0ee",
      "tree": "54632a0485849b0295af922aeeabe19175615edf",
      "parents": [
        "89610274bd43edc68c66ff7cf58e05debd519a5e"
      ],
      "author": {
        "name": "Jean-François Dagenais",
        "email": "dagenaisj@sonatest.com",
        "time": "Thu May 26 16:26:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "w1: complete the 1-wire (w1) ds1wm driver search algorithm\n\nThis adds multi-slave support of the w1 bus for the ds1wm Synthesizable\n1-Wire Bus Master.  Also many fixes and tweaks based on the rev3 of the\ndatasheet http://datasheets.maxim-ic.com/en/ds/DS1WM.pdf\n\nSigned-off-by: Jean-François Dagenais \u003cdagenaisj@sonatest.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: Szabolcs Gyurko \u003cszabolcs.gyurko@tlt.hu\u003e\nCc: Matt Reimer \u003cmreimer@vpop.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89610274bd43edc68c66ff7cf58e05debd519a5e",
      "tree": "67531694ae20a3e8eff21b458df3ac8485af6e74",
      "parents": [
        "67dfd54c2d83a76a5756760f7fee0c8cfac52b1c"
      ],
      "author": {
        "name": "Jean-François Dagenais",
        "email": "dagenaisj@sonatest.com",
        "time": "Thu May 26 16:26:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "w1: add 1-wire (w1) DS2408 8-Channel Addressable Switch support\n\nThis DS2408 w1 slave driver is not complete for all the features of the\nchip, but its sufficient if you use it as a simple IO expander.\n\n[randy.dunlap@oracle.com: fix w1_ds2408.c printk formats]\nSigned-off-by: Jean-François Dagenais \u003cdagenaisj@sonatest.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: Szabolcs Gyurko \u003cszabolcs.gyurko@tlt.hu\u003e\nCc: Matt Reimer \u003cmreimer@vpop.net\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67dfd54c2d83a76a5756760f7fee0c8cfac52b1c",
      "tree": "67f60d8bf1fcfd64106e419c1de3cd6e5618dd1d",
      "parents": [
        "6f7bd76f05eb2bfbb48d58c0408a50a7e16b2423"
      ],
      "author": {
        "name": "Jean-François Dagenais",
        "email": "dagenaisj@sonatest.com",
        "time": "Thu May 26 16:26:01 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:38 2011 -0700"
      },
      "message": "w1: add 1-wire (w1) reset and resume command API support\n\nThe first patch adds generic functionnality to w1_io for Resume Command\n[A5h] lots of slaves support.  I found it useful for multi-commands/reset\nworkflows with the same slave on a multi-slave bus.\n\nThis DS2408 w1 slave driver is not complete for all the features of the\nchip, but its sufficient if you use it as a simple IO expander.  Enjoy!\n\nThe ds1wm had Kconfig dependencies towards ARM \u0026\u0026 HAVE_CLK.  I took them\nout since I was using the ds1wm on an x86_64 platform (ds1wm in a FPGA\nthrough pcie) and found them irrelevant.\n\nThe clock freq/divisors at the top of ds1wm.c did not have the MSB set to\n1.  This bit is CLK_EN which turns the whole prescaler and dividers on.\nThe driver never mentionned this bit either, so I just included this bit\nright in the table entries.  I also took the liberty to add a couple of\nentries to the table.  The spec doesn\u0027t explicitely mentions these\npossibilities but the description and examination of the core shows the\nprescalers \u0026 dividers can be used for more than the table explicitely\nshows.  The table I enlarged still doesn\u0027t cover all possibilities, but\nit\u0027s a good start.\n\nI also made a few tweaks to a couple of the read and write algorithms\nwhich made sense while I had my head very deep in the ds1wm documentation.\n We stressed it a lot with 10+ slaves on the bus, many ds2408, ds2431 and\nds2433 at the same time doing extensive interaction.  It proved quite\nstable in our production environment.\n\nThis patch:\n\nAdd generic functionnality to w1_io for Resume Command [A5h] lots of\nslaves support.\n\nSigned-off-by: Jean-François Dagenais \u003cdagenaisj@sonatest.com\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: Szabolcs Gyurko \u003cszabolcs.gyurko@tlt.hu\u003e\nCc: Matt Reimer \u003cmreimer@vpop.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f7bd76f05eb2bfbb48d58c0408a50a7e16b2423",
      "tree": "a6a5c66d200e112cc629b392eafbaa026e1c57bf",
      "parents": [
        "d98808a253f209465ed9f415c565f4c294a213b8"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Thu May 26 16:26:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "kernel/profile.c: remove some duplicate code from profile_hits()\n\nprofile_hits() has a common check for prof_on and prof_buffer regardless\nof SMP or !SMP.  So, remove some duplicate code by splitting profile_hits\ninto two.\n\n[akpm@linux-foundation.org: make do_profile_hits static]\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d98808a253f209465ed9f415c565f4c294a213b8",
      "tree": "4d60da0dc3a2ad367edbb2c3c51c352bce7da918",
      "parents": [
        "e2e77098764636456ba7092a8b3b3b34b2a8e8d8"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu May 26 16:25:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "drivers/char/ppdev.c: put gotten port value\n\nparport_find_number() calls parport_get_port() on its result, so there\nshould be a corresponding call to parport_put_port() before dropping the\nreference.  Similar code is found in the function register_device() in the\nsame file.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n  // \u003csmpl\u003e\n  @exists@\n  local idexpression struct parport * x;\n  expression ra,rr;\n  statement S1,S2;\n  @@\n\n  x \u003d parport_find_number(...)\n  ... when !\u003d x \u003d rr\n      when any\n      when !\u003d parport_put_port(x,...)\n      when !\u003d if (...) { ... parport_put_port(x,...) ...}\n  (\n  if(\u003c+...x...+\u003e) S1 else S2\n  |\n  if(...) { ... when !\u003d x \u003d ra\n       when forall\n       when !\u003d parport_put_port(x,...)\n  *return...;\n  }\n  )\n  // \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2e77098764636456ba7092a8b3b3b34b2a8e8d8",
      "tree": "58e2b06e61326b05c8850bb196eaad071903df0b",
      "parents": [
        "26498e89e83c62cffcb8836a2ac2c5b795d84258"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Thu May 26 16:25:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "edac,rcu: use synchronize_rcu() instead of call_rcu()+rcu_barrier()\n\nsynchronize_rcu() does the stuff as needed.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Doug Thompson \u003cdougthompson@xmission.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26498e89e83c62cffcb8836a2ac2c5b795d84258",
      "tree": "7e2646ef612e47f2042682abcc365eafe8799a96",
      "parents": [
        "3eb8e74ec72736b9b9d728bad30484ec89c91dde"
      ],
      "author": {
        "name": "Sisir Koppaka",
        "email": "sisir.koppaka@gmail.com",
        "time": "Thu May 26 16:25:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "pid: fix typo in function description\n\nfinds is misspelt as finr. No functional change.\n\nSigned-off-by: Sisir Koppaka \u003csisir.koppaka@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3eb8e74ec72736b9b9d728bad30484ec89c91dde",
      "tree": "851f9165816e28ce43594a562698dd234e53d486",
      "parents": [
        "658c74cf3c98b1c9bc21e26731052db66251dfd8"
      ],
      "author": {
        "name": "Timo Warns",
        "email": "Warns@pre-sense.de",
        "time": "Thu May 26 16:25:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "fs/partitions/efi.c: corrupted GUID partition tables can cause kernel oops\n\nThe kernel automatically evaluates partition tables of storage devices.\nThe code for evaluating GUID partitions (in fs/partitions/efi.c) contains\na bug that causes a kernel oops on certain corrupted GUID partition\ntables.\n\nThis bug has security impacts, because it allows, for example, to\nprepare a storage device that crashes a kernel subsystem upon connecting\nthe device (e.g., a \"USB Stick of (Partial) Death\").\n\n\tcrc \u003d efi_crc32((const unsigned char *) (*gpt), le32_to_cpu((*gpt)-\u003eheader_size));\n\ncomputes a CRC32 checksum over gpt covering (*gpt)-\u003eheader_size bytes.\nThere is no validation of (*gpt)-\u003eheader_size before the efi_crc32 call.\n\nA corrupted partition table may have large values for (*gpt)-\u003eheader_size.\n In this case, the CRC32 computation access memory beyond the memory\nallocated for gpt, which may cause a kernel heap overflow.\n\nValidate value of GUID partition table header size.\n\n[akpm@linux-foundation.org: fix layout and indenting]\nSigned-off-by: Timo Warns \u003cwarns@pre-sense.de\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nCc: Eugene Teo \u003ceugeneteo@kernel.sg\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "658c74cf3c98b1c9bc21e26731052db66251dfd8",
      "tree": "9fecd1f438aa8fec724bf4ff2d8927c322da7f13",
      "parents": [
        "074127367a503de0168e2ca5d0b36a6f761f026a"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Thu May 26 16:25:56 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "drivers/char/mspec.c: use {k,v}zalloc to allocate memory\n\nLet memory allocator initialize the allocated memory as null, thus remove\nthe use of memset.\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "074127367a503de0168e2ca5d0b36a6f761f026a",
      "tree": "7f6b82c412c12ac977e06c922a3a43c8192d50c3",
      "parents": [
        "997c136f518c5debd63847e78e2a8694f56dcf90"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu May 26 16:25:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "ipmi: convert to seq_file interface\n\nThe -\u003eread_proc interface is going away, convert to seq_file.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc:Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "997c136f518c5debd63847e78e2a8694f56dcf90",
      "tree": "ac2ff48901be3e6834757675dcc177732e034a9f",
      "parents": [
        "98bc93e505c03403479c6669c4ff97301cee6199"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olaf@aepfle.de",
        "time": "Thu May 26 16:25:54 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "fs/proc/vmcore.c: add hook to read_from_oldmem() to check for non-ram pages\n\nThe balloon driver in a Xen guest frees guest pages and marks them as\nmmio.  When the kernel crashes and the crash kernel attempts to read the\noldmem via /proc/vmcore a read from ballooned pages will generate 100%\nload in dom0 because Xen asks qemu-dm for the page content.  Since the\nreads come in as 8byte requests each ballooned page is tried 512 times.\n\nWith this change a hook can be registered which checks wether the given\npfn is really ram.  The hook has to return a value \u003e 0 for ram pages, a\nvalue \u003c 0 on error (because the hypercall is not known) and 0 for non-ram\npages.\n\nThis will reduce the time to read /proc/vmcore.  Without this change a\n512M guest with 128M crashkernel region needs 200 seconds to read it, with\nthis change it takes just 2 seconds.\n\nSigned-off-by: Olaf Hering \u003colaf@aepfle.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "98bc93e505c03403479c6669c4ff97301cee6199",
      "tree": "0b6bf39cd6107d536b55fd245b9905cb5baa4e74",
      "parents": [
        "30cd8903913dac7b0918807cac46be3ecde5a5a7"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu May 26 16:25:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "proc: fix pagemap_read() error case\n\nCurrently, pagemap_read() has three error and/or corner case handling\nmistake.\n\n (1) If ppos parameter is wrong, mm refcount will be leak.\n (2) If count parameter is 0, mm refcount will be leak too.\n (3) If the current task is sleeping in kmalloc() and the system\n     is out of memory and oom-killer kill the proc associated task,\n     mm_refcount prevent the task free its memory. then system may\n     hang up.\n\n\u003cQuote Hugh\u0027s explain why we shold call kmalloc() before get_mm()\u003e\n\n  check_mem_permission gets a reference to the mm.  If we\n  __get_free_page after check_mem_permission, imagine what happens if the\n  system is out of memory, and the mm we\u0027re looking at is selected for\n  killing by the OOM killer: while we wait in __get_free_page for more\n  memory, no memory is freed from the selected mm because it cannot reach\n  exit_mmap while we hold that reference.\n\nThis patch fixes the above three.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Jovi Zhang \u003cbookjovi@gmail.com\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Stephen Wilson \u003cwilsons@start.ca\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30cd8903913dac7b0918807cac46be3ecde5a5a7",
      "tree": "64022195d9a384c11b93a4b1299aa944b8293deb",
      "parents": [
        "a4dbf0ec2aa3e8aca6e63f598095750c232d50f1"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu May 26 16:25:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "proc: put check_mem_permission after __get_free_page in mem_write\n\nIt whould be better if put check_mem_permission after __get_free_page in\nmem_write, to be same as function mem_read.\n\nHugh Dickins explained the reason.\n\n    check_mem_permission gets a reference to the mm.  If we __get_free_page\n    after check_mem_permission, imagine what happens if the system is out\n    of memory, and the mm we\u0027re looking at is selected for killing by the\n    OOM killer: while we wait in __get_free_page for more memory, no memory\n    is freed from the selected mm because it cannot reach exit_mmap while\n    we hold that reference.\n\nReported-by: Jovi Zhang \u003cbookjovi@gmail.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nReviewed-by: Stephen Wilson \u003cwilsons@start.ca\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4dbf0ec2aa3e8aca6e63f598095750c232d50f1",
      "tree": "38ceee9851536b3f5969d642afb9614fba826f8e",
      "parents": [
        "e130aa70f438855b4a0e13a5249951da001798d4"
      ],
      "author": {
        "name": "Yuanhan Liu",
        "email": "yuanhan.liu@linux.intel.com",
        "time": "Thu May 26 16:25:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:37 2011 -0700"
      },
      "message": "proc/stat: use defined macro KMALLOC_MAX_SIZE\n\nThere is a macro for the max size kmalloc can allocate, so use it instead\nof a hardcoded number.\n\nSigned-off-by: Yuanhan Liu \u003cyuanhan.liu@linux.intel.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e130aa70f438855b4a0e13a5249951da001798d4",
      "tree": "12d661a9779bc764d4af89e1c8da4d190ba0db84",
      "parents": [
        "0a8cb8e34149251ad1f280fe099a4f971554639a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "proc: constify status array\n\nNo need for this local array to be writable, so mark it const.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a8cb8e34149251ad1f280fe099a4f971554639a",
      "tree": "9b99f0b9d7366d9049760fd06462b14b0e14a061",
      "parents": [
        "57cc083ad9e1bfeeb4a0ee831e7bb008c8865bf0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu May 26 16:25:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "fs/proc: convert to kstrtoX()\n\nConvert fs/proc/ from strict_strto*() to kstrto*() functions.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57cc083ad9e1bfeeb4a0ee831e7bb008c8865bf0",
      "tree": "03b491fd20b4ca3e58354b15067f6961f32a016b",
      "parents": [
        "3864601387cf4196371e3c1897fdffa5228296f9"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Thu May 26 16:25:46 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "coredump: add support for exe_file in core name\n\nNow, exe_file is not proc FS dependent, so we can use it to name core\nfile.  So we add %E pattern for core file name cration which extract path\nfrom mm_struct-\u003eexe_file.  Then it converts slashes to exclamation marks\nand pastes the result to the core file name itself.\n\nThis is useful for environments where binary names are longer than 16\ncharacter (the current-\u003ecomm limitation).  Also where there are binaries\nwith same name but in a different path.  Further in case the binery itself\nchanges its current-\u003ecomm after exec.\n\nSo by doing (s/$/#/ -- # is treated as git comment):\n\n  $ sysctl kernel.core_pattern\u003d\u0027core.%p.%e.%E\u0027\n  $ ln /bin/cat cat45678901234567890\n  $ ./cat45678901234567890\n  ^Z\n  $ rm cat45678901234567890\n  $ fg\n  ^\\Quit (core dumped)\n  $ ls core*\n\nwe now get:\n\n  core.2434.cat456789012345.!root!cat45678901234567890 (deleted)\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nReviewed-by: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3864601387cf4196371e3c1897fdffa5228296f9",
      "tree": "1c517a970194f9e49ef98ef434c650771ffa31e1",
      "parents": [
        "63ab25ebbc50f74550bd8d164a34724b498f6fb9"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Thu May 26 16:25:46 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "mm: extract exe_file handling from procfs\n\nSetup and cleanup of mm_struct-\u003eexe_file is currently done in fs/proc/.\nThis was because exe_file was needed only for /proc/\u003cpid\u003e/exe.  Since we\nwill need the exe_file functionality also for core dumps (so core name can\ncontain full binary path), built this functionality always into the\nkernel.\n\nTo achieve that move that out of proc FS to the kernel/ where in fact it\nshould belong.  By doing that we can make dup_mm_exe_file static.  Also we\ncan drop linux/proc_fs.h inclusion in fs/exec.c and kernel/fork.c.\n\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63ab25ebbc50f74550bd8d164a34724b498f6fb9",
      "tree": "5753779e8ba6413174ee224286eabc18c2e9c6ee",
      "parents": [
        "3cea45c6ef459b776123a4855eba6dafd506f3ce"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "kgdbts: unify/generalize gdb breakpoint adjustment\n\nThe Blackfin arch, like the x86 arch, needs to adjust the PC manually\nafter a breakpoint is hit as normally this is handled by the remote gdb.\nHowever, rather than starting another arch ifdef mess, create a common\nGDB_ADJUSTS_BREAK_OFFSET define for any arch to opt-in via their kgdb.h.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\nCc: Sergei Shtylyov \u003csshtylyov@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3cea45c6ef459b776123a4855eba6dafd506f3ce",
      "tree": "d366b920546477ef50045f3c90c75efafeabfd46",
      "parents": [
        "c46dd6b48db02c1fa2f0644809605344660d3956"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "sh: convert to asm-generic ptrace.h\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Sergei Shtylyov \u003csshtylyov@mvista.com\u003e\nCc: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c46dd6b48db02c1fa2f0644809605344660d3956",
      "tree": "020a99daa99f49372e31852906ec0e60b2f8607a",
      "parents": [
        "82258c661a9175ec10018cf34090f88cf4da4982"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:43 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "x86: convert to asm-generic ptrace.h\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Sergei Shtylyov \u003csshtylyov@mvista.com\u003e\nCc: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "82258c661a9175ec10018cf34090f88cf4da4982",
      "tree": "da023af6861736d442efd5e0793eef1ccf56b8e0",
      "parents": [
        "edeafa74e69f275649624484cdd8b551c8839163"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:42 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "Blackfin: convert to asm-generic ptrace.h\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Sergei Shtylyov \u003csshtylyov@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "edeafa74e69f275649624484cdd8b551c8839163",
      "tree": "01a656c36d0f8d037acac7898737ce5b3043b607",
      "parents": [
        "456f998ec817ebfa254464be4f089542fa390645"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Thu May 26 16:25:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "asm-generic/ptrace.h: start a common low level ptrace helper\n\nThis is a series of low level ptrace unification steps to make it easier\nfor common code (like KGDB) to poke at register state.  This also avoids\nhaving to duplicate higher level operations for most ports which don\u0027t\nhave special needs for accessing things.\n\nThis patch:\n\nThis implements a bunch of helper funcs for poking the registers of a\nptrace structure.  Now common code should be able to portably update\nspecific registers (like kgdb updating the PC).\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Sergei Shtylyov \u003csshtylyov@mvista.com\u003e\nCc: Dongdong Deng \u003cdongdong.deng@windriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "456f998ec817ebfa254464be4f089542fa390645",
      "tree": "5976aa500638f0bbade1a672233cad71765b89b8",
      "parents": [
        "406eb0c9ba765eb066406fd5ce9d5e2b169a4d5a"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:38 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "memcg: add the pagefault count into memcg stats\n\nTwo new stats in per-memcg memory.stat which tracks the number of page\nfaults and number of major page faults.\n\n  \"pgfault\"\n  \"pgmajfault\"\n\nThey are different from \"pgpgin\"/\"pgpgout\" stat which count number of\npages charged/discharged to the cgroup and have no meaning of reading/\nwriting page to disk.\n\nIt is valuable to track the two stats for both measuring application\u0027s\nperformance as well as the efficiency of the kernel page reclaim path.\nCounting pagefaults per process is useful, but we also need the aggregated\nvalue since processes are monitored and controlled in cgroup basis in\nmemcg.\n\nFunctional test: check the total number of pgfault/pgmajfault of all\nmemcgs and compare with global vmstat value:\n\n  $ cat /proc/vmstat | grep fault\n  pgfault 1070751\n  pgmajfault 553\n\n  $ cat /dev/cgroup/memory.stat | grep fault\n  pgfault 1071138\n  pgmajfault 553\n  total_pgfault 1071142\n  total_pgmajfault 553\n\n  $ cat /dev/cgroup/A/memory.stat | grep fault\n  pgfault 199\n  pgmajfault 0\n  total_pgfault 199\n  total_pgmajfault 0\n\nPerformance test: run page fault test(pft) wit 16 thread on faulting in\n15G anon pages in 16G container.  There is no regression noticed on the\n\"flt/cpu/s\"\n\nSample output from pft:\n\n  TAG pft:anon-sys-default:\n    Gb  Thr CLine   User     System     Wall    flt/cpu/s fault/wsec\n    15   16   1     0.67s   233.41s    14.76s   16798.546 266356.260\n\n  +-------------------------------------------------------------------------+\n      N           Min           Max        Median           Avg        Stddev\n  x  10     16682.962     17344.027     16913.524     16928.812      166.5362\n  +  10     16695.568     16923.896     16820.604     16824.652     84.816568\n  No difference proven at 95.0% confidence\n\n[akpm@linux-foundation.org: fix build]\n[hughd@google.com: shmem fix]\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "406eb0c9ba765eb066406fd5ce9d5e2b169a4d5a",
      "tree": "71805cc1bcf4b1a4e7eb58a726d2ba21d913ba1a",
      "parents": [
        "1bac180bd29e03989f50054af97b53b8d37a364a"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:36 2011 -0700"
      },
      "message": "memcg: add memory.numastat api for numa statistics\n\nThe new API exports numa_maps per-memcg basis.  This is a piece of useful\ninformation where it exports per-memcg page distribution across real numa\nnodes.\n\nOne of the usecases is evaluating application performance by combining\nthis information w/ the cpu allocation to the application.\n\nThe output of the memory.numastat tries to follow w/ simiar format of\nnuma_maps like:\n\n  total\u003d\u003ctotal pages\u003e N0\u003d\u003cnode 0 pages\u003e N1\u003d\u003cnode 1 pages\u003e ...\n  file\u003d\u003ctotal file pages\u003e N0\u003d\u003cnode 0 pages\u003e N1\u003d\u003cnode 1 pages\u003e ...\n  anon\u003d\u003ctotal anon pages\u003e N0\u003d\u003cnode 0 pages\u003e N1\u003d\u003cnode 1 pages\u003e ...\n  unevictable\u003d\u003ctotal anon pages\u003e N0\u003d\u003cnode 0 pages\u003e N1\u003d\u003cnode 1 pages\u003e ...\n\nAnd we have per-node:\n\n  total \u003d file + anon + unevictable\n\n  $ cat /dev/cgroup/memory/memory.numa_stat\n  total\u003d250020 N0\u003d87620 N1\u003d52367 N2\u003d45298 N3\u003d64735\n  file\u003d225232 N0\u003d83402 N1\u003d46160 N2\u003d40522 N3\u003d55148\n  anon\u003d21053 N0\u003d3424 N1\u003d6207 N2\u003d4776 N3\u003d6646\n  unevictable\u003d3735 N0\u003d794 N1\u003d0 N2\u003d0 N3\u003d2941\n\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1bac180bd29e03989f50054af97b53b8d37a364a",
      "tree": "6797cb73a27c1e8b7d1ea79764356dc69486dad4",
      "parents": [
        "4fd14ebf6e3b66423dfac2bc9defda7b83ee07b3"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: rename mem_cgroup_zone_nr_pages() to mem_cgroup_zone_nr_lru_pages()\n\nThe caller of the function has been renamed to zone_nr_lru_pages(), and\nthis is just fixing up in the memcg code.  The current name is easily to\nbe mis-read as zone\u0027s total number of pages.\n\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4fd14ebf6e3b66423dfac2bc9defda7b83ee07b3",
      "tree": "38fb451bf2e480091bf88540139378b68cdd2494",
      "parents": [
        "246e87a9393448c20873bc5dee64be68ed559e24"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@cmpxchg.org",
        "time": "Thu May 26 16:25:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: remove unused retry signal from reclaim\n\nIf the memcg reclaim code detects the target memcg below its limit it\nexits and returns a guaranteed non-zero value so that the charge is\nretried.\n\nNowadays, the charge side checks the memcg limit itself and does not rely\non this non-zero return value trick.\n\nThis patch removes it.  The reclaim code will now always return the true\nnumber of pages it reclaimed on its own.\n\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Rik van Riel\u003criel@redhat.com\u003e\nAcked-by: Ying Han\u003cyinghan@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "246e87a9393448c20873bc5dee64be68ed559e24",
      "tree": "a17016142b267fcba2e3be9908f8138c8dcb3f3a",
      "parents": [
        "889976dbcb1218119fdd950fb7819084e37d7d37"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Thu May 26 16:25:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: fix get_scan_count() for small targets\n\nDuring memory reclaim we determine the number of pages to be scanned per\nzone as\n\n\t(anon + file) \u003e\u003e priority.\nAssume\n\tscan \u003d (anon + file) \u003e\u003e priority.\n\nIf scan \u003c SWAP_CLUSTER_MAX, the scan will be skipped for this time and\npriority gets higher.  This has some problems.\n\n  1. This increases priority as 1 without any scan.\n     To do scan in this priority, amount of pages should be larger than 512M.\n     If pages\u003e\u003epriority \u003c SWAP_CLUSTER_MAX, it\u0027s recorded and scan will be\n     batched, later. (But we lose 1 priority.)\n     If memory size is below 16M, pages \u003e\u003e priority is 0 and no scan in\n     DEF_PRIORITY forever.\n\n  2. If zone-\u003eall_unreclaimabe\u003d\u003dtrue, it\u0027s scanned only when priority\u003d\u003d0.\n     So, x86\u0027s ZONE_DMA will never be recoverred until the user of pages\n     frees memory by itself.\n\n  3. With memcg, the limit of memory can be small. When using small memcg,\n     it gets priority \u003c DEF_PRIORITY-2 very easily and need to call\n     wait_iff_congested().\n     For doing scan before priorty\u003d9, 64MB of memory should be used.\n\nThen, this patch tries to scan SWAP_CLUSTER_MAX of pages in force...when\n\n  1. the target is enough small.\n  2. it\u0027s kswapd or memcg reclaim.\n\nThen we can avoid rapid priority drop and may be able to recover\nall_unreclaimable in a small zones.  And this patch removes nr_saved_scan.\n This will allow scanning in this priority even when pages \u003e\u003e priority is\nvery small.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Ying Han \u003cyinghan@google.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "889976dbcb1218119fdd950fb7819084e37d7d37",
      "tree": "7508706ddb6bcbe0f673aca3744f30f281b17734",
      "parents": [
        "4e4c941c108eff10844d2b441d96dab44f32f424"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: reclaim memory from nodes in round-robin order\n\nPresently, memory cgroup\u0027s direct reclaim frees memory from the current\nnode.  But this has some troubles.  Usually when a set of threads works in\na cooperative way, they tend to operate on the same node.  So if they hit\nlimits under memcg they will reclaim memory from themselves, damaging the\nactive working set.\n\nFor example, assume 2 node system which has Node 0 and Node 1 and a memcg\nwhich has 1G limit.  After some work, file cache remains and the usages\nare\n\n   Node 0:  1M\n   Node 1:  998M.\n\nand run an application on Node 0, it will eat its foot before freeing\nunnecessary file caches.\n\nThis patch adds round-robin for NUMA and adds equal pressure to each node.\nWhen using cpuset\u0027s spread memory feature, this will work very well.\n\nBut yes, a better algorithm is needed.\n\n[akpm@linux-foundation.org: comment editing]\n[kamezawa.hiroyu@jp.fujitsu.com: fix time comparisons]\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e4c941c108eff10844d2b441d96dab44f32f424",
      "tree": "57f6fa52b9d2f6fb84a4f51cd2e1a1348a2acd69",
      "parents": [
        "6a5b18d2bd79795407bf65451a2013bf4dfb588b"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Thu May 26 16:25:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "MAINTAINERS: add mm/page_cgroup.c into memcg subsystem\n\nAFAICS mm/page_cgroup.c is for memcg subsystem, but it was directed only\nto generic cgroup maintainers.  Fix it.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a5b18d2bd79795407bf65451a2013bf4dfb588b",
      "tree": "0db53d8192c1beedf1628918feb91bec93e2537f",
      "parents": [
        "33278f7f0a9e5a9b29f59e07b7e3182d27769ac2"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Thu May 26 16:25:31 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: move page-freeing code out of lock\n\nMove page-freeing code out of swap_cgroup_mutex in the hope that it could\nreduce few of theoretical contentions between swapons and/or swapoffs.\n\nThis is just a cleanup, no functional changes.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33278f7f0a9e5a9b29f59e07b7e3182d27769ac2",
      "tree": "8de853c293856cc227d703ffaa0e12410efa1fcd",
      "parents": [
        "268433b8e54486b12478e94ba18587bcc7de4d57"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Thu May 26 16:25:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: fix off-by-one when calculating swap cgroup map length\n\nIt allocated one more page than necessary if @max_pages was a multiple of\nSC_PER_PAGE.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "268433b8e54486b12478e94ba18587bcc7de4d57",
      "tree": "02686a62751fbdd2ad3125a53952c09381d7ac72",
      "parents": [
        "39cc98f1f8aa949afeea89f424c7494b0785d7da"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Thu May 26 16:25:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: mark init_section_page_cgroup() properly\n\nCommit ca371c0d7e23 (\"memcg: fix page_cgroup fatal error in FLATMEM\")\nremoves call to alloc_bootmem() in the function so that it can be marked\nas __meminit to reduce memory usage when MEMORY_HOTPLUG\u003dn.\n\nAlso as the new helper function alloc_page_cgroup() is called only in the\nfunction, it should be marked too.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39cc98f1f8aa949afeea89f424c7494b0785d7da",
      "tree": "d16d69a1c2f1db6150642d47927d77615507e856",
      "parents": [
        "d149e3b25d7c5f33de9aa866303926fa53535aa7"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Thu May 26 16:25:28 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: remove pointless next_mz nullification in mem_cgroup_soft_limit_reclaim()\n\nnext_mz is assigned to NULL if __mem_cgroup_largest_soft_limit_node\nselects the same mz.  This doesn\u0027t make much sense as we assign to the\nvariable right in the next loop.\n\nCompiler will probably optimize this out but it is little bit confusing\nfor the code reading.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d149e3b25d7c5f33de9aa866303926fa53535aa7",
      "tree": "160c8c3136246921458c96ab8257381d702208aa",
      "parents": [
        "0ae5e89c60c9eb87da36a2614836bc434b0ec2ad"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: add the soft_limit reclaim in global direct reclaim.\n\nWe recently added the change in global background reclaim which counts the\nreturn value of soft_limit reclaim.  Now this patch adds the similar logic\non global direct reclaim.\n\nWe should skip scanning global LRU on shrink_zone if soft_limit reclaim\ndoes enough work.  This is the first step where we start with counting the\nnr_scanned and nr_reclaimed from soft_limit reclaim into global\nscan_control.\n\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ae5e89c60c9eb87da36a2614836bc434b0ec2ad",
      "tree": "0d509fd83ac7e7d2f52dfcbba769c43aeeb68b5f",
      "parents": [
        "f042e707ee671e4beb5389abeb9a1819a2cf5532"
      ],
      "author": {
        "name": "Ying Han",
        "email": "yinghan@google.com",
        "time": "Thu May 26 16:25:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:35 2011 -0700"
      },
      "message": "memcg: count the soft_limit reclaim in global background reclaim\n\nThe global kswapd scans per-zone LRU and reclaims pages regardless of the\ncgroup. It breaks memory isolation since one cgroup can end up reclaiming\npages from another cgroup. Instead we should rely on memcg-aware target\nreclaim including per-memcg kswapd and soft_limit hierarchical reclaim under\nmemory pressure.\n\nIn the global background reclaim, we do soft reclaim before scanning the\nper-zone LRU. However, the return value is ignored. This patch is the first\nstep to skip shrink_zone() if soft_limit reclaim does enough work.\n\nThis is part of the effort which tries to reduce reclaiming pages in global\nLRU in memcg. The per-memcg background reclaim patchset further enhances the\nper-cgroup targetting reclaim, which I should have V4 posted shortly.\n\nTry running multiple memory intensive workloads within seperate memcgs. Watch\nthe counters of soft_steal in memory.stat.\n\n  $ cat /dev/cgroup/A/memory.stat | grep \u0027soft\u0027\n  soft_steal 240000\n  soft_scan 240000\n  total_soft_steal 240000\n  total_soft_scan 240000\n\nThis patch:\n\nIn the global background reclaim, we do soft reclaim before scanning the\nper-zone LRU.  However, the return value is ignored.\n\nWe would like to skip shrink_zone() if soft_limit reclaim does enough\nwork.  Also, we need to make the memory pressure balanced across per-memcg\nzones, like the logic vm-core.  This patch is the first step where we\nstart with counting the nr_scanned and nr_reclaimed from soft_limit\nreclaim into the global scan_control.\n\nSigned-off-by: Ying Han \u003cyinghan@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nAcked-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f042e707ee671e4beb5389abeb9a1819a2cf5532",
      "tree": "53164f281453db20bc2978ed6828f01d919f50db",
      "parents": [
        "a77aea92010acf54ad785047234418d5d68772e2"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 26 16:25:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "mm: move enum vm_event_item into a standalone header file\n\nenums are problematic because they cannot be forward-declared:\n\n  akpm2:/home/akpm\u003e cat t.c\n\n  enum foo;\n\n  static inline void bar(enum foo f)\n  {\n  }\n  akpm2:/home/akpm\u003e gcc -c t.c\n  t.c:4: error: parameter 1 (\u0027f\u0027) has incomplete type\n\nSo move the enum\u0027s definition into a standalone header file which can be used\nwherever its definition is needed.\n\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a77aea92010acf54ad785047234418d5d68772e2",
      "tree": "c7cb57b62fd02bee2baceb79251923f7caec6139",
      "parents": [
        "d846687d7f84e45f23ecf3846dbb43312a1206dd"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "daniel.lezcano@free.fr",
        "time": "Thu May 26 16:25:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroup: remove the ns_cgroup\n\nThe ns_cgroup is an annoying cgroup at the namespace / cgroup frontier and\nleads to some problems:\n\n  * cgroup creation is out-of-control\n  * cgroup name can conflict when pids are looping\n  * it is not possible to have a single process handling a lot of\n    namespaces without falling in a exponential creation time\n  * we may want to create a namespace without creating a cgroup\n\n  The ns_cgroup was replaced by a compatibility flag \u0027clone_children\u0027,\n  where a newly created cgroup will copy the parent cgroup values.\n  The userspace has to manually create a cgroup and add a task to\n  the \u0027tasks\u0027 file.\n\nThis patch removes the ns_cgroup as suggested in the following thread:\n\nhttps://lists.linux-foundation.org/pipermail/containers/2009-June/018616.html\n\nThe \u0027cgroup_clone\u0027 function is removed because it is no longer used.\n\nThis is a userspace-visible change.  Commit 45531757b45c (\"cgroup: notify\nns_cgroup deprecated\") (merged into 2.6.27) caused the kernel to emit a\nprintk warning users that the feature is planned for removal.  Since that\ntime we have heard from XXX users who were affected by this.\n\nSigned-off-by: Daniel Lezcano \u003cdaniel.lezcano@free.fr\u003e\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d846687d7f84e45f23ecf3846dbb43312a1206dd",
      "tree": "5c19cf2e0e2faf288bb536f6878cddf11498ef3e",
      "parents": [
        "74a1166dfe1135dcc168d35fa5261aa7e087011b"
      ],
      "author": {
        "name": "Ben Blum",
        "email": "bblum@andrew.cmu.edu",
        "time": "Thu May 26 16:25:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroups: use flex_array in attach_proc\n\nConvert cgroup_attach_proc to use flex_array.\n\nThe cgroup_attach_proc implementation requires a pre-allocated array to\nstore task pointers to atomically move a thread-group, but asking for a\nmonolithic array with kmalloc() may be unreliable for very large groups.\nUsing flex_array provides the same functionality with less risk of\nfailure.\n\nThis is a post-patch for cgroup-procs-write.patch.\n\nSigned-off-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nReviewed-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74a1166dfe1135dcc168d35fa5261aa7e087011b",
      "tree": "a7add70f0344e2352b8d0d6beb10aef85c6585f7",
      "parents": [
        "f780bdb7c1c73009cb57adcf99ef50027d80bf3c"
      ],
      "author": {
        "name": "Ben Blum",
        "email": "bblum@andrew.cmu.edu",
        "time": "Thu May 26 16:25:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroups: make procs file writable\n\nMake procs file writable to move all threads by tgid at once.\n\nAdd functionality that enables users to move all threads in a threadgroup\nat once to a cgroup by writing the tgid to the \u0027cgroup.procs\u0027 file.  This\ncurrent implementation makes use of a per-threadgroup rwsem that\u0027s taken\nfor reading in the fork() path to prevent newly forking threads within the\nthreadgroup from \"escaping\" while the move is in progress.\n\nSigned-off-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nReviewed-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f780bdb7c1c73009cb57adcf99ef50027d80bf3c",
      "tree": "d15668ffcc40a2aaa31723b87cfda0b166f84d57",
      "parents": [
        "4714d1d32d97239fb5ae3e10521d3f133a899b66"
      ],
      "author": {
        "name": "Ben Blum",
        "email": "bblum@andrew.cmu.edu",
        "time": "Thu May 26 16:25:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroups: add per-thread subsystem callbacks\n\nAdd cgroup subsystem callbacks for per-thread attachment in atomic contexts\n\nAdd can_attach_task(), pre_attach(), and attach_task() as new callbacks\nfor cgroups\u0027s subsystem interface.  Unlike can_attach and attach, these\nare for per-thread operations, to be called potentially many times when\nattaching an entire threadgroup.\n\nAlso, the old \"bool threadgroup\" interface is removed, as replaced by\nthis.  All subsystems are modified for the new interface - of note is\ncpuset, which requires from/to nodemasks for attach to be globally scoped\n(though per-cpuset would work too) to persist from its pre_attach to\nattach_task and attach.\n\nThis is a pre-patch for cgroup-procs-writable.patch.\n\nSigned-off-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nReviewed-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4714d1d32d97239fb5ae3e10521d3f133a899b66",
      "tree": "fb50707cefc386bf4e87cac9661a38dcfe3192df",
      "parents": [
        "dcb3a08e69629ea65a3e9647da730bfaf670497d"
      ],
      "author": {
        "name": "Ben Blum",
        "email": "bblum@andrew.cmu.edu",
        "time": "Thu May 26 16:25:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "cgroups: read-write lock CLONE_THREAD forking per threadgroup\n\nAdds functionality to read/write lock CLONE_THREAD fork()ing per-threadgroup\n\nAdd an rwsem that lives in a threadgroup\u0027s signal_struct that\u0027s taken for\nreading in the fork path, under CONFIG_CGROUPS.  If another part of the\nkernel later wants to use such a locking mechanism, the CONFIG_CGROUPS\nifdefs should be changed to a higher-up flag that CGROUPS and the other\nsystem would both depend on.\n\nThis is a pre-patch for cgroup-procs-write.patch.\n\nSigned-off-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nReviewed-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dcb3a08e69629ea65a3e9647da730bfaf670497d",
      "tree": "da89f661c9e0b2ae3d1dabcc3e27dcf06d2ae8fa",
      "parents": [
        "02d54f092697b6046e466e447cc694b0e6ed45d0"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jslaby@suse.cz",
        "time": "Thu May 26 16:25:17 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "Documentation: configfs examples crash fix\n\nWhen configfs_register_subsystem() fails, we unregister too many\nsubsystems in configfs_example_init.  Decrement i by one to not unregister\nnon-registered subsystem.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "02d54f092697b6046e466e447cc694b0e6ed45d0",
      "tree": "cb18ecc6a8c7b0f49d5a22db4b944bbf7635465c",
      "parents": [
        "4ed960b14d3b5fd14f1d9eb02f6d7e398317627a"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Thu May 26 16:25:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "getdelays: show average CPU/IO/SWAP/RECLAIM delays\n\nI find it very handy to show the average delays in milliseconds.\n\nExample output (on 100 concurrent dd reading sparse files):\n\n  CPU             count     real total  virtual total    delay total  delay average\n                    986     3223509952     3207643301    38863410579         39.415ms\n  IO              count    delay total  delay average\n                      0              0              0ms\n  SWAP            count    delay total  delay average\n                      0              0              0ms\n  RECLAIM         count    delay total  delay average\n                   1059     5131834899              4ms\n  dd: read\u003d0, write\u003d0, cancelled_write\u003d0\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Mel Gorman \u003cmel@linux.vnet.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nReviewed-by: Satoru Moriya \u003csatoru.moriya@hds.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ed960b14d3b5fd14f1d9eb02f6d7e398317627a",
      "tree": "bcbe96919f4b19e2fd98366385aa41fba84699c4",
      "parents": [
        "fbdd91a6293f5e7fb1914966f5d244f72619641e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 26 16:25:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "Documentation/accounting/getdelays.c: handle sendto() failures\n\nFixes\n\n  Documentation/accounting/getdelays.c: In function `get_family_id\u0027:\n  Documentation/accounting/getdelays.c:172:14: warning: variable `rc\u0027 set but not used [-Wunused-but-set-variable]\n\nReported-by: \"Justin P. Mattock\" \u003cjustinmattock@gmail.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fbdd91a6293f5e7fb1914966f5d244f72619641e",
      "tree": "a022652bf869cf946efefd478ea58e257a206b3a",
      "parents": [
        "72eef0f3af410de2c85f236140ddea61b71cfc3e"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Thu May 26 16:25:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "Documentation/accounting/getdelays.c: fix unused var warning\n\nFixes\n\n  Documentation/accounting/getdelays.c: In function `main\u0027:\n  Documentation/accounting/getdelays.c:436:7: warning: variable `i\u0027 set but not used [-Wunused-but-set-variable]\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "72eef0f3af410de2c85f236140ddea61b71cfc3e",
      "tree": "e2ceccb88da76028c65c158609328786253cdee9",
      "parents": [
        "1d5827235de48e829d5d4a03c3688ef6f2b15562"
      ],
      "author": {
        "name": "Nikanth Karthikesan",
        "email": "knikanth@suse.de",
        "time": "Thu May 26 16:25:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:34 2011 -0700"
      },
      "message": "Documentation/atomic_ops.txt: avoid volatile in sample code\n\nAs declaring counter as volatile is discouraged, it is best not to use it\nin sample code as well.\n\nSigned-off-by: Nikanth Karthikesan \u003cknikanth@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d5827235de48e829d5d4a03c3688ef6f2b15562",
      "tree": "96d63baddd6fe6d764557f8be7d4f1e829059792",
      "parents": [
        "9796cc964daf7f18b4cd84c86975b3bc3804ca5a"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Thu May 26 16:25:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "ufs: fix truncated values handling 64 bit metadata\n\nOriginally i_lastfrag was 32 bits but then we added support for handling\n64 bit metadata and it became a 64 bit variable.  That was during 2007, in\n54fb996ac15c \"[PATCH] ufs2 write: block allocation update\".  Unfortunately\nthese casts got left behind so the value got truncated to 32 bit again.\n\n[akpm@linux-foundation.org: remove now-unneeded min_t/max_t casting]\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nCc: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9796cc964daf7f18b4cd84c86975b3bc3804ca5a",
      "tree": "32ca09c2374d13e07b95914c9d401f33436280b1",
      "parents": [
        "3d62b8f59bb8bd08d8e3df3ab3174aab2971d6e6"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "w.sang@pengutronix.de",
        "time": "Thu May 26 16:25:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "drivers/rtc/rtc-mxc.c: remove defines already included in rtc.h\n\n[akpm@linux-foundation.org: retain the code comments]\nSigned-off-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nCc: Vladimir Zapolskiy \u003cvzapolskiy@gmail.com\u003e\nCc: Alessandro Zummo \u003calessandro.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3d62b8f59bb8bd08d8e3df3ab3174aab2971d6e6",
      "tree": "05fac449e2b583a98b0ef4fcbd4176d08e2dac5a",
      "parents": [
        "0942a71e435f5198921e8f072540f208f0176542"
      ],
      "author": {
        "name": "Lars-Peter Clausen",
        "email": "lars@metafoo.de",
        "time": "Thu May 26 16:25:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "drivers/rtc/rtc-pcf50633.c: don\u0027t request update IRQ\n\nCommit 51ba60c5 (\"RTC: Cleanup rtc_class_ops-\u003eupdate_irq_enable()\")\nremoved the only user of the update IRQ, so there is no need to manage it\nany more.\n\nSigned-off-by: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Marcelo Roberto Jimenez \u003cmroberto@cpti.cetuc.puc-rio.br\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0942a71e435f5198921e8f072540f208f0176542",
      "tree": "a1d40dc3e84acccf48276d5a6fcfc5b469db84ff",
      "parents": [
        "c258f9a0aab09366070f3c9283070edead23d4cf"
      ],
      "author": {
        "name": "Rajeev Kumar",
        "email": "rajeev-dlh.kumar@st.com",
        "time": "Thu May 26 16:25:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "rtc: add support for spear rtc\n\nSigned-off-by: Rajeev Kumar \u003crajeev-dlh.kumar@st.com\u003e\nSigned-off-by: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c258f9a0aab09366070f3c9283070edead23d4cf",
      "tree": "c56ccd5534ab88e8e4cfc6c798a50ec20b5f32ea",
      "parents": [
        "74d34d4be60928c3504fdad9d67707a6e3244a80"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Thu May 26 16:25:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "drivers/rtc/rtc-mrst.c: use release_mem_region after request_mem_region\n\nThe memory allocated using request_mem_region should be released using\nrelease_mem_region, not release_region.\n\nThe semantic patch that fixes part of this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n  // \u003csmpl\u003e\n  @@\n  expression E1,E2,E3;\n  @@\n\n  request_mem_region(E1,E2,E3)\n  ...\n  ?- release_region(E1,E2)\n  + release_mem_region(E1,E2)\n  // \u003c/smpl\u003e\n\n[akpm@linux-foundation.org: use resource_size()]\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74d34d4be60928c3504fdad9d67707a6e3244a80",
      "tree": "4019642f3e6fe78cda4b692eab52f8b189b2af96",
      "parents": [
        "52365230eed7e291bbb2a015465cac48bcb3928f"
      ],
      "author": {
        "name": "Voss, Nikolaus",
        "email": "N.Voss@weinmann.de",
        "time": "Thu May 26 16:25:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "rtc: add basic support for ST M41T93 SPI RTC\n\nAdd basic support for ST m41t93 SPI RTCs.  Tested with factory-new and\nwith \"run-in\" species with and without backup batteries.\n\nSigned-off-by: Nikolaus Voss \u003cn.voss@weinmann.de\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52365230eed7e291bbb2a015465cac48bcb3928f",
      "tree": "4df1d85d83b2898b0ebdbd49514481ee3b3b8fb5",
      "parents": [
        "ae3551f9cae5727819d02398b588ac14ef0a9cce"
      ],
      "author": {
        "name": "Heiko Schocher",
        "email": "hs@denx.de",
        "time": "Thu May 26 16:25:05 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "rtc: add rv3029c2 RTC support\n\nAdd support for the Micro Crystal RV3029-C2 RTC chips.\n\nSigned-off-by: Heiko Schocher \u003chs@denx.de\u003e\nSigned-off-by: Gregory Hermant \u003cgregory.hermant@calao-systems.com\u003e\nCc: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae3551f9cae5727819d02398b588ac14ef0a9cce",
      "tree": "51f1da1007420faef6f242c38fe9db4b8b54092c",
      "parents": [
        "f77fbdf952d81ae20911edccea16693f9fb7c5a0"
      ],
      "author": {
        "name": "Mike Rapoport",
        "email": "mike@compulab.co.il",
        "time": "Thu May 26 16:25:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "rtc: add EM3027 rtc driver\n\nAdd support for EM Microelectronic EM3027 RTC chip.\n\nSigned-off-by: Mike Rapoport \u003cmike@compulab.co.il\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f77fbdf952d81ae20911edccea16693f9fb7c5a0",
      "tree": "2f66a9cf61b8174729c6fdf52ca06ac5b287830b",
      "parents": [
        "704f15ddb5fc2a7f25a12eb0913302d8ad9ffab3"
      ],
      "author": {
        "name": "Alexey Charkov",
        "email": "alchark@gmail.com",
        "time": "Thu May 26 16:25:03 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "rtc: add support for the RTC in VIA VT8500 and compatibles\n\nThis adds a driver for the RTC devices in VIA and WonderMedia\nSystems-on-Chip.  Alarm, 1Hz interrupts, reading and setting time are\nsupported.\n\nSigned-off-by: Alexey Charkov \u003calchark@gmail.com\u003e\nCc: Lars-Peter Clausen \u003clars@metafoo.de\u003e\nCc: Alexey Charkov \u003calchark@gmail.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "704f15ddb5fc2a7f25a12eb0913302d8ad9ffab3",
      "tree": "ef17a945288c333c345643325783f374e10a4020",
      "parents": [
        "5bf54a9758c230d9e957e7b4f3a41c226660dd49"
      ],
      "author": {
        "name": "Jesse Gross",
        "email": "jesse@nicira.com",
        "time": "Thu May 26 16:25:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "flex_array: avoid divisions when accessing elements\n\nOn most architectures division is an expensive operation and accessing an\nelement currently requires four of them.  This performance penalty\neffectively precludes flex arrays from being used on any kind of fast\npath.  However, two of these divisions can be handled at creation time and\nthe others can be replaced by a reciprocal divide, completely avoiding\nreal divisions on access.\n\n[eparis@redhat.com: rebase on top of changes to support 0 len elements]\n[eparis@redhat.com: initialize part_nr when array fits entirely in base]\nSigned-off-by: Jesse Gross \u003cjesse@nicira.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nCc: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5bf54a9758c230d9e957e7b4f3a41c226660dd49",
      "tree": "1b93c41b344f085224f06a53b26552cb6ef3c93b",
      "parents": [
        "1e806c50f4f36bb3aa9f6e43d9e4beb08a2d39d8"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu May 26 16:25:01 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "m32r: remove redundant declaration\n\nThey have no meaning.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e806c50f4f36bb3aa9f6e43d9e4beb08a2d39d8",
      "tree": "a4b3ffd7eaba902c46b59da6b29cf47cb9383802",
      "parents": [
        "937e26c0d1843c92750dac9bca1c972d33e73306"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu May 26 16:25:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:33 2011 -0700"
      },
      "message": "m32r: fix spin_lock_irqsave() misuse\n\nspin_lock_irqsave() requires unsigned long.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "937e26c0d1843c92750dac9bca1c972d33e73306",
      "tree": "aad9ae8c1f736a3acd56fbcc954cb1af7a50ea6e",
      "parents": [
        "ba7328b2d83090c2440b8d0baa6ccfc2ddf1bda6"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Thu May 26 16:24:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:32 2011 -0700"
      },
      "message": "m32r: convert cpumask api\n\nWe plan to remove cpus_xx() old cpumask APIs later.  Also, we plan to\nchange mm_cpu_mask() implementation, allocate only nr_cpu_ids, thus\n*mm_cpu_mask() is dangerous operation.\n\nThen, this patch convert them.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba7328b2d83090c2440b8d0baa6ccfc2ddf1bda6",
      "tree": "ff409350fb9b17b9bc9aab904f0df53b4835fe10",
      "parents": [
        "15f82d1b0b25185311f3b876e372d0d8e52a3c92"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 26 16:24:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:32 2011 -0700"
      },
      "message": "drivers/bcma/host_pci.c needs slab.h\n\nalpha allmodconfig:\n\n  drivers/bcma/host_pci.c: In function \u0027bcma_host_pci_probe\u0027:\n  drivers/bcma/host_pci.c:102: error: implicit declaration of function \u0027kzalloc\u0027\n  drivers/bcma/host_pci.c:102: warning: assignment makes pointer from integer without a cast\n\nCc: \u003czajec5@gmail.com\u003e\nCc: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15f82d1b0b25185311f3b876e372d0d8e52a3c92",
      "tree": "5b30f95dda8778f322921da6cbb6cb851f509630",
      "parents": [
        "f7285b5d631fd6096b11c6af0058ed3a2b30ef4e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu May 26 16:24:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 17:12:32 2011 -0700"
      },
      "message": "drivers/video/mb862xx/mb862xxfbdrv.c needs uaccess.h\n\nalpha allmodconfig:\n\n  drivers/video/mb862xx/mb862xxfbdrv.c: In function \u0027mb862xxfb_ioctl\u0027:\n  drivers/video/mb862xx/mb862xxfbdrv.c:323: error: implicit declaration of function \u0027copy_to_user\u0027\n  drivers/video/mb862xx/mb862xxfbdrv.c:327: error: implicit declaration of function \u0027copy_from_user\u0027\n\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Anatolij Gustschin \u003cagust@denx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7285b5d631fd6096b11c6af0058ed3a2b30ef4e",
      "tree": "956fff16b2327818eae72cfe47cf2260986e2fd2",
      "parents": [
        "b7c2f036284452627d793af981877817b37d4351"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serge@hallyn.com",
        "time": "Thu May 26 15:25:05 2011 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 13:49:19 2011 -0700"
      },
      "message": "Set cred-\u003euser_ns in key_replace_session_keyring\n\nSince this cred was not created with copy_creds(), it needs to get\ninitialized.  Otherwise use of syscall(__NR_keyctl, KEYCTL_SESSION_TO_PARENT);\ncan lead to a NULL deref.  Thanks to Robert for finding this.\n\nBut introduced by commit 47a150edc2a (\"Cache user_ns in struct cred\").\n\nSigned-off-by: Serge E. Hallyn \u003cserge.hallyn@canonical.com\u003e\nReported-by: Robert Święcki \u003crobert@swiecki.net\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: stable@kernel.org (2.6.39)\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7c2f036284452627d793af981877817b37d4351",
      "tree": "c96bbf7558512b27f4802994c9271ccd0f1c19f3",
      "parents": [
        "14587a2a25447813996e6fb9e48d48627cb75a5d",
        "8d2c50e3b65c8d48d51088f541c13fde46cc8133"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 13:19:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 13:19:00 2011 -0700"
      },
      "message": "Merge branch \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6\n\n* \u0027trivial\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6:\n  gfs2: Drop __TIME__ usage\n  isdn/diva: Drop __TIME__ usage\n  atm: Drop __TIME__ usage\n  dlm: Drop __TIME__ usage\n  wan/pc300: Drop __TIME__ usage\n  parport: Drop __TIME__ usage\n  hdlcdrv: Drop __TIME__ usage\n  baycom: Drop __TIME__ usage\n  pmcraid: Drop __DATE__ usage\n  edac: Drop __DATE__ usage\n  rio: Drop __DATE__ usage\n  scsi/wd33c93: Drop __TIME__ usage\n  scsi/in2000: Drop __TIME__ usage\n  aacraid: Drop __TIME__ usage\n  media/cx231xx: Drop __TIME__ usage\n  media/radio-maxiradio: Drop __TIME__ usage\n  nozomi: Drop __TIME__ usage\n  cyclades: Drop __TIME__ usage\n"
    },
    {
      "commit": "14587a2a25447813996e6fb9e48d48627cb75a5d",
      "tree": "fb2a16f31297a8e85a1f6678231d50e2d389a1a0",
      "parents": [
        "fce637e392a762e4d4f0fc41ac3d3f557187ac21",
        "e9d35946c84c44e33e007123d3d595ccbd21d1a4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:31 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:31 2011 -0700"
      },
      "message": "Merge branch \u0027x86-vdso-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-vdso-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: vdso: Remove unused variable\n  x86-64: Optimize vDSO time()\n  x86-64: Add time to vDSO\n  x86-64: Turn off -pg and turn on -foptimize-sibling-calls for vDSO\n  x86-64: Move vread_tsc into a new file with sensible options\n  x86-64: Vclock_gettime(CLOCK_MONOTONIC) can\u0027t ever see nsec \u003c 0\n  x86-64: Don\u0027t generate cmov in vread_tsc\n  x86-64: Remove unnecessary barrier in vread_tsc\n  x86-64: Clean up vdso/kernel shared variables\n"
    },
    {
      "commit": "fce637e392a762e4d4f0fc41ac3d3f557187ac21",
      "tree": "1604486289418bf35ae4ba9bddb35bb4c6f83ba7",
      "parents": [
        "8b29336fe01dab3541ebb283daddf9d0168c3f05",
        "c4dbe54ed7296ac3249c415d512dd6d649f66f4b",
        "def945eeb920b94e710574454043f080831aefe5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:11 2011 -0700"
      },
      "message": "Merge branches \u0027core-fixes-for-linus\u0027 and \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  seqlock: Get rid of SEQLOCK_UNLOCKED\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: Remove smp_affinity_list when unregister irq proc\n"
    },
    {
      "commit": "8b29336fe01dab3541ebb283daddf9d0168c3f05",
      "tree": "d64c1a3e00bf66c9ea9b50085f22662871cb5696",
      "parents": [
        "9f1912c48ce829d24789e3e5d499de0d44d3306a",
        "1adb656e52e1159b0187bf6590df94c7ff44d389"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:41 2011 -0700"
      },
      "message": "Merge branch \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027gpio/next\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  gpio/via: rename VIA local config struct\n  basic_mmio_gpio: split into a gpio library and platform device\n  gpio: remove some legacy comments in build files\n  gpio: add trace events for setting direction and value\n  gpio/pca953x: Use handle_simple_irq instead of handle_edge_irq\n  gpiolib: export gpiochip_find\n  gpio: remove redundant Kconfig depends on GPIOLIB\n  basic_mmio_gpio: convert to non-__raw* accessors\n  basic_mmio_gpio: support direction registers\n  basic_mmio_gpio: support different input/output registers\n  basic_mmio_gpio: detect output method at probe time\n  basic_mmio_gpio: request register regions\n  basic_mmio_gpio: allow overriding number of gpio\n  basic_mmio_gpio: convert to platform_{get,set}_drvdata()\n  basic_mmio_gpio: remove runtime width/endianness evaluation\n"
    },
    {
      "commit": "9f1912c48ce829d24789e3e5d499de0d44d3306a",
      "tree": "056ca04727d478f74b20d8af5729e0776a942cca",
      "parents": [
        "4c171acc20794af16a27da25e11ec4e9cad5d9fa",
        "099691081df40d8863cb2fb01ee64039633892dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:14:20 2011 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (57 commits)\n  regulator: Fix 88pm8607.c printk format warning\n  input: Add support for Qualcomm PMIC8XXX power key\n  input: Add Qualcomm pm8xxx keypad controller driver\n  mfd: Add omap-usbhs runtime PM support\n  mfd: Fix ASIC3 SD Host Controller Configuration size\n  mfd: Fix omap_usbhs_alloc_children error handling\n  mfd: Fix omap usbhs crash when rmmoding ehci or ohci\n  mfd: Add ASIC3 LED support\n  leds: Add ASIC3 LED support\n  mfd: Update twl4030-code maintainer e-mail address\n  mfd: Correct the name and bitmask for ab8500-gpadc BTempPullUp\n  mfd: Add manual ab8500-gpadc batt temp activation for AB8500 3.0\n  mfd: Provide ab8500-core enumerators for chip cuts\n  mfd: Check twl4030-power remove script error condition after i2cwrite\n  mfd: Fix twl6030 irq definitions\n  mfd: Add phoenix lite (twl6025) support to twl6030\n  mfd: Avoid to use constraint name in 88pm860x regulator driver\n  mfd: Remove checking on max8925 regulator[0]\n  mfd: Remove unused parameter from 88pm860x API\n  mfd: Avoid to allocate 88pm860x static platform data\n  ...\n"
    },
    {
      "commit": "4c171acc20794af16a27da25e11ec4e9cad5d9fa",
      "tree": "fb097384d709b7bda982902d999f658bb4f07b2c",
      "parents": [
        "20e0ec119b2c6cc412addefbe169f4f5e38701e8",
        "8dc4abdf4c82d0e1c47f14b6615406d31975ea66"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:57 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:\n  RDMA/cma: Save PID of ID\u0027s owner\n  RDMA/cma: Add support for netlink statistics export\n  RDMA/cma: Pass QP type into rdma_create_id()\n  RDMA: Update exported headers list\n  RDMA/cma: Export enum cma_state in \u003crdma/rdma_cm.h\u003e\n  RDMA/nes: Add a check for strict_strtoul()\n  RDMA/cxgb3: Don\u0027t post zero-byte read if endpoint is going away\n  RDMA/cxgb4: Use completion objects for event blocking\n  IB/srp: Fix integer -\u003e pointer cast warnings\n  IB: Add devnode methods to cm_class and umad_class\n  IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required\n  IB/uverbs: Add devnode method to set path/mode\n  RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node\n  RDMA: Add netlink infrastructure\n  RDMA: Add error handling to ib_core_init()\n"
    },
    {
      "commit": "20e0ec119b2c6cc412addefbe169f4f5e38701e8",
      "tree": "fd8b882f4027f1a60857cbcd3bb85a83261db07f",
      "parents": [
        "829ae2732998e628d762b97627e4e5cc6c1b5625",
        "43c640157d4366a3ea9ba01f903ea892f46376ee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:22 2011 -0700"
      },
      "message": "Merge branch \u0027spi/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027spi/next\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  spi/amba-pl022: work in polling or interrupt mode if pl022_dma_probe fails\n  spi/spi_s3c24xx: Use spi_bitbang_stop instead of spi_unregister_master in s3c24xx_spi_remove\n  spi/spi_nuc900: Use spi_bitbang_stop instead of spi_unregister_master in nuc900_spi_remove\n  spi/spi_tegra: use spi_unregister_master() instead of spi_master_put()\n  spi/spi_sh: use spi_unregister_master instead of spi_master_put in remove path\n  spi: Use void pointers for data in simple SPI I/O operations\n  spi/pl022: use cpu_relax in the busy loop\n  spi/pl022: mark driver non-experimental\n  spi/pl022: timeout on polled transfer v2\n  spi/dw_spi: improve the interrupt mode with the batch ops\n  spi/dw_spi: change poll mode transfer from byte ops to batch ops\n  spi/dw_spi: remove the un-necessary flush()\n  spi/dw_spi: unify the low level read/write routines\n"
    },
    {
      "commit": "829ae2732998e628d762b97627e4e5cc6c1b5625",
      "tree": "7ffdfa365ab54df4fd1742673289621b3f5de2f5",
      "parents": [
        "6ddb4518c7af7b03fa322552d794f759cd5c26fa",
        "9b28b11e2a648f07c8481b9666ccf1c088e1ab74"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:11:54 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:11:54 2011 -0700"
      },
      "message": "Merge branch \u0027omap-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6\n\n* \u0027omap-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (33 commits)\n  OMAP3: PM: Boot message is not an error, and not helpful, remove it\n  OMAP3: cpuidle: change the power domains modes determination logic\n  OMAP3: cpuidle: code rework for improved readability\n  OMAP3: cpuidle: re-organize the C-states data\n  OMAP3: clean-up mach specific cpuidle data structures\n  OMAP3 cpuidle: remove useless SDP specific timings\n  usb: otg: OMAP4430: Powerdown the internal PHY when USB is disabled\n  usb: otg: OMAP4430: Fixing the omap4430_phy_init function\n  usb: musb: am35x: fix compile error when building am35x\n  usb: musb: OMAP4430: Power down the PHY during board init\n  omap: drop board-igep0030.c\n  omap: igep0020: add support for IGEP3\n  omap: igep0020: minor refactoring\n  omap: igep0020: name refactoring for future merge with IGEP3\n  omap: Remove support for omap2evm\n  arm: omap2plus: GPIO cleanup\n  omap: musb: introduce default board config\n  omap: move detection of NAND CS to common-board-devices\n  omap: use common initialization for PMIC i2c bus\n  omap: consolidate touch screen initialization among different boards\n  ...\n"
    },
    {
      "commit": "6ddb4518c7af7b03fa322552d794f759cd5c26fa",
      "tree": "4560d1425733243520c97aade1d69c6739b13b11",
      "parents": [
        "be93d8cfbae1996052e91b2883d306a5d9d0fe18",
        "3fb7933850faf1017c59a675e895ed8f27fef4be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:11:17 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:11:17 2011 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc/4xx: Adding PCIe MSI support\n  powerpc: Fix irq_free_virt by adjusting bounds before loop\n  powerpc/irq: Protect irq_radix_revmap_lookup against irq_free_virt\n  powerpc/irq: Check desc in handle_one_irq and expand generic_handle_irq\n  powerpc/irq: Always free duplicate IRQ_LEGACY hosts\n  powerpc/irq: Remove stale and misleading comment\n  powerpc/cell: Rename ipi functions to match current abstractions\n  powerpc/cell: Use common smp ipi actions\n  Remove unused MSG_ flags in linux/smp.h\n  powerpc/pseries: Update MAX_HCALL_OPCODE to reflect page coalescing\n  powerpc/oprofile: Handle events that raise an exception without overflowing\n  powerpc/ftrace: Implement raw syscall tracepoints on PowerPC\n"
    },
    {
      "commit": "be93d8cfbae1996052e91b2883d306a5d9d0fe18",
      "tree": "1fc0049faffde8f8f6e752f9cc563908482d9537",
      "parents": [
        "a74b81b0aff4a01e0816df5915c854fb52c5e87f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:03:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:03:50 2011 -0700"
      },
      "message": "Fix build with !HUGETLBFS\n\nI stupidly broke the case of CONFIG_HUGETLBFS\u003dn when doing the\nconversion to vm_flags_t in commit ca16d140af91 (\"mm: don\u0027t access\nvm_flags as \u0027int\u0027\").  And my \u0027allyesconfig\u0027 build didn\u0027t find it, for\nobvious reasons..\n\nInclude \u003clinux/mm_types.h\u003e in \u003clinux/hugetlb.h\u003e.  The problem could have\nbeen avoided by just turning the hugetlb_file_setup() error wrapper into\na macro, but mm_types.h is a reasonable include in this file.\n\nReported-by: Richard -rw- Weinberger \u003crichard.weinberger@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "a74b81b0aff4a01e0816df5915c854fb52c5e87f"
}
