)]}'
{
  "log": [
    {
      "commit": "3542ae4c17bb2c86e5658728ff73b3d5ca44532e",
      "tree": "f53e2240dbc0e8f00be21e847e66e729756895af",
      "parents": [
        "84eb646b6eabcd82ec563f30d2d9d40c2054a9c9"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Oct 16 23:26:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "Tweak /proc/ipmi removal\n\nDriver does\n\tproc_mkdir(\"ipmi\", NULL);\nbut\n\tremove_proc_entry(proc_ipmi_root-\u003ename, \u0026proc_root);\n\nThis is OK and working if only slightly inconsistent.  Also changing\nproc_root to NULL will help OpenVZ which has multiple proc roots and, as we\nnow know, requires matching parents in such cases.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\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": "84eb646b6eabcd82ec563f30d2d9d40c2054a9c9",
      "tree": "96219c5844c80c40cbc9814a13a9a72de7430fc7",
      "parents": [
        "8e9073ed027771bcdee4033eb900a3c09ac90a19"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "handle the multi-threaded init\u0027s exit() properly\n\nWith or without this patch, multi-threaded init\u0027s are not fully supported,\nbut do_exit() is completely wrong.  This becomes a real problem when we\nsupport pid namespaces.\n\n1. do_exit() panics when the main thread of /sbin/init exits. It should not\n   until the whole thread group exits. Move the code below, under the\n   \"if (group_dead)\" check.\n\n   Note: this means that forget_original_parent() can use an already dead\n   child_reaper()\u0027s task_struct. This is OK for /sbin/init because\n\n   \t- do_wait() from alive sub-thread still can reap a zombie, we iterate\n   \t  over all sub-thread\u0027s -\u003echildren lists\n\n   \t- do_notify_parent() will wakeup some alive sub-thread because it sends\n   \t  the group-wide signal\n\n   However, we should remove choose_new_parent()-\u003eBUG_ON(reaper-\u003eexit_state)\n   for this.\n\n2. We are playing games with -\u003ensproxy-\u003epid_ns. This code is bogus today, and\n   it has to be changed anyway when we really support pid namespaces, just\n   remove it.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nRoland McGrath \u003croland@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8e9073ed027771bcdee4033eb900a3c09ac90a19",
      "tree": "be445d976b82a8337af87b6e64f1ccfb23222373",
      "parents": [
        "045f902de5a6eb5927c0f092c38be7a381f634f0"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@novell.com",
        "time": "Tue Oct 16 23:26:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "Deprecate a.out ELF interpreters\n\nThe Linux ELF loader is quite complicated and messy code (that could\nprobably need a rewrite, but that\u0027s a different chapter).  One particular\nmessy part in it is the support for non ELF a.out ld.sos.  This was\noriginally added to make transition from a.out to ELF easier because an\na.out ELF ld.so could be still build using an older a.out toolkit.  But by\nnow that should be fully obsolete and removing it would clean up\nbinfmt_elf.c up a bit.\n\nI propose to deprecate this support and remove for 2.6.25.\n\nDrawback is that someone still runs their system with a.out ld.so\nthey would need to update the ld.so when updating to a new kernel.\n\nThis patch just adds an entry to the deprecation file and a printk\nwarning users.\n\n[akpm@linux-foundation.org: better warning message]\nSigned-off-by: Andi Kleen \u003cak@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": "045f902de5a6eb5927c0f092c38be7a381f634f0",
      "tree": "ab85cec6415197016032f97146c8004e846cdd5c",
      "parents": [
        "d2ee7198cc2414aade234a3cebc69e6cbff35d9b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "do_sigaction: remove now unneeded recalc_sigpending()\n\nWith the recent changes, do_sigaction()-\u003erecalc_sigpending_and_wake() can\nnever clear TIF_SIGPENDING. Instead, it can set this flag and wake up the\nthread without any reason. Harmless, but unneeded and wastes CPU.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d2ee7198cc2414aade234a3cebc69e6cbff35d9b",
      "tree": "e89d52b8b64f6eb675add025ba8507863e4bc0f8",
      "parents": [
        "7917ff9a4cefd0500aa4a1b1942da96dbce6999f"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "pi-futex: set PF_EXITING without taking -\u003epi_lock\n\nIt is a bit annoying that do_exit() takes -\u003epi_lock to set PF_EXITING.  All\nwe need is to synchronize with lookup_pi_state() which saw this task\nwithout PF_EXITING under -\u003epi_lock.\n\nChange do_exit() to use spin_unlock_wait().\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7917ff9a4cefd0500aa4a1b1942da96dbce6999f",
      "tree": "17141d98b96fae1e8fac2974c97d264c897cbf27",
      "parents": [
        "978550b828d1c29dfd65707f5d001053c3d2d610"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Tue Oct 16 23:26:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:51 2007 -0700"
      },
      "message": "tpm: pay attention to IRQ info from PNP\n\nIf we discover the TIS TPM device via PNP, use the PNP IRQ information rather\nthan probing for an IRQ.  If PNP shows no IRQ, run the TPM in polling mode.\n\nTested-by: \u003cvaldis.kletnieks@vt.edu\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Kylene Hall \u003ckjhall@us.ibm.com\u003e\nCc: \u003ctpm@selhorst.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "978550b828d1c29dfd65707f5d001053c3d2d610",
      "tree": "0a4bf0ee355796a250da395974326e474b4e1158",
      "parents": [
        "b63d50c438bd3a8910263e15c37ca8634b110c92"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Tue Oct 16 23:26:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "drivers/char/ip2/ip2main.c: kmalloc + memset conversion to kzalloc\n\n drivers/char/ip2/ip2main.c | 104398 -\u003e 104346 (-52 bytes)\n drivers/char/ip2/ip2main.o | 210710 -\u003e 210702 (-8 bytes)\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b63d50c438bd3a8910263e15c37ca8634b110c92",
      "tree": "d7198d3bd8c2ac7a6c93a8ab11b3167636b0b3cd",
      "parents": [
        "f035ac821bf8c36a558471e78c514a96202a1bda"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Tue Oct 16 23:26:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "fs/autofs4/inode.c: kmalloc + memset conversion to kzalloc\n\n fs/autofs4/inode.c | 10467 -\u003e 10435 (-32 bytes)\n fs/autofs4/inode.o | 98576 -\u003e 98552 (-24 bytes)\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nAcked-by: Ian Kent \u003craven@themaw.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f035ac821bf8c36a558471e78c514a96202a1bda",
      "tree": "33e60100ea47c3cb26a8ded359d54ede4a4100a4",
      "parents": [
        "392b7bc13e9e9390bd2deb923d0326c3a50a9a00"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Tue Oct 16 23:26:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "doc firmware_sample_firmware_class.c: kmalloc + memset conversion to kzalloc\n\n Documentation/firmware_class/firmware_sample_firmware_class.c | 5246 -\u003e 5211 (-35 bytes)\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "392b7bc13e9e9390bd2deb923d0326c3a50a9a00",
      "tree": "0a1a21f99167dc155dea9fc4895d1df8807b84e9",
      "parents": [
        "0b15d04af3dd996035d8fa81fc849d049171f9c3"
      ],
      "author": {
        "name": "Mariusz Kozlowski",
        "email": "m.kozlowski@tuxland.pl",
        "time": "Tue Oct 16 23:26:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "drivers/char/consolemap.c: kmalloc + memset conversion to kzalloc\n\n drivers/char/consolemap.c | 22678 -\u003e 22650 (-28 bytes)\n drivers/char/consolemap.o | 90113 -\u003e 90029 (-84 bytes)\n\nSigned-off-by: Mariusz Kozlowski \u003cm.kozlowski@tuxland.pl\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b15d04af3dd996035d8fa81fc849d049171f9c3",
      "tree": "cb0dc973b6485edb6fdf0bcdf4a2eeef9a48adad",
      "parents": [
        "d823e3e7541c39b4dfe9c79dbf052b4c39da2965"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier.adi@gmail.com",
        "time": "Tue Oct 16 23:26:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "printk: add interfaces for external access to the log buffer\n\nAdd two new functions for reading the kernel log buffer.  The intention is for\nthem to be used by recovery/dump/debug code so the kernel log can be easily\nretrieved/parsed in a crash scenario, but they are generic enough for other\npeople to dream up other fun uses.\n\n[akpm@linux-foundation.org: buncha fixes]\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: Greg Ungerer \u003cgerg@snapgear.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d823e3e7541c39b4dfe9c79dbf052b4c39da2965",
      "tree": "250b90bf38f2d830d80f6d7ca99d548eaeb3f30d",
      "parents": [
        "53fa6645251727856d3554d64583fef59e6f1651"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 23:26:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "ipc/shm.c: make 2 functions static\n\nThis patch makes two needlessly global functions static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53fa6645251727856d3554d64583fef59e6f1651",
      "tree": "1738d1cc31f60d0afcafc271852671d921669516",
      "parents": [
        "c1206a2c6d87def4af5379e6fef64e928d882ab2"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 23:26:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "lib/ioremap.c should #include \u003clinux/io.h\u003e\n\nEvery file should include the headers containing the prototypes for its global\nfunctions (in this case ioremap_page_range()).\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1206a2c6d87def4af5379e6fef64e928d882ab2",
      "tree": "388c36ab43b2f9d2cf463871866b0fa97aa4154b",
      "parents": [
        "a4d63e729edad704af95e5f2a56e8c8eaaa5216b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 23:26:41 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "fs/afs/: possible cleanups\n\nThis patch contains the following possible cleanups:\n- make the following needlessly global functions static:\n  - rxrpc.c: afs_send_pages()\n  - vlocation.c: afs_vlocation_queue_for_updates()\n  - write.c: afs_writepages_region()\n- make the following needlessly global variables static:\n  - mntpt.c: afs_mntpt_expiry_timeout\n  - proc.c: afs_vlocation_states[]\n  - server.c: afs_server_timeout\n  - vlocation.c: afs_vlocation_timeout\n  - vlocation.c: afs_vlocation_update_timeout\n- #if 0 the following unused function:\n  - cell.c: afs_get_cell_maybe()\n- #if 0 the following unused variables:\n  - callback.c: afs_vnode_update_timeout\n  - cmservice.c: struct afs_cm_workqueue\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a4d63e729edad704af95e5f2a56e8c8eaaa5216b",
      "tree": "d2f8e48d9c74550e3054ba2b8ac9f5e88784f8ad",
      "parents": [
        "6d76013381ed28979cd122eb4b249a88b5e384fa"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 23:26:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "kernel/rtmutex-debug.c: cleanups\n\nThis patch contains the following cleanups:\n- make the needlessly global variable rt_trace_on static\n- remove the unused global function deadlock_trace_off()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6d76013381ed28979cd122eb4b249a88b5e384fa",
      "tree": "f37571fad8690dead2344d1aa0ea86d5f778181f",
      "parents": [
        "ae0b78d09dc1d521551e225a9831aba1eded518f"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Tue Oct 16 23:26:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "Add /sys/module/name/notes\n\nThis patch adds the /sys/module/\u003cname\u003e/notes/ magic directory, which has a\nfile for each allocated SHT_NOTE section that appears in \u003cname\u003e.ko.  This\nis the counterpart for each module of /sys/kernel/notes for vmlinux.\nReading this delivers the contents of the module\u0027s SHT_NOTE sections.  This\nlets userland easily glean any detailed information about that module\u0027s\nbuild that was stored there at compile time (e.g.  by ld --build-id).\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ae0b78d09dc1d521551e225a9831aba1eded518f",
      "tree": "37c2eea67202f4375dce3ca3803248deaf640747",
      "parents": [
        "323211371073ce4a99b6efc69379589d6a640d35"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Oct 16 23:26:37 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "epca.c: reformat comments and coding style improvements\n\n* Remove stupid comments, like, at the beginning of every function that\n  function begins (twice per function) and at the end (once)\n* Remove trailing or otherwise broken whitespace as per let c_space_errors\u003d1\n* Reformat comments to fit it into 80 columns and remove stupid ------------\u0027s.\n* Indent case labels on the same column where switch begins\n* other minor CS tweaks not worth mentioning\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Jiri Slaby \u003cjirislaby@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": "323211371073ce4a99b6efc69379589d6a640d35",
      "tree": "d69c0b023cfa1afdc64e4de8bc27ec03195b8088",
      "parents": [
        "74aadce986052f20088c2678f589ea0e8d3a4b59"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Oct 16 23:26:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "core_pattern: fix up a few miscellaneous bugs\n\nFix do_coredump to detect a crash in the user mode helper process and abort\nthe attempt to recursively dump core to another copy of the helper process,\npotentially ad-infinitum.\n\n[akpm@linux-foundation.org: cleanups]\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: \u003cmartin.pitt@ubuntu.com\u003e\nCc: \u003cwwoods@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74aadce986052f20088c2678f589ea0e8d3a4b59",
      "tree": "e250181221f29e45e0b9d1e4175f569a66e639c4",
      "parents": [
        "7dc0b22e3c54f1f4730354fef84a20f5944f6c5e"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Oct 16 23:26:35 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "core_pattern: allow passing of arguments to user mode helper when core_pattern is a pipe\n\nA rewrite of my previous post for this enhancement.  It uses jeremy\u0027s\nsplit_argv/free_argv library functions to translate core_pattern into an argv\narray to be passed to the user mode helper process.  It also adds a\ntranslation to format_corename such that the origional value of RLIMIT_CORE\ncan be passed to userspace as an argument.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: \u003cmartin.pitt@ubuntu.com\u003e\nCc: \u003cwwoods@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7dc0b22e3c54f1f4730354fef84a20f5944f6c5e",
      "tree": "8b281ed3315699eb0b21f00b5933b6222add5b5a",
      "parents": [
        "8e2b705649e294f43a8cd1ea79e4c594c0bd1d9d"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Oct 16 23:26:34 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "core_pattern: ignore RLIMIT_CORE if core_pattern is a pipe\n\nFor some time /proc/sys/kernel/core_pattern has been able to set its output\ndestination as a pipe, allowing a user space helper to receive and\nintellegently process a core.  This infrastructure however has some\nshortcommings which can be enhanced.  Specifically:\n\n1) The coredump code in the kernel should ignore RLIMIT_CORE limitation\n   when core_pattern is a pipe, since file system resources are not being\n   consumed in this case, unless the user application wishes to save the core,\n   at which point the app is restricted by usual file system limits and\n   restrictions.\n\n2) The core_pattern code should be able to parse and pass options to the\n   user space helper as an argv array.  The real core limit of the uid of the\n   crashing proces should also be passable to the user space helper (since it\n   is overridden to zero when called).\n\n3) Some miscellaneous bugs need to be cleaned up (specifically the\n   recognition of a recursive core dump, should the user mode helper itself\n   crash.  Also, the core dump code in the kernel should not wait for the user\n   mode helper to exit, since the same context is responsible for writing to\n   the pipe, and a read of the pipe by the user mode helper will result in a\n   deadlock.\n\nThis patch:\n\nRemove the check of RLIMIT_CORE if core_pattern is a pipe.  In the event that\ncore_pattern is a pipe, the entire core will be fed to the user mode helper.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: \u003cmartin.pitt@ubuntu.com\u003e\nCc: \u003cwwoods@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8e2b705649e294f43a8cd1ea79e4c594c0bd1d9d",
      "tree": "edceaa54f86252ea66f3321786cd89771759dbfd",
      "parents": [
        "2a9807c0d39066236640aa34ca8de168e690632f"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Oct 16 23:26:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:50 2007 -0700"
      },
      "message": "argv_split: allow argv_split to handle NULL pointer in argcp parameter gracefully\n\nIt would be nice if the argv_split library function could gracefully handle\na NULL pointer in the argcp parameter, so as to allow functions using it\nthat did not care about the value of argc to not have to declare a useless\nvariable.  This patch accomplishes that.  Tested by me, with successful\nresults.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Satyam Sharma \u003csatyam@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": "2a9807c0d39066236640aa34ca8de168e690632f",
      "tree": "d0d05b5c89336344d2bb95a41f6ce065c8211e6c",
      "parents": [
        "252e211e90ce56bf005cb533ad5a297c18c19407"
      ],
      "author": {
        "name": "Evgeniy Dushistov",
        "email": "dushistov@mail.ru",
        "time": "Tue Oct 16 23:26:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "ufs: implement show_options\n\nAn implementation of show_options method for UFS.\n\nSigned-off-by: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\nCc: \"Randy.Dunlap\" \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "252e211e90ce56bf005cb533ad5a297c18c19407",
      "tree": "9b37f80e1f4c1ec74e150edb3ea7b8d70faea79a",
      "parents": [
        "ef2fb67989d30fea475bb01c5b7ca44adbce5dea"
      ],
      "author": {
        "name": "Mark Fortescue",
        "email": "mark@mtfhpc.demon.co.uk",
        "time": "Tue Oct 16 23:26:31 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "Add in SunOS 4.1.x compatible mode for UFS\n\nAdd in support for SunOS 4.1.x flavor of BSD 4.2 UFS filing system Macros have\nbeen put in to alow suport for the old static table Cylinder Groups but this\nimplementation does not use them yet.\n\nThis also fixes Solaris UFS filing system access by disabling fast symbolic\nlinks as Sun\u0027s version of UFS does not support on-disk fast symbolic links.\n\nTested by:\n  Ppartitioning a new disk using SunOS 4.1.1, creating a UFS filing system on\n  one of the partitions and writing some files to the filing system.\n  Using Linux-2.6.22 (patched) to read the files and then write a shed load of\n  files to the UFS partition.\n  Using SunOS 4.1.1 to verify the filing system is OK and to check the files.\nThe test host is a sun4c SS1 Clone.\n\n[akpm@linux-foundation.org: coding style fixes]\n[adobriyan@gmail.com: fix oops]\nSigned-off-by: Mark Fortescue \u003cmark@mtfhpc.demon.co.uk\u003e\nCc: Evgeniy Dushistov \u003cdushistov@mail.ru\u003e\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": "ef2fb67989d30fea475bb01c5b7ca44adbce5dea",
      "tree": "295e6be829b658f198fd2331c02a0477bf7fd245",
      "parents": [
        "74bf17cffc32511c7c6d70fe7f376b92662e186e"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@redhat.com",
        "time": "Tue Oct 16 23:26:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "remove unused bh in calls to ext234_get_group_desc\n\next[234]_get_group_desc never tests the bh argument, and only sets it if it\nis passed in; it is perfectly happy with a NULL bh argument.  But, many\ncallers send one in and never use it.  May as well call with NULL like\nother callers who don\u0027t use the bh.\n\nSigned-off-by: Eric Sandeen \u003csandeen@redhat.com\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74bf17cffc32511c7c6d70fe7f376b92662e186e",
      "tree": "e770b056d4a83f847a04fc92e119aa607ec0edaf",
      "parents": [
        "1d99493b3a68e40e56459ea3565d4402fb6e5f3a"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "fs: remove the unused mempages parameter\n\nSince the mempages parameter is actually not used, they should be removed.\n\nNow there is only files_init use the mempages parameter,\n\n \tfiles_init(mempages);\n\nbut I don\u0027t think the adaptation to mempages in files_init is really\nuseful; and if files_init also changed to the prototype void (*func)(void),\nthe wrapper vfs_caches_init would also not need the mempages parameter.\n\nSigned-off-by: Denis Cheng \u003ccrquan@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": "1d99493b3a68e40e56459ea3565d4402fb6e5f3a",
      "tree": "362ebcf8871e0fad07aa754bb5194de3a2cd64d3",
      "parents": [
        "f13ef7754f724842dbf5ae6d85d0604fff0d1a84"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Oct 16 23:26:29 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "Fix CONFIG_DEBUG_SHIRQ trigger on free_irq()\n\nAndy Gospodarek pointed out that because we return in the middle of the\nfree_irq() function, we never actually do call the IRQ handler that just\ngot deregistered. This should fix it, although I expect Andrew will want\nto convert those \u0027return\u0027s to \u0027break\u0027. That\u0027s a separate change though.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCc: Fernando Luis Vzquez Cao \u003cfernando@oss.ntt.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": "f13ef7754f724842dbf5ae6d85d0604fff0d1a84",
      "tree": "cb2b9d5b9bbe9650df9c8a14871302dd6a5e3193",
      "parents": [
        "af49d9248fca6f26cbdb01918334f71d9040df80"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Oct 16 23:26:28 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "report the per-irq statistics on all arches\n\nCommit 4004c69ad68dd03733179277280ea2946990ba36 avoids too many remote cpu\nreferences while reporting per-irq stats.  Since we will not have the same\nperformance penalty of bringing in remote cpu cachelines while reporting\nper-irq stats anymore, we can now afford to be consistent and report this\nstatistic on all arches, all configs.\n\nakpm: affects ia64, alpha and ppc64, mainly.\n\nKiran earlier said:\n\nRead to /proc/stat takes:\nPlain: \t2.622832\nWith speedup patch: 0.013194\nWith the per-irq stats commented out: 0.008124\n\nSo the performance problems which originally caused those architectures to\ndisable this statistic should now be fixed up.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andi Kleen \u003cak@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": "af49d9248fca6f26cbdb01918334f71d9040df80",
      "tree": "5d6a7f4d5ca55ff17fbfc98cacac37be62c7a4a3",
      "parents": [
        "d9c9bef1345e5d9258febce2a37e4d40319fa728"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 16 23:26:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "Remove \"unsafe\" from module struct\n\nAdrian Bunk points out that \"unsafe\" was used to mark modules touched by\nthe deprecated MOD_INC_USE_COUNT interface, which has long gone.  It\u0027s time\nto remove the member from the module structure, as well.\n\nIf you want a module which can\u0027t unload, don\u0027t register an exit function.\n\n(Vlad Yasevich says SCTP is now safe to unload, so just remove the\n__unsafe there).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Shannon Nelson \u003cshannon.nelson@intel.com\u003e\nAcked-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9c9bef1345e5d9258febce2a37e4d40319fa728",
      "tree": "cf2d2539011d914fdf33355bb2f3eac1c29a2fdc",
      "parents": [
        "571beed8d698e20392e525ed7f360410e40d12e8"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Oct 16 23:26:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:49 2007 -0700"
      },
      "message": "ext4: show all mount options\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "571beed8d698e20392e525ed7f360410e40d12e8",
      "tree": "4251ac5806885becec7926f03cec485cbb990f99",
      "parents": [
        "93d44cb275f3eba720617a8c5b00d51a8e0e9049"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Oct 16 23:26:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "ext3: show all mount options\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "93d44cb275f3eba720617a8c5b00d51a8e0e9049",
      "tree": "d6379a03a4f1176990ed8207f8f93b2adeeccbd6",
      "parents": [
        "e57aa839cea13852e07ecb495692b602b11136c9"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Tue Oct 16 23:26:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "ext2: show all mount options\n\nUsing mtab is problematic for various reasons, one of them is that\nunprivileged mounts won\u0027t turn up in there.  So we want to get rid of it, and\nuse /proc/mounts instead.\n\nBut most filesystems are lazy, and are not showing all mount options.  Which\nmeans, that without mtab, the user won\u0027t be able to see some or all of the\noptions.\n\nIt would be nice if the generic code could remember the mount options, and\nshow them without the need to add extra code to filesystems.  But this is not\neasy, because different filesystems handle mount options given options, and\nnot tough the rest.  This is not taken into account by mount(8) either, so\n/etc/mtab will be broken in this case.\n\nThis series fixes up -\u003eshow_options() in ext[234].\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e57aa839cea13852e07ecb495692b602b11136c9",
      "tree": "5296984f012e1483519f87af55c617fcbf186073",
      "parents": [
        "bf020cb7b3918e186309db21d75cb91ebafc9d6f"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@gmail.com",
        "time": "Tue Oct 16 23:26:25 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "convert ill defined log2() to ilog2()\n\nIt\u0027s *wrong* to have\n\t\t\t#define log2(n) ffz(~(n))\nIt should be *reversed*:\n\t\t\t#define log2(n) flz(~(n))\nor\n\t\t\t#define log2(n) fls(n)\nor just use\n\t\t\tilog2(n) defined in linux/log2.h.\n\nThis patch follows the last solution, recommended by Andrew Morton.\n\nCc: \u003clinux-ext4@vger.kernel.org\u003e\nCc: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Chris Ahna \u003cchristopher.j.ahna@intel.com\u003e\nCc: David Mosberger-Tang \u003cdavidm@hpl.hp.com\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf020cb7b3918e186309db21d75cb91ebafc9d6f",
      "tree": "7a03b7a566ce3f3119812e092b72e3c65fc8b91a",
      "parents": [
        "a9022e9cb9e919e31d5bc15fcef5c7186740645e"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Tue Oct 16 23:26:24 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "time: simplify smp_call_function_single() call sequence\n\nsmp_call_function_single() now knows how to call the function on the\ncurrent cpu.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9022e9cb9e919e31d5bc15fcef5c7186740645e",
      "tree": "48aea98aec8d9822155b2054bc60f9142f478769",
      "parents": [
        "ea0b7d5da0024df1c6f2c2139dbeb4fd260baac6"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in kernel/\n\nThis patch cleans up duplicate includes in\n\tkernel/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea0b7d5da0024df1c6f2c2139dbeb4fd260baac6",
      "tree": "cad571e9261011f2412fee17615d8aeced498d4a",
      "parents": [
        "40b2ea839753d32e5685d307c23d92c82cae3b70"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:23 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in fs/ecryptfs/\n\nThis patch cleans up duplicate includes in\n\tfs/ecryptfs/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nCc: Michael A Halcrow \u003cmahalcro@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": "40b2ea839753d32e5685d307c23d92c82cae3b70",
      "tree": "453c4f686a3a55bacf5e5e8b8e48daa3fa8f52bc",
      "parents": [
        "de4f800b498e04aceadb96107cdee2bbe1f9464a"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in fs/\n\nThis patch cleans up duplicate includes in\n\tfs/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@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": "de4f800b498e04aceadb96107cdee2bbe1f9464a",
      "tree": "1e42369a9b075bfed27aa8ed3dcab5035e2e81db",
      "parents": [
        "3f1a4373e7863c320878322e68a45aa2b100b692"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:22 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in drivers/w1/\n\nThis patch cleans up duplicate includes in\n\tdrivers/w1/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: 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": "3f1a4373e7863c320878322e68a45aa2b100b692",
      "tree": "e7ebcb0304ed001429b8c60884001a692a7d9db9",
      "parents": [
        "4be28540ee2f5af6f21764cde25154208750611e"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Oct 16 23:26:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Clean up duplicate includes in drivers/char/\n\nThis patch cleans up duplicate includes in\n\tdrivers/char/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4be28540ee2f5af6f21764cde25154208750611e",
      "tree": "db1c3d2a49e790537fe0f3d3a1e4285ded84a9d2",
      "parents": [
        "2b571a066a2fee14189a297ce8adc5212c58074c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Oct 16 23:26:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Remove sysctl.h from fs.h\n\nRrrr, addition of sysctl.h to fs.h was\u0027t very smart, because simple\nediting of the former will buy you big recompile, where it shouldn\u0027t\nhave to.\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": "2b571a066a2fee14189a297ce8adc5212c58074c",
      "tree": "742ac4893aa8beef1a6975fed5c9bb7530423547",
      "parents": [
        "4975e45ff66845c9acc6c8619e80ef15eadf785e"
      ],
      "author": {
        "name": "Olof Johansson",
        "email": "olof@lixom.net",
        "time": "Tue Oct 16 23:26:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "pcmcia: CompactFlash driver for PA Semi Electra boards\n\nDriver for the CompactFlash slot on the PA Semi Electra eval board. It\u0027s\na simple device sitting on localbus, with interrupts and detect/voltage\ncontrol over GPIO.\n\nThe driver is implemented as an of_platform driver, and adds localbus\nas a bus being probed by the of_platform framework.\n\n[akpm@linux-foundation.org: cleanups]\n[olof@lixom.net: fix build]\nSigned-off-by: Olof Johansson \u003colof@lixom.net\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Milton Miller \u003cmiltonm@bga.com\u003e\nCc: Kumar Gala \u003cgalak@gate.crashing.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nSigned-off-by: Olof Johansson \u003colof@lixom.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4975e45ff66845c9acc6c8619e80ef15eadf785e",
      "tree": "b54586037ad8f902c8a8a3a33853b041c2c62207",
      "parents": [
        "87400c04753674f546c7779abf536d2a3b5e0b7e"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "fs: use kmem_cache_zalloc instead\n\nSigned-off-by: Denis Cheng \u003ccrquan@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": "87400c04753674f546c7779abf536d2a3b5e0b7e",
      "tree": "7e4707ad13a24add92498290c942d2fe207245bd",
      "parents": [
        "9bf084f70ffde6521d113593b89461a5bd2a303b"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Oct 16 23:26:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "fs/proc/mmu.c: headers butchery\n\nfs/proc/mmu.c consists of only one function which uses only:\n1) struct vmalloc_info *\n2) struct vm_struct *\n3) struct vmalloc_info\n4) vmlist\n5) VMALLOC_TOTAL, VMALLOC_START, VMALLOC_END\n6) read_lock, read_unlock\n7) vmlist_lock\n8) struct vm_struct\n\nThis gives us linux/spinlock.h, asm/pgtable.h, \"internal.h\", linux/vmalloc.h.\nasm/pgtable.h uses PKMAP_BASE on i386, for which asm/highmem.h is needed.\nBut, linux/highmem.h is actually used to make it compile everywhere.\nI\u0027ll deal later with this particular i386 surprise.\n\nCross-compile tested on many archs and configs.\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": "9bf084f70ffde6521d113593b89461a5bd2a303b",
      "tree": "ea62a8c9c54d0f702e73e9fa6e6c8699106ab892",
      "parents": [
        "252e5725cfb55a89e54888317856903fef9d5031"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "do_poll: return -EINTR when signalled\n\ndo_poll() checks signal_pending() but returns 0 when interrupted.  This means\nthe caller has to check signal_pending() again.\n\nChange it to return -EINTR when signal_pending() and count \u003d\u003d 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "252e5725cfb55a89e54888317856903fef9d5031",
      "tree": "ca93be8725e01885f8af68dac5f6ca20a2bafe11",
      "parents": [
        "759d7c6c47cf1439171d057a226453e96856c5de"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Oct 16 23:26:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "do_sys_poll: simplify playing with on-stack data\n\nCleanup. Lessens both the source and compiled code (100 bytes) and imho makes\nthe code much more understandable.\n\nWith this patch \"struct poll_list *head\" always points to on-stack stack_pps,\nso we can remove all \"is it on-stack\" and \"was it initialized\" checks.\n\nAlso, move poll_initwait/poll_freewait and -EINTR detection closer to the\ndo_poll()\u0027s callsite.\n\n[akpm@linux-foundation.org: fix warning (size_t !\u003d uint)]\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nLooks-good-to: Andi Kleen \u003cak@suse.de\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "759d7c6c47cf1439171d057a226453e96856c5de",
      "tree": "cdc7fd5298319357f94e18d4d1608d97cfc7c788",
      "parents": [
        "966fe399cc774b00b1eed11fd884be85a5c5c489"
      ],
      "author": {
        "name": "Diego Woitasen",
        "email": "diego@woitasen.com.ar",
        "time": "Tue Oct 16 23:26:17 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:48 2007 -0700"
      },
      "message": "Remove unneeded lock_kernel() in driver/block/loop.c\n\nSigned-off-by: Diego Woitasen \u003cdiego@woitasen.com.ar\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "966fe399cc774b00b1eed11fd884be85a5c5c489",
      "tree": "9f99dcf27d68d60bf22a898f9e6f9ccb58e5d620",
      "parents": [
        "febfcf9115917ba80931dbf9f36d8d413698b628"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Tue Oct 16 23:26:16 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "KCONFIG: Make \"Instrumentation support\" non-EXPERIMENTAL\n\nIt makes more sense to make instrumentation support experimental on a\ncase-by-case basis.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "febfcf9115917ba80931dbf9f36d8d413698b628",
      "tree": "64a690982354475f4e53c0cb89083e1bfa5231f8",
      "parents": [
        "55ca3e796d452d1fd213846ae6ce8bc4d37b54cc"
      ],
      "author": {
        "name": "Philippe De Muyter",
        "email": "phdm@macqel.be",
        "time": "Tue Oct 16 23:26:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "fs: mark nibblemap const\n\nSigned-off-by: Philippe De Muyter \u003cphdm@macqel.be\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55ca3e796d452d1fd213846ae6ce8bc4d37b54cc",
      "tree": "427c69b9ca01c3c259fe71b1d84ee18abbf27979",
      "parents": [
        "0cbc591bf884a5662b2fbb21b5c09fa1c1c7b579"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Oct 16 23:26:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "fs/romfs/inode.c: trivial improvements\n\n- There are no lists in fs/romfs/inode.c, so using list_entry\n  is a bit confusing.  Replace it with container_of.\n\n- It is unnecessary to cast the return value of\n  kmem_cache_alloc, since it returns a void* pointer.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@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": "0cbc591bf884a5662b2fbb21b5c09fa1c1c7b579",
      "tree": "23b5e92aaa2d8c74a4501d39275431b272341cac",
      "parents": [
        "d2c9740b499f959ed513375b6e35c2ab161921cb"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "nbd: change a parameter\u0027s type to remove a memcpy call\n\nThis memcpy looks so strange, in fact it\u0027s merely a pointer dereference, so I\nchange the parameter\u0027s type to refer it more directly, this could make the\nmemcpy not needed anymore.\n\nIn the function nbd_read_stat where nbd_find_request is only once called, the\nparameter served should be transformed accordingly.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d2c9740b499f959ed513375b6e35c2ab161921cb",
      "tree": "a7add684a7cf1dcfd5ff8d3ce60e071fca55cf80",
      "parents": [
        "04fc8bbcf5eb25fa2aec290b302a9878dde20168"
      ],
      "author": {
        "name": "Denis Cheng",
        "email": "crquan@gmail.com",
        "time": "Tue Oct 16 23:26:14 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "nbd: use list_for_each_entry_safe to make it more consolidated and readable\n\nThus the traverse of the loop may delete nodes, use the safe version.\n\nSigned-off-by: Denis Cheng \u003ccrquan@gmail.com\u003e\nCc: Paul Clements \u003cpaul.clements@steeleye.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04fc8bbcf5eb25fa2aec290b302a9878dde20168",
      "tree": "4c650a7d30d921e519f51b74f1dc591cf93e7b0b",
      "parents": [
        "4029a9177fb4a3410211d091505a7f8d03a7b15d"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Oct 16 23:26:13 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "kill DECLARE_MUTEX_LOCKED\n\nDECLARE_MUTEX_LOCKED was used for semaphores used as completions and we\u0027ve\ngot rid of them.  Well, except for one in libusual that the maintainer\nexplicitly wants to keep as semaphore.  So convert that useage to an\nexplicit sema_init and kill of DECLARE_MUTEX_LOCKED so that new code is\nreminded to use a completion.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: \"Satyam Sharma\" \u003csatyam.sharma@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": "4029a9177fb4a3410211d091505a7f8d03a7b15d",
      "tree": "0ecad3a0799acf1ed59e527790e1b9e3ebee0995",
      "parents": [
        "eb1f2930609bb01bb3a970f145b5004e5163742a"
      ],
      "author": {
        "name": "Olaf Hering",
        "email": "olaf@aepfle.de",
        "time": "Tue Oct 16 23:26:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "unexport asm/shmparam.h\n\nSHMLBA cant possible be used in userspace, see sparc versions of that header.\n\nDo not export asm/shmparam.h during make headers_install_all\nThis removes another uservisible place of PAGE_SIZE\n\nSigned-off-by: Olaf Hering \u003colaf@aepfle.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb1f2930609bb01bb3a970f145b5004e5163742a",
      "tree": "c22f195dbc5f58bba7cd82c4a09136b2a553086e",
      "parents": [
        "94f582f82a85a941678c80c60a3baa8187c74217"
      ],
      "author": {
        "name": "Hans-Christian Egtvedt",
        "email": "hcegtvedt@atmel.com",
        "time": "Tue Oct 16 23:26:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "Driver for the Atmel on-chip SSC on AT32AP and AT91\n\nThe Synchronous Serial Controller (SSC) on Atmel microprocessors are\ncapable of tranceiving many frame based protocols, like I2S.  Tested on the\nAT32AP7000/ATSTK1000.\n\nThis driver is used in the ALSA sound driver for the AT73C213 external DAC\non the ATSTK1000 development board for AVR32.  This sound driver will be\nsubmitted soon.\n\nHardware documentation can be found in the AT32AP7000 data sheet, which can\nbe downloaded from\nhttp://www.atmel.com/dyn/products/datasheets.asp?family_id\u003d682\n\n[akpm@linux-foundation.org: init spinlock at compile time]\nSigned-off-by: Hans-Christian Egtvedt \u003chcegtvedt@atmel.com\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nCc: Andrew Victor \u003candrew@sanpeople.com\u003e\nCc: Patrice Vilchez \u003cpatrice.vilchez@rfo.atmel.com\u003e\nCc: Nicolas Ferre \u003cnicolas.ferre@rfo.atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94f582f82a85a941678c80c60a3baa8187c74217",
      "tree": "83653a3a93b9291d658025a800d5fbed00ee484c",
      "parents": [
        "a36a151e79be1562d6fea3ec4698f23e7102a26f"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Tue Oct 16 23:26:11 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "Force erroneous inclusions of compiler-*.h files to be errors\n\nReplace worthless comments with actual preprocessor errors when including\nthe wrong versions of the compiler.h files.\n\n[akpm@linux-foundation.org: make it work]\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a36a151e79be1562d6fea3ec4698f23e7102a26f",
      "tree": "78a8b9a5cab718521229b452739ab3f27e0457e1",
      "parents": [
        "040b5c6f9503f2d6b35c335f8537bb3035d35547"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Oct 16 23:26:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "zisofs use mutex instead of semaphore\n\nUse mutex instead of semaphore in fs/isofs/compress.c, and remove an\nunnecessary variable.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "040b5c6f9503f2d6b35c335f8537bb3035d35547",
      "tree": "71f1693fbcaf9e2a953e66fdf13bbbc20510b60e",
      "parents": [
        "c4f3b63fe15b4629aa1ec163c95ab30423d0f76a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Oct 16 23:26:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "SLAB_PANIC more (proc, posix-timers, shmem)\n\nThese aren\u0027t modular, so SLAB_PANIC is OK.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c4f3b63fe15b4629aa1ec163c95ab30423d0f76a",
      "tree": "432723f1c7ac2fcff0aa57377c31187140d69145",
      "parents": [
        "a5f2ce3c6024a5bb895647b6bd88ecae5001020a"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Oct 16 23:26:09 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "softlockup: add a /proc tuning parameter\n\nControl the trigger limit for softlockup warnings.  This is useful for\ndebugging softlockups, by lowering the softlockup_thresh to identify\npossible softlockups earlier.\n\nThis patch:\n1. Adds a sysctl softlockup_thresh with valid values of 1-60s\n   (Higher value to disable false positives)\n2. Changes the softlockup printk to print the cpu softlockup time\n\n[akpm@linux-foundation.org: Fix various warnings and add definition of \"two\"]\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5f2ce3c6024a5bb895647b6bd88ecae5001020a",
      "tree": "10bb864bc252489ce6c7070796a6e7966982bb23",
      "parents": [
        "43581a10075492445f65234384210492ff333eba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 16 23:26:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "softlockup watchdog: style cleanups\n\nkernel/softirq.c grew a few style uncleanlinesses in the past few\nmonths, clean that up. No functional changes:\n\n   text    data     bss     dec     hex filename\n   1126      76       4    1206     4b6 softlockup.o.before\n   1129      76       4    1209     4b9 softlockup.o.after\n\n( the 3 bytes .text increase is due to the \"\u003c1\u003e\" appended to one of\n  the printk messages. )\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43581a10075492445f65234384210492ff333eba",
      "tree": "2bcec45ff17207f57f8c4f4744b22411d1aeae6c",
      "parents": [
        "ad3b82795f3f6e641081790409a051312622f2a6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 16 23:26:08 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "softlockup: improve debug output\n\nImprove the debuggability of kernel lockups by enhancing the debug\noutput of the softlockup detector: print the task that causes the lockup\nand try to print a more intelligent backtrace.\n\nThe old format was:\n\n  BUG: soft lockup detected on CPU#1!\n   [\u003cc0105e4a\u003e] show_trace_log_lvl+0x19/0x2e\n   [\u003cc0105f43\u003e] show_trace+0x12/0x14\n   [\u003cc0105f59\u003e] dump_stack+0x14/0x16\n   [\u003cc015f6bc\u003e] softlockup_tick+0xbe/0xd0\n   [\u003cc013457d\u003e] run_local_timers+0x12/0x14\n   [\u003cc01346b8\u003e] update_process_times+0x3e/0x63\n   [\u003cc0145fb8\u003e] tick_sched_timer+0x7c/0xc0\n   [\u003cc0140a75\u003e] hrtimer_interrupt+0x135/0x1ba\n   [\u003cc011bde7\u003e] smp_apic_timer_interrupt+0x6e/0x80\n   [\u003cc0105aa3\u003e] apic_timer_interrupt+0x33/0x38\n   [\u003cc0104f8a\u003e] syscall_call+0x7/0xb\n   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nThe new format is:\n\n  BUG: soft lockup detected on CPU#1! [prctl:2363]\n\n  Pid: 2363, comm:                prctl\n  EIP: 0060:[\u003cc013915f\u003e] CPU: 1\n  EIP is at sys_prctl+0x24/0x18c\n   EFLAGS: 00000213    Not tainted  (2.6.22-cfs-v20 #26)\n  EAX: 00000001 EBX: 000003e7 ECX: 00000001 EDX: f6df0000\n  ESI: 000003e7 EDI: 000003e7 EBP: f6df0fb0 DS: 007b ES: 007b FS: 00d8\n  CR0: 8005003b CR2: 4d8c3340 CR3: 3731d000 CR4: 000006d0\n   [\u003cc0105e4a\u003e] show_trace_log_lvl+0x19/0x2e\n   [\u003cc0105f43\u003e] show_trace+0x12/0x14\n   [\u003cc01040be\u003e] show_regs+0x1ab/0x1b3\n   [\u003cc015f807\u003e] softlockup_tick+0xef/0x108\n   [\u003cc013457d\u003e] run_local_timers+0x12/0x14\n   [\u003cc01346b8\u003e] update_process_times+0x3e/0x63\n   [\u003cc0145fcc\u003e] tick_sched_timer+0x7c/0xc0\n   [\u003cc0140a89\u003e] hrtimer_interrupt+0x135/0x1ba\n   [\u003cc011bde7\u003e] smp_apic_timer_interrupt+0x6e/0x80\n   [\u003cc0105aa3\u003e] apic_timer_interrupt+0x33/0x38\n   [\u003cc0104f8a\u003e] syscall_call+0x7/0xb\n   \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nNote that in the old format we only knew that some system call locked\nup, we didnt know _which_. With the new format we know that it\u0027s at a\nspecific place in sys_prctl(). [which was where i created an artificial\nkernel lockup to test the new format.]\n\nThis is also useful if the lockup happens in user-space - the user-space\nEIP (and other registers) will be printed too. (such a lockup would\neither suggest that the task was running at SCHED_FIFO:99 and looping\nfor more than 10 seconds, or that the softlockup detector has a\nfalse-positive.)\n\nThe task name is printed too first, just in case we dont manage to print\na useful backtrace.\n\n[satyam@infradead.org: fix warning]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Satyam Sharma \u003csatyam@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": "ad3b82795f3f6e641081790409a051312622f2a6",
      "tree": "00b92878bff18903c1546b29bfa07337c104096b",
      "parents": [
        "a115d5caca1a2905ba7a32b408a6042b20179aaa"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 16 23:26:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "softlockup: make asm/irq_regs.h available on every platform\n\nThe softlockup detector would like to use get_irq_regs(), so generalize the\navailability on every Linux architecture.\n\n(It is fine for an architecture to always return NULL to get_irq_regs(),\nwhich it does by default.)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Kumar Gala \u003cgalak@gate.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.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": "a115d5caca1a2905ba7a32b408a6042b20179aaa",
      "tree": "fe79f98f103d0d8776ca7971882e9c21753ae67f",
      "parents": [
        "a3b13c23f186ecb57204580cc1f2dbe9c284953a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 16 23:26:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:47 2007 -0700"
      },
      "message": "fix the softlockup watchdog to actually work\n\nthis Xen related commit:\n\n   commit 966812dc98e6a7fcdf759cbfa0efab77500a8868\n   Author: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\n   Date:   Tue May 8 00:28:02 2007 -0700\n\n       Ignore stolen time in the softlockup watchdog\n\nbroke the softlockup watchdog to never report any lockups. (!)\n\nprint_timestamp defaults to 0, this makes the following condition\nalways true:\n\n\tif (print_timestamp \u003c (touch_timestamp + 1) ||\n\nand we\u0027ll in essence never report soft lockups.\n\napparently the functionality of the soft lockup watchdog was never\nactually tested with that patch applied ...\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3b13c23f186ecb57204580cc1f2dbe9c284953a",
      "tree": "7f7b1de1c0c7e45b6dfc91b1d09639aaf1051291",
      "parents": [
        "3806204ca9017a2cf2d849430f26e2b62666f5b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 16 23:26:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "softlockup: use cpu_clock() instead of sched_clock()\n\nsched_clock() is not a reliable time-source, use cpu_clock() instead.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3806204ca9017a2cf2d849430f26e2b62666f5b2",
      "tree": "e695a56680e296be0e848550fa374af85276c9e7",
      "parents": [
        "97b430320ce7c95f0d5587c5ecc8f6a9d0c698e9"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Oct 16 23:26:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "Remove workaround for unimmunized rcu_dereference from mce_log()\n\nRemove the rmb() from mce_log(), since the immunized version of\nrcu_dereference() makes it unnecessary.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andi Kleen \u003cak@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": "97b430320ce7c95f0d5587c5ecc8f6a9d0c698e9",
      "tree": "3f805b4351c2c4ce68b8de869320f2afc9a805d5",
      "parents": [
        "f6b450d489f2fb4e909447beacad64edb8aa0cda"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Oct 16 23:26:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "Immunize rcu_dereference() against crazy compiler writers\n\nTurns out that compiler writers are a bit more aggressive about optimizing\nthan one might expect.  This patch prevents a number of such optimizations\nfrom messing up rcu_deference().  This is not merely a theoretical problem, as\nevidenced by the rmb() in mce_log().\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Josh Triplett \u003cjosh@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f6b450d489f2fb4e909447beacad64edb8aa0cda",
      "tree": "85240acdf3d5c1cb2f193a72c99e24789acc0a0e",
      "parents": [
        "e4dc1b14d8dc57c3975bf69740e4f5cda6bfba09"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Oct 16 23:26:04 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "Make unregister_binfmt() return void\n\nlist_del() hardly can fail, so checking for return value is pointless\n(and current code always return 0).\n\nNobody really cared that return value anyway.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e4dc1b14d8dc57c3975bf69740e4f5cda6bfba09",
      "tree": "084771b19ecb4335c31cdd91093f7a02b7861e69",
      "parents": [
        "deba0f49b9345f885a53a077623a68cef89c01d5"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@sw.ru",
        "time": "Tue Oct 16 23:26:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "Use list_head in binfmt handling\n\nSwitch single-linked binfmt formats list to usual list_head\u0027s.  This leads\nto one-liners in register_binfmt() and unregister_binfmt().  The downside\nis one pointer more in struct linux_binfmt.  This is not a problem, since\nthe set of registered binfmts on typical box is very small -- (ELF +\nsomething distro enabled for you).\n\nTest-booted, played with executable .txt files, modprobe/rmmod binfmt_misc.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "deba0f49b9345f885a53a077623a68cef89c01d5",
      "tree": "cd8538a476ac76ff41a7070c472b1f28cda536e2",
      "parents": [
        "e423003028183df54f039dfda8b58c49e78c89d7"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Oct 16 23:26:03 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "fs/reiserfs/: cleanups\n\n- remove the following no longer used functions:\n  - bitmap.c: reiserfs_claim_blocks_to_be_allocated()\n  - bitmap.c: reiserfs_release_claimed_blocks()\n  - bitmap.c: reiserfs_can_fit_pages()\n\n- make the following functions static:\n  - inode.c: restart_transaction()\n  - journal.c: reiserfs_async_progress_wait()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Vladimir V. Saveliev \u003cvs@namesys.com\u003e\nCc: Nick Piggin \u003cnpiggin@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": "e423003028183df54f039dfda8b58c49e78c89d7",
      "tree": "56df3ebc51ff86d58b054d9833770e78fb484973",
      "parents": [
        "7a4050791b23c55a451974027d41d72a9b78039b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Oct 16 23:26:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "writeback: don\u0027t propagate AOP_WRITEPAGE_ACTIVATE\n\nThis is a writeback-internal marker but we\u0027re propagating it all the way back\nto userspace!.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a4050791b23c55a451974027d41d72a9b78039b",
      "tree": "f3956a04f24a2406276804124853535a59c0cbc1",
      "parents": [
        "d773ed6b856a96bd6d18b6e04455e3ced0876da4"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Oct 16 23:26:02 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "mm: document tree_lock-\u003ezone.lock lockorder\n\nzone-\u003elock is quite an \"inner\" lock and mostly constrained to page alloc as\nwell, so like slab locks, it probably isn\u0027t something that is critically\nimportant to document here.  However unlike slab locks, zone lock could be\nused more widely in future, and page_alloc.c might possibly have more\nbusiness to do tricky things with pagecache than does slab.  So...  I don\u0027t\nthink it hurts to document it.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@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": "d773ed6b856a96bd6d18b6e04455e3ced0876da4",
      "tree": "f0235be6843ec323aeedcdadbee34a777b6c2690",
      "parents": [
        "ae74138da609c576b221c765efa8b81b2365f465"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:26:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "mm: test and set zone reclaim lock before starting reclaim\n\nIntroduces new zone flag interface for testing and setting flags:\n\n\tint zone_test_and_set_flag(struct zone *zone, zone_flags_t flag)\n\nInstead of setting and clearing ZONE_RECLAIM_LOCKED each time shrink_zone() is\ncalled, this flag is test and set before starting zone reclaim.  Zone reclaim\nstarts in __alloc_pages() when a zone\u0027s watermark fails and the system is in\nzone_reclaim_mode.  If it\u0027s already in reclaim, there\u0027s no need to start again\nso it is simply considered full for that allocation attempt.\n\nThere is a change of behavior with regard to concurrent zone shrinking.  It is\nnow possible for try_to_free_pages() or kswapd to already be shrinking a\nparticular zone when __alloc_pages() starts zone reclaim.  In this case, it is\npossible for two concurrent threads to invoke shrink_zone() for a single zone.\n\nThis change forbids a zone to be in zone reclaim twice, which was always the\nbehavior, but allows for concurrent try_to_free_pages() or kswapd shrinking\nwhen starting zone reclaim.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "ae74138da609c576b221c765efa8b81b2365f465",
      "tree": "514b8ea20d97815a7dfd5fd9ebcb6377b178f2b0",
      "parents": [
        "9aad369e5690cbd0505f75aa1d34c9cacfef48da"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:26:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: convert zone_scan_lock from mutex to spinlock\n\nThere\u0027s no reason to sleep in try_set_zone_oom() or clear_zonelist_oom() if\nthe lock can\u0027t be acquired; it will be available soon enough once the zonelist\nscanning is done.  All other threads waiting for the OOM killer are also\ncontingent on the exiting task being able to acquire the lock in\nclear_zonelist_oom() so it doesn\u0027t make sense to put it to sleep.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "9aad369e5690cbd0505f75aa1d34c9cacfef48da",
      "tree": "ecc8f74699ca6f51052637bdd9a0e27b04d5a492",
      "parents": [
        "172acf60f39046987d3ff7b955f2bcc45de7ddd3"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:26:00 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: add header file to Kbuild as unifdef\n\nPreprocess include/linux/oom.h before exporting it to userspace.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: 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": "172acf60f39046987d3ff7b955f2bcc45de7ddd3",
      "tree": "49c3d7aa17f2f595aa89057ffdb57db075c37654",
      "parents": [
        "3ff566963ce804809af9e32331b287eedeeff501"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: prevent including sched.h in header file\n\nIt\u0027s not necessary to include all of linux/sched.h in linux/oom.h.  Instead,\nsimply include prototypes for the relevant structs and include linux/types.h\nfor gfp_t.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: 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": "3ff566963ce804809af9e32331b287eedeeff501",
      "tree": "dd71c5613b27e8c309d7bbe48798e6cd5c4145cc",
      "parents": [
        "bbe373f2c60b2aa36c3231734a5afc5271a06718"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: do not take callback_mutex\n\nSince no task descriptor\u0027s \u0027cpuset\u0027 field is dereferenced in the execution of\nthe OOM killer anymore, it is no longer necessary to take callback_mutex.\n\n[akpm@linux-foundation.org: restore cpuset_lock for other patches]\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "bbe373f2c60b2aa36c3231734a5afc5271a06718",
      "tree": "00146d69594672ca41e35be8ff9b349e8751ab5c",
      "parents": [
        "7213f5066fc8a17c78389fe245de522b5cf0648a"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: compare cpuset mems_allowed instead of exclusive ancestors\n\nInstead of testing for overlap in the memory nodes of the the nearest\nexclusive ancestor of both current and the candidate task, it is better to\nsimply test for intersection between the task\u0027s mems_allowed in their task\ndescriptors.  This does not require taking callback_mutex since it is only\nused as a hint in the badness scoring.\n\nTasks that do not have an intersection in their mems_allowed with the current\ntask are not explicitly restricted from being OOM killed because it is quite\npossible that the candidate task has allocated memory there before and has\nsince changed its mems_allowed.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "7213f5066fc8a17c78389fe245de522b5cf0648a",
      "tree": "76e33ed1e0bfa62cb6c2e05bd4bbf79f37ca4796",
      "parents": [
        "fe071d7e8aae5745c009c808bb8933f22a9e305a"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: suppress extraneous stack and memory dump\n\nSuppresses the extraneous stack and memory dump when a parallel OOM killing\nhas been found.  There\u0027s no need to fill the ring buffer with this information\nif its already been printed and the condition that triggered the previous OOM\nkiller has not yet been alleviated.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "fe071d7e8aae5745c009c808bb8933f22a9e305a",
      "tree": "757dc7c41a7b56974c383743103fb711c976c288",
      "parents": [
        "ff0ceb9deb6eb017f52900b708d49cfa77bf25fb"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:46 2007 -0700"
      },
      "message": "oom: add oom_kill_allocating_task sysctl\n\nAdds a new sysctl, \u0027oom_kill_allocating_task\u0027, which will automatically kill\nthe OOM-triggering task instead of scanning through the tasklist to find a\nmemory-hogging target.  This is helpful for systems with an insanely large\nnumber of tasks where scanning the tasklist significantly degrades\nperformance.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "ff0ceb9deb6eb017f52900b708d49cfa77bf25fb",
      "tree": "aa33fef12afb05cb2644e7ae38b79ef6dd8ba59d",
      "parents": [
        "098d7f128a4e53cb64930628915ac767785e0e60"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:56 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "oom: serialize out of memory calls\n\nA final allocation attempt with a very high watermark needs to be attempted\nbefore invoking out_of_memory().  OOM killer serialization needs to occur\nbefore this final attempt, otherwise tasks attempting to OOM-lock all zones in\nits zonelist may spin and acquire the lock unnecessarily after the OOM\ncondition has already been alleviated.\n\nIf the final allocation does succeed, the zonelist is simply OOM-unlocked and\n__alloc_pages() returns the page.  Otherwise, the OOM killer is invoked.\n\nIf the task cannot acquire OOM-locks on all zones in its zonelist, it is put\nto sleep and the allocation is retried when it gets rescheduled.  One of its\nzones is already marked as being in the OOM killer so it\u0027ll hopefully be\ngetting some free memory soon, at least enough to satisfy a high watermark\nallocation attempt.  This prevents needlessly killing a task when the OOM\ncondition would have already been alleviated if it had simply been given\nenough time.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "098d7f128a4e53cb64930628915ac767785e0e60",
      "tree": "ed3cab1daecab7f2a64b27deed190df3ec218789",
      "parents": [
        "e815af95f94914993bbad279c71cf5fef9f4eaac"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:55 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "oom: add per-zone locking\n\nOOM killer synchronization should be done with zone granularity so that memory\npolicy and cpuset allocations may have their corresponding zones locked and\nallow parallel kills for other OOM conditions that may exist elsewhere in the\nsystem.  DMA allocations can be targeted at the zone level, which would not be\npossible if locking was done in nodes or globally.\n\nSynchronization shall be done with a variation of \"trylocks.\" The goal is to\nput the current task to sleep and restart the failed allocation attempt later\nif the trylock fails.  Otherwise, the OOM killer is invoked.\n\nEach zone in the zonelist that __alloc_pages() was called with is checked for\nthe newly-introduced ZONE_OOM_LOCKED flag.  If any zone has this flag present,\nthe \"trylock\" to serialize the OOM killer fails and returns zero.  Otherwise,\nall the zones have ZONE_OOM_LOCKED set and the try_set_zone_oom() function\nreturns non-zero.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "e815af95f94914993bbad279c71cf5fef9f4eaac",
      "tree": "492e0d3e8d3303f37cf9fb0beecf952a1c828c53",
      "parents": [
        "70e24bdf6d2fead14631e72a07fba012400c521e"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:54 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "oom: change all_unreclaimable zone member to flags\n\nConvert the int all_unreclaimable member of struct zone to unsigned long\nflags.  This can now be used to specify several different zone flags such as\nall_unreclaimable and reclaim_in_progress, which can now be removed and\nconverted to a per-zone flag.\n\nFlags are set and cleared as follows:\n\n\tzone_set_flag(struct zone *zone, zone_flags_t flag)\n\tzone_clear_flag(struct zone *zone, zone_flags_t flag)\n\nDefines the first zone flags, ZONE_ALL_UNRECLAIMABLE and ZONE_RECLAIM_LOCKED,\nwhich have the same semantics as the old zone-\u003eall_unreclaimable and\nzone-\u003ereclaim_in_progress, respectively.  Also converts all current users that\nset or clear either flag to use the new interface.\n\nHelper functions are defined to test the flags:\n\n\tint zone_is_all_unreclaimable(const struct zone *zone)\n\tint zone_is_reclaim_locked(const struct zone *zone)\n\nAll flag operators are of the atomic variety because there are currently\nreaders that are implemented that do not take zone-\u003elock.\n\n[akpm@linux-foundation.org: add needed include]\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "70e24bdf6d2fead14631e72a07fba012400c521e",
      "tree": "2c00056dfdf90f733876c717159bb8bbf9f440fe",
      "parents": [
        "5a3135c2e77fe88cdea20b5e3f4761068b799ac2"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "oom: move constraints to enum\n\nThe OOM killer\u0027s CONSTRAINT definitions are really more appropriate in an\nenum, so define them in include/linux/oom.h.\n\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: 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": "5a3135c2e77fe88cdea20b5e3f4761068b799ac2",
      "tree": "d82b0568722d285673251210716801e6fc4a90ed",
      "parents": [
        "4ba9b9d0ba0a49d91fa6417c7510ee36f48cf957"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Oct 16 23:25:53 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "oom: move prototypes to appropriate header file\n\nMove the OOM killer\u0027s extern function prototypes to include/linux/oom.h and\ninclude it where necessary.\n\n[clg@fr.ibm.com: build fix]\nCc: Andrea Arcangeli \u003candrea@suse.de\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.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": "4ba9b9d0ba0a49d91fa6417c7510ee36f48cf957",
      "tree": "191b4f45f926e44b882b1e87a9a85dc12230b892",
      "parents": [
        "b811c202a0edadaac7242ab834fe7ba409978ae7"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Oct 16 23:25:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "Slab API: remove useless ctor parameter and reorder parameters\n\nSlab constructors currently have a flags parameter that is never used.  And\nthe order of the arguments is opposite to other slab functions.  The object\npointer is placed before the kmem_cache pointer.\n\nConvert\n\n        ctor(void *object, struct kmem_cache *s, unsigned long flags)\n\nto\n\n        ctor(struct kmem_cache *s, void *object)\n\nthroughout the kernel\n\n[akpm@linux-foundation.org: coupla fixes]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b811c202a0edadaac7242ab834fe7ba409978ae7",
      "tree": "339a29474e6b1abfd5c172bbe57484e5569d8b7e",
      "parents": [
        "3e26c149c358529b1605f8959341d34bc4b880a3"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Oct 16 23:25:51 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "SLUB: simplify IRQ off handling\n\nMove irq handling out of new slab into __slab_alloc.  That is useful for\nMathieu\u0027s cmpxchg_local patchset and also allows us to remove the crude\nlocal_irq_off in early_kmem_cache_alloc().\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e26c149c358529b1605f8959341d34bc4b880a3",
      "tree": "9d173b1753b86bcf03a8591e2509e3162234447c",
      "parents": [
        "04fbfdc14e5f48463820d6b9807daa5e9c92c51f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: dirty balancing for tasks\n\nBased on ideas of Andrew:\n  http://marc.info/?l\u003dlinux-kernel\u0026m\u003d102912915020543\u0026w\u003d2\n\nScale the bdi dirty limit inversly with the tasks dirty rate.\nThis makes heavy writers have a lower dirty limit than the occasional writer.\n\nAndrea proposed something similar:\n  http://lwn.net/Articles/152277/\n\nThe main disadvantage to his patch is that he uses an unrelated quantity to\nmeasure time, which leaves him with a workload dependant tunable. Other than\nthat the two approaches appear quite similar.\n\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "04fbfdc14e5f48463820d6b9807daa5e9c92c51f",
      "tree": "c62905212c8c6373b2258c7f528398d3c831b075",
      "parents": [
        "145ca25eb2fbd20d4faf1bad4628c7650332058f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:50 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: per device dirty threshold\n\nScale writeback cache per backing device, proportional to its writeout speed.\n\nBy decoupling the BDI dirty thresholds a number of problems we currently have\nwill go away, namely:\n\n - mutual interference starvation (for any number of BDIs);\n - deadlocks with stacked BDIs (loop, FUSE and local NFS mounts).\n\nIt might be that all dirty pages are for a single BDI while other BDIs are\nidling. By giving each BDI a \u0027fair\u0027 share of the dirty limit, each one can have\ndirty pages outstanding and make progress.\n\nA global threshold also creates a deadlock for stacked BDIs; when A writes to\nB, and A generates enough dirty pages to get throttled, B will never start\nwriteback until the dirty pages go away. Again, by giving each BDI its own\n\u0027independent\u0027 dirty limit, this problem is avoided.\n\nSo the problem is to determine how to distribute the total dirty limit across\nthe BDIs fairly and efficiently. A DBI that has a large dirty limit but does\nnot have any dirty pages outstanding is a waste.\n\nWhat is done is to keep a floating proportion between the DBIs based on\nwriteback completions. This way faster/more active devices get a larger share\nthan slower/idle devices.\n\n[akpm@linux-foundation.org: fix warnings]\n[hugh@veritas.com: Fix occasional hang when a task couldn\u0027t get out of balance_dirty_pages]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "145ca25eb2fbd20d4faf1bad4628c7650332058f",
      "tree": "ee5bebd5b7b1f0ced5e30c8f29f1ff5301aa9d0a",
      "parents": [
        "69cb51d18c1ed593009d9a620cac49d0dcf15dc8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "lib: floating proportions\n\nGiven a set of objects, floating proportions aims to efficiently give the\nproportional \u0027activity\u0027 of a single item as compared to the whole set. Where\n\u0027activity\u0027 is a measure of a temporal property of the items.\n\nIt is efficient in that it need not inspect any other items of the set\nin order to provide the answer. It is not even needed to know how many\nother items there are.\n\nIt has one parameter, and that is the period of \u0027time\u0027 over which the\n\u0027activity\u0027 is measured.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69cb51d18c1ed593009d9a620cac49d0dcf15dc8",
      "tree": "f26a1245b638e7421a0afd93305fd1c556867d49",
      "parents": [
        "c9e51e4180696aa67915ec5665e4ec74125565de"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:48 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: count writeback pages per BDI\n\nCount per BDI writeback pages.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9e51e4180696aa67915ec5665e4ec74125565de",
      "tree": "d66e1427b16e56bc7da0dfb583a6d8edb55a2c3e",
      "parents": [
        "b2e8fb6efa209c82203c79b491b5bc952d44aa57"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: count reclaimable pages per BDI\n\nCount per BDI reclaimable pages; nr_reclaimable \u003d nr_dirty + nr_unstable.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2e8fb6efa209c82203c79b491b5bc952d44aa57",
      "tree": "e4c82e3f2c70a188ced7126435bf153f5f6c4a1c",
      "parents": [
        "e0bf68ddec4f4f90e5871404be4f1854c17f3120"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: scalable bdi statistics counters\n\nProvide scalable per backing_dev_info statistics counters.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0bf68ddec4f4f90e5871404be4f1854c17f3120",
      "tree": "36203a3558cbe26d698bed18be69b3822fb5eef2",
      "parents": [
        "dc62a30e274d003a4d08fb888f1520add4b21373"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:45 2007 -0700"
      },
      "message": "mm: bdi init hooks\n\nprovide BDI constructor/destructor hooks\n\n[akpm@linux-foundation.org: compile fix]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc62a30e274d003a4d08fb888f1520add4b21373",
      "tree": "15835cabc7b9fbc6b213be6f7c0fa5003e44fdb3",
      "parents": [
        "833f4077bf7c2dcff6e31526e03ec2ad91c88581"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_init_irq\n\nprovide a way to tell lockdep about percpu_counters that are supposed to be\nused from irq safe contexts.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "833f4077bf7c2dcff6e31526e03ec2ad91c88581",
      "tree": "80916540be846267342c3e5e4a6255c2c18b44d5",
      "parents": [
        "bf1d89c81352f6eca72d0c10cfee3dba29ef5efb"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_init error handling\n\nalloc_percpu can fail, propagate that error.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf1d89c81352f6eca72d0c10cfee3dba29ef5efb",
      "tree": "4154acea12a0273ffbc3eafe39530b2e25aa4ed5",
      "parents": [
        "52d9f3b4090922f34497ace82bd062d80a465a29"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:45 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_count_sum()\n\nProvide an accurate version of percpu_counter_read.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "52d9f3b4090922f34497ace82bd062d80a465a29",
      "tree": "77ee238498a5b205fa80e58b41212a9e3334c8bf",
      "parents": [
        "3a587f47b82f96f19318c036e7b979fcd5c3848f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_sum_positive\n\n s/percpu_counter_sum/\u0026_positive/\n\nBecause its consitent with percpu_counter_read*\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a587f47b82f96f19318c036e7b979fcd5c3848f",
      "tree": "84b3254a7ea7524784f7e262d651cc332b3b0063",
      "parents": [
        "20e89767096392a2cb2404437d3d181b8827af38"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:44 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_set\n\nProvide a method to set a percpu counter to a specified value.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20e89767096392a2cb2404437d3d181b8827af38",
      "tree": "a20dd2e0c987d12e9161d5784a58c55f4aa0862f",
      "parents": [
        "252e0ba6b77dcfae448fa2fbaf796e8a83839e75"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: make percpu_counter_add take s64\n\npercpu_counter is a s64 counter, make _add consitent.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "252e0ba6b77dcfae448fa2fbaf796e8a83839e75",
      "tree": "f21bcd6994b65ba947b41ae7d2519a960185a029",
      "parents": [
        "3cb4f9fa0c5f3ded9f70f85b70ee6d429834f911"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter variable batch\n\nBecause the current batch setup has an quadric error bound on the counter,\nallow for an alternative setup.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3cb4f9fa0c5f3ded9f70f85b70ee6d429834f911",
      "tree": "d1f45445fa98bd41a2f8986781f7c62b470a6b8d",
      "parents": [
        "aa0dff2d09bfa50b7d02714a45920c64568e699d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_sub\n\nHugh spotted that some code does:\n  percpu_counter_add(\u0026counter, -unsignedlong)\n\nwhich, when the amount argument is of type s32, sort-of works thanks to\ntwo\u0027s-complement. However when we\u0027d change the type to s64 this breaks on 32bit\nmachines, because the promotion rules zero extend the unsigned number.\n\nProvide percpu_counter_sub() to hide the s64 cast. That is:\n  percpu_counter_sub(\u0026counter, foo)\nis equal to:\n  percpu_counter_add(\u0026counter, -(s64)foo);\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aa0dff2d09bfa50b7d02714a45920c64568e699d",
      "tree": "ef94abad6a7c82da3ef9ecfb296d9bc1d3d4efb6",
      "parents": [
        "c4dc4beed23827e155d7cbc2a1ffa3949eddd194"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 16 23:25:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Oct 17 08:42:44 2007 -0700"
      },
      "message": "lib: percpu_counter_add\n\n s/percpu_counter_mod/percpu_counter_add/\n\nBecause its a better name, _mod implies modulo.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "c4dc4beed23827e155d7cbc2a1ffa3949eddd194"
}
