)]}'
{
  "log": [
    {
      "commit": "eb71c87a492b7090ff9e8ac46912c480a1687e38",
      "tree": "1136213dee0f942866b6c2c65de7e7c63ca94fda",
      "parents": [
        "d384ea691fe4ea8c2dd5b9b8d9042eb181776f18"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 24 14:27:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 24 14:44:01 2006 -0700"
      },
      "message": "Add some basic resume trace facilities\n\nConsidering that there isn\u0027t a lot of hw we can depend on during resume,\nthis is about as good as it gets.\n\nThis is x86-only for now, although the basic concept (and most of the\ncode) will certainly work on almost any platform.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "125e18745f16685f69a34fd6130d47598fc4bf54",
      "tree": "c97ed94b0525a572efa1bd4990a55b18be5d781d",
      "parents": [
        "78ce89c92bc6eaf5933b5664bff64253a7103bd7"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Jun 23 02:06:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:08 2006 -0700"
      },
      "message": "[PATCH] More BUG_ON conversion\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nAcked-by: \"Salyzyn, Mark\" \u003cmark_salyzyn@adaptec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "908dcecda1d18803b5823f30e6c47d2882dc0cf1",
      "tree": "2e40b7484baa65af9aa4460ae958d445725f484f",
      "parents": [
        "a5d6839b75ca4a29b5e0a5595914a8715e8f746d"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Fri Jun 23 02:06:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:08 2006 -0700"
      },
      "message": "[PATCH] adjust handle_IRR_event() return type\n\nCorrect the return type of handle_IRQ_event() (inconsistency noticed during\nXen development), and remove redundant declarations.  The return type\nadjustment required breaking out the definition of irqreturn_t into a\nseparate header, in order to satisfy current include order dependencies.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\n\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Hirokazu Takata \u003ctakata.hirokazu@renesas.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3439dd86e34580384d3b58cf8d54a9283cd7a342",
      "tree": "b421244c25d96e83a744576ad543587339e581fb",
      "parents": [
        "626ab0e69d376fa07599af669af8ba92d58e87c1"
      ],
      "author": {
        "name": "Porpoise",
        "email": "porpoise.chiang@gmail.com",
        "time": "Fri Jun 23 02:05:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:08 2006 -0700"
      },
      "message": "[PATCH] When CONFIG_BASE_SMALL\u003d1, cascade() may enter an infinite loop\n\nWhen CONFIG_BASE_SAMLL\u003d1, cascade() in may enter the infinite loop.\nBecause of CONFIG_BASE_SMALL\u003d1(TVR_BITS\u003d6 and TVN_BITS\u003d4), the list\nbase-\u003etv5 may cascade into base-\u003etv5.  So, the kernel enters the infinite\nloop in the function cascade().\n\nI created a test module to verify this bug, and a patch to fix it.\n\n#include \u003clinux/kernel.h\u003e\n#include \u003clinux/module.h\u003e\n#include \u003clinux/init.h\u003e\n#include \u003clinux/timer.h\u003e\n#if 0\n#include \u003clinux/kdb.h\u003e\n#else\n#define kdb_printf printk\n#endif\n\n#define TVN_BITS (CONFIG_BASE_SMALL ? 4 : 6)\n#define TVR_BITS (CONFIG_BASE_SMALL ? 6 : 8)\n#define TVN_SIZE (1 \u003c\u003c TVN_BITS)\n#define TVR_SIZE (1 \u003c\u003c TVR_BITS)\n#define TVN_MASK (TVN_SIZE - 1)\n#define TVR_MASK (TVR_SIZE - 1)\n\n#define TV_SIZE(N)  (N*TVN_BITS  + TVR_BITS)\n\nstruct timer_list timer0;\nstruct timer_list dummy_timer1;\nstruct timer_list dummy_timer2;\n\nvoid dummy_timer_fun(unsigned long data) {\n}\nunsigned long j\u003d0;\nvoid check_timer_base(unsigned long data)\n{\n        kdb_printf(\"check_timer_base %08x\\n\",jiffies);\n        mod_timer(\u0026timer0,(jiffies \u0026 (~0xFFF)) + 0x1FFF);\n}\n\nint init_module(void)\n{\n        init_timer(\u0026timer0);\n        timer0.data \u003d (unsigned long)0;\n        timer0.function \u003d check_timer_base;\n        mod_timer(\u0026timer0,jiffies+1);\n\n        init_timer(\u0026dummy_timer1);\n        dummy_timer1.data \u003d (unsigned long)0;\n        dummy_timer1.function \u003d dummy_timer_fun;\n\n        init_timer(\u0026dummy_timer2);\n        dummy_timer2.data \u003d (unsigned long)0;\n        dummy_timer2.function \u003d dummy_timer_fun;\n\n        j\u003djiffies;\n        j\u0026\u003d(~((1\u003c\u003cTV_SIZE(3))-1));\n        j+\u003d(1\u003c\u003cTV_SIZE(3));\n        j+\u003d(1\u003c\u003cTV_SIZE(4));\n\n        kdb_printf(\"mod_timer %08x\\n\",j);\n\n        mod_timer(\u0026dummy_timer1, j );\n        mod_timer(\u0026dummy_timer2, j );\n\n        return 0;\n}\n\nvoid cleanup_module()\n{\n        del_timer_sync(\u0026timer0);\n        del_timer_sync(\u0026dummy_timer1);\n        del_timer_sync(\u0026dummy_timer2);\n}\n\n(Cleanups from Oleg)\n\n[oleg@tv-sign.ru: use list_replace_init()]\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "626ab0e69d376fa07599af669af8ba92d58e87c1",
      "tree": "a995e0231e61fab63568bc7bade81dc20c1dae09",
      "parents": [
        "54e73770357142e297c916c7865f5fca7499f69c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Jun 23 02:05:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] list: use list_replace_init() instead of list_splice_init()\n\nlist_splice_init(list, head) does unneeded job if it is known that\nlist_empty(head) \u003d\u003d 1.  We can use list_replace_init() instead.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "862f5f0133f1c8a179dd93adc03d43f8f7e8bac5",
      "tree": "51ef137f4a648859c339988413a19ab3567c032e",
      "parents": [
        "d83015b8f62ee3fcd338f6f009051ed57f77a531"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Fri Jun 23 02:05:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] Doc: add audit \u0026 acct to DocBook\n\nFix one audit kernel-doc description (one parameter was missing).\nAdd audit*.c interfaces to DocBook.\nAdd BSD accounting interfaces to DocBook.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d83015b8f62ee3fcd338f6f009051ed57f77a531",
      "tree": "11e30548e6b07045f8a17aa4661e1cde6f374b18",
      "parents": [
        "55f4e8d156d23709739029afb108932ef94cac94"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@us.ibm.com",
        "time": "Fri Jun 23 02:05:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] Make RCU API inaccessible to non-GPL Linux kernel modules\n\nRemove synchronize_kernel() (deprecated 2-APR-2005 in\nhttp://lkml.org/lkml/2005/4/3/11) and makes the RCU API inaccessible to\nnon-GPL Linux kernel modules (as was announced more than one year ago in\nhttp://lkml.org/lkml/2005/4/3/8).  Tested on x86 and ppc64.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "55f4e8d156d23709739029afb108932ef94cac94",
      "tree": "b8877b3e23dbb82b3fd1fb93ed319a3c5cb1148d",
      "parents": [
        "915a56d2394f4ef70e9cb7115a9bdad778276338"
      ],
      "author": {
        "name": "Jes Sorensen",
        "email": "jes@sgi.com",
        "time": "Fri Jun 23 02:05:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:07 2006 -0700"
      },
      "message": "[PATCH] kernel/sys.c doesn\u0027t need init.h\n\nkernel/sys.c doesn\u0027t have anything in it relying on linux/init.h -\nremove the include.\n\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57ae2508610d50893cb3e3bbb869ff70ff724a2a",
      "tree": "33109c6d78be1b6e5db085a57a4509fcfd88ee95",
      "parents": [
        "deb0e9b234af24f4a827757fae9ff5542a3d2a12"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 23 02:05:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:06 2006 -0700"
      },
      "message": "[PATCH] CONFIG_NET\u003dn build fix\n\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83d4e6e7fba0b2a01092f0cf14ba2e33bd1253e9",
      "tree": "4fa75ffb35970e27762623edbc1f725171d2b0b5",
      "parents": [
        "e6022603b9aa7d61d20b392e69edcdbbc1789969"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Fri Jun 23 02:05:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:05 2006 -0700"
      },
      "message": "[PATCH] make noirqdebug/irqfixup __read_mostly, add (un)likely()\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "89d0cf01c0aa9e8241cc3703a359ecd6abf3c28a",
      "tree": "149611b8bbd430d482299f5b976da6a6cfc1e718",
      "parents": [
        "d20d04bc9befbd752092b4aa42bb8254a1af0776"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Fri Jun 23 02:05:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:04 2006 -0700"
      },
      "message": "[PATCH] invert irq/migration.c brach prediction\n\nIf you get to that point in the code it means that desc-\u003emove_irq is set,\npending_irq_cpumask[irq] and cpu_online_map should have a value.  Still\npretty good chance anding those two you\u0027ll still have a value.  So these\ntwo branch predictors should be inverted.\n\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8e0a43d8fa953179505869ec28de78550246e795",
      "tree": "1fc56d6337c487952ab008b8ff063b2a2d48ee02",
      "parents": [
        "6e6672604773b9bae44d88d38afdf0763c104b1c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 23 02:05:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:04 2006 -0700"
      },
      "message": "[PATCH] cond_resched() might_sleep() fix\n\nadd the __might_sleep() check back to cond_resched().\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e6672604773b9bae44d88d38afdf0763c104b1c",
      "tree": "fa597c1b9d46d3f7ed6743f2230a0ac9813693a7",
      "parents": [
        "538c5902b81cc384e93ad3834b6d4a0b3fcb2285"
      ],
      "author": {
        "name": "Prasanna Meda",
        "email": "mlp@google.com",
        "time": "Fri Jun 23 02:05:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:04 2006 -0700"
      },
      "message": "[PATCH] dup fd error fix\n\nSet errorp in dup_fd, it will be used in sys_unshare also.\n\nSigned-off-by: Prasanna Meda \u003cmlp@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ae26f1b3159f3acb21ae1e866c3c7e16edd450f",
      "tree": "28a86cc8682ad5b247f597773572e410b9457d72",
      "parents": [
        "32797f976d62af709943aae38a9457b5a6dbcd8a"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 23 02:05:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:03 2006 -0700"
      },
      "message": "[PATCH] mmput() might sleep\n\nexit_aio() and exit_mmap() can sleep.  But it\u0027s easy to accidentally call\nmmput() from inside locks.\n\nCc: Dave Peterson \u003cdsp@llnl.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c330dda908b5a46469a997eea90b66f2f9f02b34",
      "tree": "aad52aa4e127c366ca185c2122650d7dbb3437a0",
      "parents": [
        "24bbb1faf3f0420eb252dd0fdc1e477b1d4d73bd"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Fri Jun 23 02:05:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:02 2006 -0700"
      },
      "message": "[PATCH] Add a sysfs file to determine if a kexec kernel is loaded\n\nCreate two files in /sys/kernel, kexec_loaded and kexec_crash_loaded.  Each\nfile contains a simple boolean value indicating whether the relevant kernel\nhas been loaded into memory.  The motivation for this is geared around\nsupport.\n\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "968808b8956e332e556b1eae9b4f7df77518f53b",
      "tree": "e90598c5640df24a250aa0beb3e526f2571ed6e2",
      "parents": [
        "7bff24e255ee11ecbc304315a252fcbd84f9ffce"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 23 02:04:48 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:43:00 2006 -0700"
      },
      "message": "[PATCH] swsusp: use less memory during resume\n\nMake swsusp allocate only as much memory as needed to store the image data\nand metadata during resume.\n\nWithout this patch swsusp additionally allocates many page frames that will\nconflict with the \"original\" locations of the image data and are considered\nas \"unsafe\", treating them as \"eaten\" pages (ie.  allocated but unusable).\n\nThe patch makes swsusp allocate as many pages as it\u0027ll need to store the\ndata read from the image in one shot, creating a list of allocated \"safe\"\npages, and use the observation that all pages allocated by it are marked\nwith the PG_nosave and PG_nosave_free flags set.   Namely, when it\u0027s about\nto load an image page, swsusp can check whether the page frame\ncorresponding to the \"original\" location of this page has been allocated\n(ie.  if the page frame has the PG_nosave and PG_nosave_free flags set) and\nif so, it can load the page directly into this page frame.   Otherwise it\nuses an allocated \"safe\" page from the list to store the data that will be\ncopied to their \"original\" location later on.\n\nThis allows us to save many page copyings and page allocations during\nresume and in the future it may allow us to load images greater than 50% of\nthe normal zone.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: \"Pavel Machek\" \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7bff24e255ee11ecbc304315a252fcbd84f9ffce",
      "tree": "23397d27bad855d8b46da23ffc3d9ae5cc0c596c",
      "parents": [
        "a938c356d5b007fe6d28251c0ddbf6c11d0d92b5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 23 02:04:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:59 2006 -0700"
      },
      "message": "[PATCH] kernel/power/snapshot.c: cleanups\n\n- make needlessly global functions static\n- make dummy functions static inline\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a938c356d5b007fe6d28251c0ddbf6c11d0d92b5",
      "tree": "e55827ad27bf0a1b3a0cae821219a863c25173b7",
      "parents": [
        "3e3318dee0878d42ed62a19c292a2ac284135db3"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 23 02:04:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: take lowmem reserves into account\n\nswsusp allocates memory from the normal zone, so it cannot use lowmem\nreserve pages from the lower zones.  Therefore it should not count these\npages as available to it.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ce4ab0012b32c1a4a1d6e934aeb73bf3151c48d9",
      "tree": "83b5ba44e93eeb8b72fe14028ac25943f77844fe",
      "parents": [
        "82dcaafc92fdfbe2c1d6c50b9f5e17d533caf950"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Jun 23 02:04:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:59 2006 -0700"
      },
      "message": "[PATCH] swsusp: add architecture special saveable pages support\n\n1. Add architecture specific pages save/restore support.  Next two patches\n   will use this to save/restore \u0027ACPI NVS\u0027 pages.\n\n2. Allow reserved pages \u0027nosave\u0027.  This could avoid save/restore BIOS\n   reserved pages.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Nigel Cunningham \u003cnigel@suspend2.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b61b910e99059abdd54c93aa70e84e076e33d16",
      "tree": "fe2cd431dc39521a0f2d30e22c9bd3eb3e1bc317",
      "parents": [
        "afa024c3dbccf026e45121f4b9de54cda48edbea"
      ],
      "author": {
        "name": "Zhang Yanmin",
        "email": "yanmin.zhang@intel.com",
        "time": "Fri Jun 23 02:04:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:57 2006 -0700"
      },
      "message": "[PATCH] x86: kernel irq balance doesn\u0027t work\n\nOn i386, kernel irq balance doesn\u0027t work.\n\n1) In function do_irq_balance, after kernel finds the min_loaded cpu but\n   before calling set_pending_irq to really pin the selected_irq to the\n   target cpu, kernel does a cpus_and with irq_affinity[selected_irq].\n   Later on, when the irq is acked, kernel would calls\n   move_native_irq\u003d\u003edesc-\u003ehandler-\u003eset_affinity to change the irq affinity.\n    However, every function pointed by\n   hw_interrupt_type-\u003eset_affinity(unsigned int irq, cpumask_t cpumask)\n   always changes irq_affinity[irq] to cpumask.  Next time when recalling\n   do_irq_balance, it has to do cpu_ands again with\n   irq_affinity[selected_irq], but irq_affinity[selected_irq] already\n   becomes one cpu selected by the first irq balance.\n\n2) Function balance_irq in file arch/i386/kernel/io_apic.c has the same\n   issue.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22fb52dd736a62e24c44c50739007496265dc38c",
      "tree": "06cc6dcff21df6e18f189c6895cf6aa313e7a8ea",
      "parents": [
        "e7834f8fccd791225a1cf91c2c3e740ad8e2e145"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 23 02:04:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:54 2006 -0700"
      },
      "message": "[PATCH] SELinux: add security hook call to mediate attach_task (kernel/cpuset.c)\n\nAdd a security hook call to enable security modules to control the ability\nto attach a task to a cpuset.  While limited control over this operation is\npossible via permission checks on the pseudo fs interface, those checks are\nnot sufficient to control access to the target task, which is looked up in\nthis function.  The existing task_setscheduler hook is re-used for this\noperation since this falls under the same class of operations.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nAcked-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7834f8fccd791225a1cf91c2c3e740ad8e2e145",
      "tree": "8f48d03d7b1dc32d326825fef1d1c54117a06ac8",
      "parents": [
        "03e68060636e05989ea94bcb671ab633948f328c"
      ],
      "author": {
        "name": "David Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Fri Jun 23 02:03:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] SELinux: add security hooks to {get,set}affinity\n\nThis patch adds LSM hooks into the setaffinity and getaffinity functions to\nenable security modules to control these operations between tasks with\ntask_setscheduler and task_getscheduler LSM hooks.\n\nSigned-off-by: David Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nAcked-by:  Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9216dfad4fc97ab639ef0885efc713f3d7a20d5b",
      "tree": "546e301f3181f56133509327f9c5ed035dd4b50d",
      "parents": [
        "1b2db9fb7adc4d67d9ce7d16ce79c41ee84730fe"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] move_pages: fix 32 -\u003e 64 bit compat function\n\nThe definition of the third parameter is a pointer to an array of virtual\naddresses which give us some trouble.  The existing code calculated the\nwrong address in the array since I used void to avoid having to specify a\ntype.\n\nI now use the correct type \"compat_uptr_t __user *\" in the definition of\nthe function in kernel/compat.c.\n\nHowever, I used __u32 in syscalls.h.  Would have to include compat.h there\nin order to provide the same definition which would generate an ugly\ninclude situation.\n\nOn both ia64 and x86_64 compat_uptr_t is u32. So this works although\nparameter declarations differ.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b2db9fb7adc4d67d9ce7d16ce79c41ee84730fe",
      "tree": "d3fc0962ada099d741717d36a3f658c15b20c65a",
      "parents": [
        "b63d64a324056cf3c2f7a1a1fe8134100edbb058"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] sys_move_pages: 32bit support (i386, x86_64)\n\nsys_move_pages() support for 32bit (i386 plus x86_64 compat layer)\n\nAdd support for move_pages() on i386 and also add the compat functions\nnecessary to run 32 bit binaries on x86_64.\n\nAdd compat_sys_move_pages to the x86_64 32bit binary layer.  Note that it is\nnot up to date so I added the missing pieces.  Not sure if this is done the\nright way.\n\n[akpm@osdl.org: compile fix]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "742755a1d8ce2b548428f7aacf1758b4bba50080",
      "tree": "53426657e14dc19a694d418274c9a6f4dcb8a997",
      "parents": [
        "95a402c3847cc16f4ba03013cd01404fa0f14c2e"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Jun 23 02:03:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:53 2006 -0700"
      },
      "message": "[PATCH] page migration: sys_move_pages(): support moving of individual pages\n\nmove_pages() is used to move individual pages of a process. The function can\nbe used to determine the location of pages and to move them onto the desired\nnode. move_pages() returns status information for each page.\n\nlong move_pages(pid, number_of_pages_to_move,\n\t\taddresses_of_pages[],\n\t\tnodes[] or NULL,\n\t\tstatus[],\n\t\tflags);\n\nThe addresses of pages is an array of void * pointing to the\npages to be moved.\n\nThe nodes array contains the node numbers that the pages should be moved\nto. If a NULL is passed instead of an array then no pages are moved but\nthe status array is updated. The status request may be used to determine\nthe page state before issuing another move_pages() to move pages.\n\nThe status array will contain the state of all individual page migration\nattempts when the function terminates. The status array is only valid if\nmove_pages() completed successfullly.\n\nPossible page states in status[]:\n\n0..MAX_NUMNODES\tThe page is now on the indicated node.\n\n-ENOENT\t\tPage is not present\n\n-EACCES\t\tPage is mapped by multiple processes and can only\n\t\tbe moved if MPOL_MF_MOVE_ALL is specified.\n\n-EPERM\t\tThe page has been mlocked by a process/driver and\n\t\tcannot be moved.\n\n-EBUSY\t\tPage is busy and cannot be moved. Try again later.\n\n-EFAULT\t\tInvalid address (no VMA or zero page).\n\n-ENOMEM\t\tUnable to allocate memory on target node.\n\n-EIO\t\tUnable to write back page. The page must be written\n\t\tback in order to move it since the page is dirty and the\n\t\tfilesystem does not provide a migration function that\n\t\twould allow the moving of dirty pages.\n\n-EINVAL\t\tA dirty page cannot be moved. The filesystem does not provide\n\t\ta migration function and has no ability to write back pages.\n\nThe flags parameter indicates what types of pages to move:\n\nMPOL_MF_MOVE\tMove pages that are only mapped by the process.\n\nMPOL_MF_MOVE_ALL Also move pages that are mapped by multiple processes.\n\t\tRequires sufficient capabilities.\n\nPossible return codes from move_pages()\n\n-ENOENT\t\tNo pages found that would require moving. All pages\n\t\tare either already on the target node, not present, had an\n\t\tinvalid address or could not be moved because they were\n\t\tmapped by multiple processes.\n\n-EINVAL\t\tFlags other than MPOL_MF_MOVE(_ALL) specified or an attempt\n\t\tto migrate pages in a kernel thread.\n\n-EPERM\t\tMPOL_MF_MOVE_ALL specified without sufficient priviledges.\n\t\tor an attempt to move a process belonging to another user.\n\n-EACCES\t\tOne of the target nodes is not allowed by the current cpuset.\n\n-ENODEV\t\tOne of the target nodes is not online.\n\n-ESRCH\t\tProcess does not exist.\n\n-E2BIG\t\tToo many pages to move.\n\n-ENOMEM\t\tNot enough memory to allocate control array.\n\n-EFAULT\t\tParameters could not be accessed.\n\nA test program for move_pages() may be found with the patches\non ftp.kernel.org:/pub/linux/kernel/people/christoph/pmig/patches-2.6.17-rc4-mm3\n\nFrom: Christoph Lameter \u003cclameter@sgi.com\u003e\n\n  Detailed results for sys_move_pages()\n\n  Pass a pointer to an integer to get_new_page() that may be used to\n  indicate where the completion status of a migration operation should be\n  placed.  This allows sys_move_pags() to report back exactly what happened to\n  each page.\n\n  Wish there would be a better way to do this. Looks a bit hacky.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Jes Sorensen \u003cjes@trained-monkey.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6277db4ab271862ed599da08d78961c70f00002",
      "tree": "f11b2f82200c95d17e10779b44a6da37bc03965f",
      "parents": [
        "7a7c381d25067b9a2bfe025dfcb16459daec0373"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Jun 23 02:03:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:48 2006 -0700"
      },
      "message": "[PATCH] swsusp: rework memory shrinker\n\nRework the swsusp\u0027s memory shrinker in the following way:\n\n- Simplify balance_pgdat() by removing all of the swsusp-related code\n  from it.\n\n- Make shrink_all_memory() use shrink_slab() and a new function\n  shrink_all_zones() which calls shrink_active_list() and\n  shrink_inactive_list() directly for each zone in a way that\u0027s optimized\n  for suspend.\n\nIn shrink_all_memory() we try to free exactly as many pages as the caller\nasks for, preferably in one shot, starting from easier targets.   If slab\ncaches are huge, they are most likely to have enough pages to reclaim.\n The inactive lists are next (the zones with more inactive pages go first)\netc.\n\nEach time shrink_all_memory() attempts to shrink the active and inactive\nlists for each zone in 5 passes.   In the first pass, only the inactive\nlists are taken into consideration.   In the next two passes the active\nlists are also shrunk, but mapped pages are not reclaimed.   In the last\ntwo passes the active and inactive lists are shrunk and mapped pages are\nreclaimed as well.  The aim of this is to alter the reclaim logic to choose\nthe best pages to keep on resume and improve the responsiveness of the\nresumed system.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fadd8fbd153c12963f8fe3c9ef7f8967f286f98b",
      "tree": "547cdee6203b769773521118a4dd19e95a7ef3fd",
      "parents": [
        "67de648211fa041fe08a0c25241a4980bbb90698"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Fri Jun 23 02:03:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:47 2006 -0700"
      },
      "message": "[PATCH] support for panic at OOM\n\nThis patch adds panic_on_oom sysctl under sys.vm.\n\nWhen sysctl vm.panic_on_oom \u003d 1, the kernel panics intead of killing rogue\nprocesses.  And if vm.panic_on_oom is 0 the kernel will do oom_kill() in\nthe same way as it does today.  Of course, the default value is 0 and only\nroot can modifies it.\n\nIn general, oom_killer works well and kill rogue processes.  So the whole\nsystem can survive.  But there are environments where panic is preferable\nrather than kill some processes.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "726c334223180e3c0197cc980a432681370d4baf",
      "tree": "8327b354bb3dc959a6606051ae6f8d4d035e38a2",
      "parents": [
        "454e2398be9b9fa30433fccc548db34d19aa9958"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jun 23 02:02:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:45 2006 -0700"
      },
      "message": "[PATCH] VFS: Permit filesystem to perform statfs with a known root dentry\n\nGive the statfs superblock operation a dentry pointer rather than a superblock\npointer.\n\nThis complements the get_sb() patch.  That reduced the significance of\nsb-\u003es_root, allowing NFS to place a fake root there.  However, NFS does\nrequire a dentry to use as a target for the statfs operation.  This permits\nthe root in the vfsmount to be used instead.\n\nlinux/mount.h has been added where necessary to make allyesconfig build\nsuccessfully.\n\nInterest has also been expressed for use with the FUSE and XFS filesystems.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "454e2398be9b9fa30433fccc548db34d19aa9958",
      "tree": "1f61cb0c3716a33b661cfc8977e9beeb480a322c",
      "parents": [
        "1ad5544098a69d7dc1fa508cbb17e13a7a952fd8"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Jun 23 02:02:57 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 07:42:45 2006 -0700"
      },
      "message": "[PATCH] VFS: Permit filesystem to override root dentry on mount\n\nExtend the get_sb() filesystem operation to take an extra argument that\npermits the VFS to pass in the target vfsmount that defines the mountpoint.\n\nThe filesystem is then required to manually set the superblock and root dentry\npointers.  For most filesystems, this should be done with simple_set_mnt()\nwhich will set the superblock pointer and then set the root dentry to the\nsuperblock\u0027s s_root (as per the old default behaviour).\n\nThe get_sb() op now returns an integer as there\u0027s now no need to return the\nsuperblock pointer.\n\nThis patch permits a superblock to be implicitly shared amongst several mount\npoints, such as can be done with NFS to avoid potential inode aliasing.  In\nsuch a case, simple_set_mnt() would not be called, and instead the mnt_root\nand mnt_sb would be set directly.\n\nThe patch also makes the following changes:\n\n (*) the get_sb_*() convenience functions in the core kernel now take a vfsmount\n     pointer argument and return an integer, so most filesystems have to change\n     very little.\n\n (*) If one of the convenience function is not used, then get_sb() should\n     normally call simple_set_mnt() to instantiate the vfsmount. This will\n     always return 0, and so can be tail-called from get_sb().\n\n (*) generic_shutdown_super() now calls shrink_dcache_sb() to clean up the\n     dcache upon superblock destruction rather than shrink_dcache_anon().\n\n     This is required because the superblock may now have multiple trees that\n     aren\u0027t actually bound to s_root, but that still need to be cleaned up. The\n     currently called functions assume that the whole tree is rooted at s_root,\n     and that anonymous dentries are not the roots of trees which results in\n     dentries being left unculled.\n\n     However, with the way NFS superblock sharing are currently set to be\n     implemented, these assumptions are violated: the root of the filesystem is\n     simply a dummy dentry and inode (the real inode for \u0027/\u0027 may well be\n     inaccessible), and all the vfsmounts are rooted on anonymous[*] dentries\n     with child trees.\n\n     [*] Anonymous until discovered from another tree.\n\n (*) The documentation has been adjusted, including the additional bit of\n     changing ext2_* into foo_* in the documentation.\n\n[akpm@osdl.org: convert ipath_fs, do other stuff]\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "45c091bb2d453ce4a8b06cf19872ec7a77fc4799",
      "tree": "06fb2e05518ebfba163f8424e028e7faf5672d66",
      "parents": [
        "d588fcbe5a7ba8bba2cebf7799ab2d573717a806",
        "2191fe3e39159e3375f4b7ec1420df149f154101"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 22:11:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 22:11:30 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (139 commits)\n  [POWERPC] re-enable OProfile for iSeries, using timer interrupt\n  [POWERPC] support ibm,extended-*-frequency properties\n  [POWERPC] Extra sanity check in EEH code\n  [POWERPC] Dont look for class-code in pci children\n  [POWERPC] Fix mdelay badness on shared processor partitions\n  [POWERPC] disable floating point exceptions for init\n  [POWERPC] Unify ppc syscall tables\n  [POWERPC] mpic: add support for serial mode interrupts\n  [POWERPC] pseries: Print PCI slot location code on failure\n  [POWERPC] spufs: one more fix for 64k pages\n  [POWERPC] spufs: fail spu_create with invalid flags\n  [POWERPC] spufs: clear class2 interrupt status before wakeup\n  [POWERPC] spufs: fix Makefile for \"make clean\"\n  [POWERPC] spufs: remove stop_code from struct spu\n  [POWERPC] spufs: fix spu irq affinity setting\n  [POWERPC] spufs: further abstract priv1 register access\n  [POWERPC] spufs: split the Cell BE support into generic and platform dependant parts\n  [POWERPC] spufs: dont try to access SPE channel 1 count\n  [POWERPC] spufs: use kzalloc in create_spu\n  [POWERPC] spufs: fix initial state of wbox file\n  ...\n\nManually resolved conflicts in:\n\tdrivers/net/phy/Makefile\n\tinclude/asm-powerpc/spu.h\n"
    },
    {
      "commit": "de047c1bcd7f7bcfbdc29eb5b439fb332594da3f",
      "tree": "ff0d52044559971b8d68aaeb00fc7b6a876b3a3d",
      "parents": [
        "c89681ed7d0e4a61d35bdc12c06c6733b718b2cb"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Thu Jun 22 14:47:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:57 2006 -0700"
      },
      "message": "[PATCH] avoid tasklist_lock at getrusage for multithreaded case too\n\nAvoid taking tasklist_lock for at getrusage for the multithreaded case too.\nWe don\u0027t need to take the tasklist lock for thread traversal of a process\nsince Oleg\u0027s do-__unhash_process-under-siglock.patch and related work.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6cc0719181a7aa8883855140541e7892250e66af",
      "tree": "e5c740230abef71bb4d8367b68602fd294284e89",
      "parents": [
        "04c567d9313e4927b9835361d8ac0318ce65af6b"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Jun 22 14:47:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:56 2006 -0700"
      },
      "message": "[PATCH] suspend_console() warning fix\n\nkernel/power/main.c: In function \u0027suspend_prepare\u0027:\nkernel/power/main.c:89: warning: implicit declaration of function \u0027suspend_console\u0027\nkernel/power/main.c: In function \u0027suspend_finish\u0027:\nkernel/power/main.c:137: warning: implicit declaration of function \u0027resume_console\u0027\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d720024e94de4e8b7f10ee83c532926f3ad5d708",
      "tree": "8f21613c29a26bfbeb334cb0104b8b998b09fbdc",
      "parents": [
        "f893afbe1262e27e91234506f72e17716190dd2f"
      ],
      "author": {
        "name": "Michael LeMay",
        "email": "mdlemay@epoch.ncsc.mil",
        "time": "Thu Jun 22 14:47:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 22 15:05:55 2006 -0700"
      },
      "message": "[PATCH] selinux: add hooks for key subsystem\n\nIntroduce SELinux hooks to support the access key retention subsystem\nwithin the kernel.  Incorporate new flask headers from a modified version\nof the SELinux reference policy, with support for the new security class\nrepresenting retained keys.  Extend the \"key_alloc\" security hook with a\ntask parameter representing the intended ownership context for the key\nbeing allocated.  Attach security information to root\u0027s default keyrings\nwithin the SELinux initialization routine.\n\nHas passed David\u0027s testsuite.\n\nSigned-off-by: Michael LeMay \u003cmdlemay@epoch.ncsc.mil\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d9eaec9e295a84a80b663996d0489fcff3a1dca9",
      "tree": "85cfc09bb5f0eb42d3be7dfbddaad31353307796",
      "parents": [
        "cee4cca740d209bcb4b9857baa2253d5ba4e3fbe",
        "41757106b9ca7867dafb2404d618f947b4786fd7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:37:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 15:37:56 2006 -0700"
      },
      "message": "Merge branch \u0027audit.b21\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b21\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: (25 commits)\n  [PATCH] make set_loginuid obey audit_enabled\n  [PATCH] log more info for directory entry change events\n  [PATCH] fix AUDIT_FILTER_PREPEND handling\n  [PATCH] validate rule fields\u0027 types\n  [PATCH] audit: path-based rules\n  [PATCH] Audit of POSIX Message Queue Syscalls v.2\n  [PATCH] fix se_sen audit filter\n  [PATCH] deprecate AUDIT_POSSBILE\n  [PATCH] inline more audit helpers\n  [PATCH] proc_loginuid_write() uses simple_strtoul() on non-terminated array\n  [PATCH] update of IPC audit record cleanup\n  [PATCH] minor audit updates\n  [PATCH] fix audit_krule_to_{rule,data} return values\n  [PATCH] add filtering by ppid\n  [PATCH] log ppid\n  [PATCH] collect sid of those who send signals to auditd\n  [PATCH] execve argument logging\n  [PATCH] fix deadlocks in AUDIT_LIST/AUDIT_LIST_RULES\n  [PATCH] audit_panic() is audit-internal\n  [PATCH] inotify (5/5): update kernel documentation\n  ...\n\nManual fixup of conflict in unclude/linux/inotify.h\n"
    },
    {
      "commit": "2edc322d420a4cec8dbc184a1220ecd7fa9f8ae6",
      "tree": "e7be2cf442626316b6b6fb212960fe1f77ff2725",
      "parents": [
        "be967b7e2f7747a5ebf2a07ee627d9338491e784",
        "2f3243aebd8df4d9eecaeca04bbff6c7dbfb2142"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:51:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:51:22 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/rbtree-2.6\n\n* git://git.infradead.org/~dwmw2/rbtree-2.6:\n  [RBTREE] Switch rb_colour() et al to en_US spelling of \u0027color\u0027 for consistency\n  Update UML kernel/physmem.c to use rb_parent() accessor macro\n  [RBTREE] Update hrtimers to use rb_parent() accessor macro.\n  [RBTREE] Add explicit alignment to sizeof(long) for struct rb_node.\n  [RBTREE] Merge colour and parent fields of struct rb_node.\n  [RBTREE] Remove dead code in rb_erase()\n  [RBTREE] Update JFFS2 to use rb_parent() accessor macro.\n  [RBTREE] Update eventpoll.c to use rb_parent() accessor macro.\n  [RBTREE] Update key.c to use rb_parent() accessor macro.\n  [RBTREE] Update ext3 to use rb_parent() accessor macro.\n  [RBTREE] Change rbtree off-tree marking in I/O schedulers.\n  [RBTREE] Add accessor macros for colour and parent fields of rb_node\n"
    },
    {
      "commit": "be967b7e2f7747a5ebf2a07ee627d9338491e784",
      "tree": "f42b82601209a52b8ee478e36d8b21543ab03060",
      "parents": [
        "eef11427edcb821b63920219f89379fab84198b9",
        "7bc3312bef4d6f220812500c0de7868fb7625a41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:50:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 20 14:50:31 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (199 commits)\n  [MTD] NAND: Fix breakage all over the place\n  [PATCH] NAND: fix remaining OOB length calculation\n  [MTD] NAND Fixup NDFC merge brokeness\n  [MTD NAND] S3C2410 driver cleanup\n  [MTD NAND] s3c24x0 board: Fix clock handling, ensure proper initialisation.\n  [JFFS2] Check CRC32 on dirent and data nodes each time they\u0027re read\n  [JFFS2] When retiring nextblock, allocate a node_ref for the wasted space\n  [JFFS2] Mark XATTR support as experimental, for now\n  [JFFS2] Don\u0027t trust node headers before the CRC is checked.\n  [MTD] Restore MTD_ROM and MTD_RAM types\n  [MTD] assume mtd-\u003ewritesize is 1 for NOR flashes\n  [MTD NAND] Fix s3c2410 NAND driver so it at least _looks_ like it compiles\n  [MTD] Prepare physmap for 64-bit-resources\n  [JFFS2] Fix more breakage caused by janitorial meddling.\n  [JFFS2] Remove stray __exit from jffs2_compressors_exit()\n  [MTD] Allow alternate JFFS2 mount variant for root filesystem.\n  [MTD] Disconnect struct mtd_info from ABI\n  [MTD] replace MTD_RAM with MTD_GENERIC_TYPE\n  [MTD] replace MTD_ROM with MTD_GENERIC_TYPE\n  [MTD] remove a forgotten MTD_XIP\n  ...\n"
    },
    {
      "commit": "41757106b9ca7867dafb2404d618f947b4786fd7",
      "tree": "6feff3fade7d842e58d535eef4f397ebfb8ae19e",
      "parents": [
        "9c937dcc71021f2dbf78f904f03d962dd9bcc130"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Mon Jun 12 07:48:28 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:29 2006 -0400"
      },
      "message": "[PATCH] make set_loginuid obey audit_enabled\n\nHi,\n\nI was doing some testing and noticed that when the audit system was disabled,\nI was still getting messages about the loginuid being set. The following patch\nmakes audit_set_loginuid look at in_syscall to determine if it should create\nan audit event. The loginuid will continue to be set as long as there is a context.\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c937dcc71021f2dbf78f904f03d962dd9bcc130",
      "tree": "6ab53c1cf1235515307d521cecc4f76afa34e137",
      "parents": [
        "6a2bceec0ea7fdc47aef9a3f2f771c201eaabe5d"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Thu Jun 08 23:19:31 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:28 2006 -0400"
      },
      "message": "[PATCH] log more info for directory entry change events\n\nWhen an audit event involves changes to a directory entry, include\na PATH record for the directory itself.  A few other notable changes:\n\n    - fixed audit_inode_child() hooks in fsnotify_move()\n    - removed unused flags arg from audit_inode()\n    - added audit log routines for logging a portion of a string\n\nHere\u0027s some sample output.\n\nbefore patch:\ntype\u003dSYSCALL msg\u003daudit(1149821605.320:26): arch\u003d40000003 syscall\u003d39 success\u003dyes exit\u003d0 a0\u003dbf8d3c7c a1\u003d1ff a2\u003d804e1b8 a3\u003dbf8d3c7c items\u003d1 ppid\u003d739 pid\u003d800 auid\u003d0 uid\u003d0 gid\u003d0 euid\u003d0 suid\u003d0 fsuid\u003d0 egid\u003d0 sgid\u003d0 fsgid\u003d0 tty\u003dttyS0 comm\u003d\"mkdir\" exe\u003d\"/bin/mkdir\" subj\u003droot:system_r:unconfined_t:s0-s0:c0.c255\ntype\u003dCWD msg\u003daudit(1149821605.320:26):  cwd\u003d\"/root\"\ntype\u003dPATH msg\u003daudit(1149821605.320:26): item\u003d0 name\u003d\"foo\" parent\u003d164068 inode\u003d164010 dev\u003d03:00 mode\u003d040755 ouid\u003d0 ogid\u003d0 rdev\u003d00:00 obj\u003droot:object_r:user_home_t:s0\n\nafter patch:\ntype\u003dSYSCALL msg\u003daudit(1149822032.332:24): arch\u003d40000003 syscall\u003d39 success\u003dyes exit\u003d0 a0\u003dbfdd9c7c a1\u003d1ff a2\u003d804e1b8 a3\u003dbfdd9c7c items\u003d2 ppid\u003d714 pid\u003d777 auid\u003d0 uid\u003d0 gid\u003d0 euid\u003d0 suid\u003d0 fsuid\u003d0 egid\u003d0 sgid\u003d0 fsgid\u003d0 tty\u003dttyS0 comm\u003d\"mkdir\" exe\u003d\"/bin/mkdir\" subj\u003droot:system_r:unconfined_t:s0-s0:c0.c255\ntype\u003dCWD msg\u003daudit(1149822032.332:24):  cwd\u003d\"/root\"\ntype\u003dPATH msg\u003daudit(1149822032.332:24): item\u003d0 name\u003d\"/root\" inode\u003d164068 dev\u003d03:00 mode\u003d040750 ouid\u003d0 ogid\u003d0 rdev\u003d00:00 obj\u003droot:object_r:user_home_dir_t:s0\ntype\u003dPATH msg\u003daudit(1149822032.332:24): item\u003d1 name\u003d\"foo\" inode\u003d164010 dev\u003d03:00 mode\u003d040755 ouid\u003d0 ogid\u003d0 rdev\u003d00:00 obj\u003droot:object_r:user_home_t:s0\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6a2bceec0ea7fdc47aef9a3f2f771c201eaabe5d",
      "tree": "9496dcc64e7cf94f4e87f01957ef41ed18b13e40",
      "parents": [
        "0a73dccc4fd472e65887eae6fbf4afc030541709"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Fri Jun 02 13:16:01 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:28 2006 -0400"
      },
      "message": "[PATCH] fix AUDIT_FILTER_PREPEND handling\n\nClear AUDIT_FILTER_PREPEND flag after adding rule to list.  This\nfixes three problems when a rule is added with the -A syntax:\n\n    - auditctl displays filter list as \"(null)\"\n    - the rule cannot be removed using -d\n    - a duplicate rule can be added with -a\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0a73dccc4fd472e65887eae6fbf4afc030541709",
      "tree": "e9578332e31d0e88c681ac710acf2b196293ba8e",
      "parents": [
        "f368c07d7214a7c41dfceb76c8db473b850f0229"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jun 05 08:15:59 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:27 2006 -0400"
      },
      "message": "[PATCH] validate rule fields\u0027 types\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f368c07d7214a7c41dfceb76c8db473b850f0229",
      "tree": "e3f1e2d1a6ffbe61bf99ece51b906654728db4c9",
      "parents": [
        "20ca73bc792be9625af184cbec36e1372611d1c3"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Fri Apr 07 16:55:56 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:27 2006 -0400"
      },
      "message": "[PATCH] audit: path-based rules\n\nIn this implementation, audit registers inotify watches on the parent\ndirectories of paths specified in audit rules.  When audit\u0027s inotify\nevent handler is called, it updates any affected rules based on the\nfilesystem event.  If the parent directory is renamed, removed, or its\nfilesystem is unmounted, audit removes all rules referencing that\ninotify watch.\n\nTo keep things simple, this implementation limits location-based\nauditing to the directory entries in an existing directory.  Given\na path-based rule for /foo/bar/passwd, the following table applies:\n\n    passwd modified -- audit event logged\n    passwd replaced -- audit event logged, rules list updated\n    bar renamed     -- rule removed\n    foo renamed     -- untracked, meaning that the rule now applies to\n\t\t       the new location\n\nAudit users typically want to have many rules referencing filesystem\nobjects, which can significantly impact filtering performance.  This\npatch also adds an inode-number-based rule hash to mitigate this\nsituation.\n\nThe patch is relative to the audit git tree:\nhttp://kernel.org/git/?p\u003dlinux/kernel/git/viro/audit-current.git;a\u003dsummary\nand uses the inotify kernel API:\nhttp://lkml.org/lkml/2006/6/1/145\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "20ca73bc792be9625af184cbec36e1372611d1c3",
      "tree": "98a1232ad3c9baa14676b2b48fab79a3df4a20b0",
      "parents": [
        "8ba8e0fbe6321961f6ba04e2fd7215b37d935c83"
      ],
      "author": {
        "name": "George C. Wilson",
        "email": "ltcgcw@us.ibm.com",
        "time": "Wed May 24 16:09:55 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:26 2006 -0400"
      },
      "message": "[PATCH] Audit of POSIX Message Queue Syscalls v.2\n\nThis patch adds audit support to POSIX message queues.  It applies cleanly to\nthe lspp.b15 branch of Al Viro\u0027s git tree.  There are new auxiliary data\nstructures, and collection and emission routines in kernel/auditsc.c.  New hooks\nin ipc/mqueue.c collect arguments from the syscalls.\n\nI tested the patch by building the examples from the POSIX MQ library tarball.\nBuild them -lrt, not against the old MQ library in the tarball.  Here\u0027s the URL:\nhttp://www.geocities.com/wronski12/posix_ipc/libmqueue-4.41.tar.gz\nDo auditctl -a exit,always -S for mq_open, mq_timedsend, mq_timedreceive,\nmq_notify, mq_getsetattr.  mq_unlink has no new hooks.  Please see the\ncorresponding userspace patch to get correct output from auditd for the new\nrecord types.\n\n[fixes folded]\n\nSigned-off-by: George Wilson \u003cltcgcw@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "014149cce19c5acb19014e57a5b739b7f64e6fbf",
      "tree": "eb92d3e25264e1ff89bffcedaca88c44ff7efae2",
      "parents": [
        "d8945bb51a2bb6623cfa36b9ff63594f46d513aa"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue May 23 01:36:13 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:25 2006 -0400"
      },
      "message": "[PATCH] deprecate AUDIT_POSSBILE\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d8945bb51a2bb6623cfa36b9ff63594f46d513aa",
      "tree": "b369c9b853e90790a04baa70ee66a2ef9e15fd18",
      "parents": [
        "e0182909297da8d38a5d473ae7bee3d0324632a1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 18 16:01:30 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:25 2006 -0400"
      },
      "message": "[PATCH] inline more audit helpers\n\npull checks for -\u003eaudit_context into inlined wrappers\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ac03221a4fdda9bfdabf99bcd129847f20fc1d80",
      "tree": "9b65ede238b03007bfe5e25f46efca68ec0994e0",
      "parents": [
        "5d136a010de3bc16fe595987feb9ef8868f064c2"
      ],
      "author": {
        "name": "Linda Knippers",
        "email": "linda.knippers@hp.com",
        "time": "Tue May 16 22:03:48 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:24 2006 -0400"
      },
      "message": "[PATCH] update of IPC audit record cleanup\n\nThe following patch addresses most of the issues with the IPC_SET_PERM\nrecords as described in:\nhttps://www.redhat.com/archives/linux-audit/2006-May/msg00010.html\nand addresses the comments I received on the record field names.\n\nTo summarize, I made the following changes:\n\n1. Changed sys_msgctl() and semctl_down() so that an IPC_SET_PERM\n   record is emitted in the failure case as well as the success case.\n   This matches the behavior in sys_shmctl().  I could simplify the\n   code in sys_msgctl() and semctl_down() slightly but it would mean\n   that in some error cases we could get an IPC_SET_PERM record\n   without an IPC record and that seemed odd.\n\n2. No change to the IPC record type, given no feedback on the backward\n   compatibility question.\n\n3. Removed the qbytes field from the IPC record.  It wasn\u0027t being\n   set and when audit_ipc_obj() is called from ipcperms(), the\n   information isn\u0027t available.  If we want the information in the IPC\n   record, more extensive changes will be necessary.  Since it only\n   applies to message queues and it isn\u0027t really permission related, it\n   doesn\u0027t seem worth it.\n\n4. Removed the obj field from the IPC_SET_PERM record.  This means that\n   the kern_ipc_perm argument is no longer needed.\n\n5. Removed the spaces and renamed the IPC_SET_PERM field names.  Replaced iuid and\n   igid fields with ouid and ogid in the IPC record.\n\nI tested this with the lspp.22 kernel on an x86_64 box.  I believe it\napplies cleanly on the latest kernel.\n\n-- ljk\n\nSigned-off-by: Linda Knippers \u003clinda.knippers@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5d136a010de3bc16fe595987feb9ef8868f064c2",
      "tree": "ce0dbf3d5da61bc9b69fa557f0f578cd980f3147",
      "parents": [
        "0a3b483e83edb6aa6d3c49db70eeb6f1cd9f6c6b"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Thu Apr 27 16:45:14 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:23 2006 -0400"
      },
      "message": "[PATCH] minor audit updates\n\nJust a few minor proposed updates.  Only the last one will\nactually affect behavior.  The rest are just misleading\ncode.\n\nSeveral AUDIT_SET functions return \u0027old\u0027 value, but only\nreturn value \u003c0 is checked for.  So just return 0.\n\npropagate audit_set_rate_limit and audit_set_backlog_limit\nerror values\n\nIn audit_buffer_free, the audit_freelist_count was being\nincremented even when we discard the return buffer, so\naudit_freelist_count can end up wrong.  This could cause\nthe actual freelist to shrink over time, eventually\nthreatening to degrate audit performance.\n\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0a3b483e83edb6aa6d3c49db70eeb6f1cd9f6c6b",
      "tree": "d8714c7953e2eb5f1e12243fe8098127b4e7cada",
      "parents": [
        "3c66251e573219a0532a5a07381b2f60a412d9eb"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Tue May 02 15:06:01 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:23 2006 -0400"
      },
      "message": "[PATCH] fix audit_krule_to_{rule,data} return values\n\nDon\u0027t return -ENOMEM when callers of these functions are checking for\na NULL return.  Bug noticed by Serge Hallyn.\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3c66251e573219a0532a5a07381b2f60a412d9eb",
      "tree": "b047b25d28ae1abe6bb81daba886e44e0a82094f",
      "parents": [
        "f46038ff7d23ae092d61b366332c05aab8227b48"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 06 08:26:27 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:22 2006 -0400"
      },
      "message": "[PATCH] add filtering by ppid\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "f46038ff7d23ae092d61b366332c05aab8227b48",
      "tree": "b1615e261d90cd6f83065b3d8350a6b2cd7176a2",
      "parents": [
        "e1396065e0489f98b35021b97907ab4edbfb24e1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat May 06 08:22:52 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:22 2006 -0400"
      },
      "message": "[PATCH] log ppid\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e1396065e0489f98b35021b97907ab4edbfb24e1",
      "tree": "a276ea0a2ece9132d435adf1a1f82d0ada1ae938",
      "parents": [
        "473ae30bc7b1dda5c5791c773f95e9424ddfead9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu May 25 10:19:47 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:21 2006 -0400"
      },
      "message": "[PATCH] collect sid of those who send signals to auditd\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "473ae30bc7b1dda5c5791c773f95e9424ddfead9",
      "tree": "541f6f20b9131fcfb650ca491e291d3c6b148a1b",
      "parents": [
        "9044e6bca5a4a575d3c068dfccb5651a2d6a13bc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Apr 26 14:04:08 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:21 2006 -0400"
      },
      "message": "[PATCH] execve argument logging\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9044e6bca5a4a575d3c068dfccb5651a2d6a13bc",
      "tree": "e0fa2beb83c3ef4e52cc6c6b28ce3173656f4276",
      "parents": [
        "bc0f3b8ebba611291fdaa2864dbffd2d29336c64"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 22 01:09:24 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:20 2006 -0400"
      },
      "message": "[PATCH] fix deadlocks in AUDIT_LIST/AUDIT_LIST_RULES\n\nWe should not send a pile of replies while holding audit_netlink_mutex\nsince we hold the same mutex when we receive commands.  As the result,\nwe can get blocked while sending and sit there holding the mutex while\nauditctl is unable to send the next command and get around to receiving\nwhat we\u0027d sent.\n\nSolution: create skb and put them into a queue instead of sending;\nonce we are done, send what we\u0027ve got on the list.  The former can\nbe done synchronously while we are handling AUDIT_LIST or AUDIT_LIST_RULES;\nwe are holding audit_netlink_mutex at that point.  The latter is done\nasynchronously and without messing with audit_netlink_mutex.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2d9048e201bfb67ba21f05e647b1286b8a4a5667",
      "tree": "1df2ca6780d403f3209cf445f8b0b27f45098434",
      "parents": [
        "90204e0b7b51e9f2a6905adca12dc331128602c7"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Thu Jun 01 13:10:59 2006 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 20 05:25:17 2006 -0400"
      },
      "message": "[PATCH] inotify (1/5): split kernel API from userspace support\n\nThe following series of patches introduces a kernel API for inotify,\nmaking it possible for kernel modules to benefit from inotify\u0027s\nmechanism for watching inodes.  With these patches, inotify will\nmaintain for each caller a list of watches (via an embedded struct\ninotify_watch), where each inotify_watch is associated with a\ncorresponding struct inode.  The caller registers an event handler and\nspecifies for which filesystem events their event handler should be\ncalled per inotify_watch.\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nAcked-by: Robert Love \u003crml@novell.com\u003e\nAcked-by: John McCutchan \u003cjohn@johnmccutchan.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "557240b48e2dc4f6fa878afc3fc767ad745ca7ed",
      "tree": "354e9de17c28b438db675f6a2b779415f1634c45",
      "parents": [
        "5603509137940f4cbc577281cee62110d4097b1b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 18:16:01 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 18:16:01 2006 -0700"
      },
      "message": "Add support for suspending and resuming the whole console subsystem\n\nTrying to suspend/resume with console messages flying all around is\ndoomed to failure, when the devices that the messages are trying to\ngo to are being shut down.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f53ae1dc3429529a58aa538e0a860d713c7079c3",
      "tree": "fa40b981c48269274183da0bebc9db3cad2c2f92",
      "parents": [
        "30f1e3dd8c72abda343bcf415f7d8894a02b4290"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Thu Jun 15 20:12:02 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 17 10:52:13 2006 -0700"
      },
      "message": "[PATCH] arm_timer: remove a racy and obsolete PF_EXITING check\n\narm_timer() checks PF_EXITING to prevent BUG_ON(-\u003eexit_state)\nin run_posix_cpu_timers().\n\nHowever, for some reason it does so only for CPUCLOCK_PERTHREAD\ncase (which is imho wrong).\n\nAlso, this check is not reliable, PF_EXITING could be set on\nanother cpu without any locks/barriers just after the check,\nso it can\u0027t prevent from attaching the timer to the exiting\ntask.\n\nThe previous patch makes this check unneeded.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "30f1e3dd8c72abda343bcf415f7d8894a02b4290",
      "tree": "68ef326814e3b8e6ba0159cc451cef4b71695ea3",
      "parents": [
        "8f17fc20bfb75bcec4cfeda789738979c8338fdc"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Thu Jun 15 20:11:43 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 17 10:52:13 2006 -0700"
      },
      "message": "[PATCH] run_posix_cpu_timers: remove a bogus BUG_ON()\n\ndo_exit() clears -\u003eit_##clock##_expires, but nothing prevents\nanother cpu to attach the timer to exiting process after that.\narm_timer() tries to protect against this race, but the check\nis racy.\n\nAfter exit_notify() does \u0027write_unlock_irq(\u0026tasklist_lock)\u0027 and\nbefore do_exit() calls \u0027schedule() local timer interrupt can find\ntsk-\u003eexit_state !\u003d 0. If that state was EXIT_DEAD (or another cpu\ndoes sys_wait4) interrupted task has -\u003esignal \u003d\u003d NULL.\n\nAt this moment exiting task has no pending cpu timers, they were\ncleanuped in __exit_signal()-\u003eposix_cpu_timers_exit{,_group}(),\nso we can just return from irq.\n\nJohn Stultz recently confirmed this bug, see\n\n\thttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d115015841413687\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f17fc20bfb75bcec4cfeda789738979c8338fdc",
      "tree": "ec84c5222de58b4d26507c892d0b8f828a6dce7e",
      "parents": [
        "88d113601ca19c82feb038438c8c5db502d146f9"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Thu Jun 15 20:11:15 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jun 17 10:52:13 2006 -0700"
      },
      "message": "[PATCH] check_process_timers: fix possible lockup\n\nIf the local timer interrupt happens just after do_exit() sets PF_EXITING\n(and before it clears -\u003eit_xxx_expires) run_posix_cpu_timers() will call\ncheck_process_timers() with tasklist_lock + -\u003esiglock held and\n\n\tcheck_process_timers:\n\n\t\tt \u003d tsk;\n\t\tdo {\n\t\t\t....\n\n\t\t\tdo {\n\t\t\t\tt \u003d next_thread(t);\n\t\t\t} while (unlikely(t-\u003eflags \u0026 PF_EXITING));\n\t\t} while (t !\u003d tsk);\n\nthe outer loop will never stop.\n\nActually, the window is bigger.  Another process can attach the timer\nafter -\u003eit_xxx_expires was cleared (see the next commit) and the \u0027if\n(PF_EXITING)\u0027 check in arm_timer() is racy (see the one after that).\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "651d765d0b2c72d33430487c8b6ef64c60cd2134",
      "tree": "3a7253dc0b80585a03ddd581e0c00fc0f8bda7a0",
      "parents": [
        "3b5e905ee3bd23e9311951890aba57a0dbc81ca4"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Jun 07 16:10:19 2006 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Jun 09 21:24:13 2006 +1000"
      },
      "message": "[PATCH] Add a prctl to change the endianness of a process.\n\nThis new prctl is intended for changing the execution mode of the\nprocessor, on processors that support both a little-endian mode and a\nbig-endian mode.  It is intended for use by programs such as\ninstruction set emulators (for example an x86 emulator on PowerPC),\nwhich may find it convenient to use the processor in an alternate\nendianness mode when executing translated instructions.\n\nNote that this does not imply the existence of a fully-fledged ABI for\nboth endiannesses, or of compatibility code for converting system\ncalls done in the non-native endianness mode.  The program is expected\nto arrange for all of its system call arguments to be presented in the\nnative endianness.\n\nSwitching between big and little-endian mode will require some care in\nconstructing the instruction sequence for the switch.  Generally the\ninstructions up to the instruction that invokes the prctl system call\nwill have to be in the old endianness, and subsequent instructions\nwill have to be in the new endianness.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "8d16b76421f0b3216012ee2d7819355e1cb847e5",
      "tree": "a2e82e62bfcf5ea0f58b17faadc4504ec6dfc933",
      "parents": [
        "760f1fce030ccc620ec430a8aff8fc604e7891ed"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Tue May 30 21:26:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed May 31 16:27:11 2006 -0700"
      },
      "message": "[PATCH] hrtimer: export symbols\n\nFrom: Stephen Hemminger \u003cshemminger@osdl.org\u003e\n\nI want to use the hrtimer\u0027s in the netem (Network Emulator) qdisc.  But the\nnecessary symbols aren\u0027t exported for module use.\n\nAlso needed by SystemTap.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"Stone, Joshua I\" \u003cjoshua.i.stone@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f1adad78dd2fc8edaa513e0bde92b4c64340245c",
      "tree": "a2cd5c53b08fa80c953147ee22b62e7bbff7ddcd",
      "parents": [
        "c9d20af62c59e49684f3882503351153964ff14b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 21 18:54:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 21 18:54:09 2006 -0700"
      },
      "message": "Revert \"[PATCH] sched: fix interactive task starvation\"\n\nThis reverts commit 5ce74abe788a26698876e66b9c9ce7e7acc25413 (and its\ndependent commit 8a5bc075b8d8cf7a87b3f08fad2fba0f5d13295e), because of\naudio underruns.\n\nReported by Rene Herman \u003crene.herman@keyaccess.nl\u003e, who also pinpointed\nthe exact cause of the underruns:\n\n  \"Audio underruns galore, with only ogg123 and firefox (browsing the\n   GIT tree online is also a nice trigger by the way).\n\n   If I back it out, everything is fine for me again.\"\n\nCc: Rene Herman \u003crene.herman@keyaccess.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0662b71322e211dba9a4bc0e6fbca7861a2b5a7d",
      "tree": "bffce074929b6a36b7b1e00a485df7a5fe95cc22",
      "parents": [
        "8b1ea24c6cc529f6860c458b1c0872f22e74c950"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat May 20 15:00:24 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 21 12:59:21 2006 -0700"
      },
      "message": "[PATCH] Fix a NO_IDLE_HZ timer bug\n\nUnder certain timing conditions, a race during boot occurs where timer\nticks are being processed on remote CPUs.  The remote timer ticks can\nincrement jiffies, and if this happens during a window when a timeout is\nvery close to expiring but a local tick has not yet been delivered, you can\nend up with\n\n1) No softirq pending\n2) A local timer wheel which is not synced to jiffies\n3) No high resolution timer active\n4) A local timer which is supposed to fire before the current jiffies value.\n\nIn this circumstance, the comparison in next_timer_interrupt overflows,\nbecause the base of the comparison for high resolution timers is jiffies,\nbut for the softirq timer wheel, it is relative the the current base of the\nwheel (jiffies_base).\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92d1dbd27417c54c23aac6a84c285e256f6118b6",
      "tree": "bab665935a47bb6889ddc3c92a9bee68f1f6f532",
      "parents": [
        "36be57ffe39e03aab9fbe857f70c7a6a15bd9e08"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sat May 20 15:00:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 21 12:59:18 2006 -0700"
      },
      "message": "[PATCH] cpuset: might_sleep_if check in cpuset_zones_allowed\n\nIt\u0027s too easy to incorrectly call cpuset_zone_allowed() in an atomic\ncontext without __GFP_HARDWALL set, and when done, it is not noticed until\na tight memory situation forces allocations to be tried outside the current\ncpuset.\n\nAdd a \u0027might_sleep_if()\u0027 check, to catch this earlier on, instead of\nwaiting for a similar check in the mutex_lock() code, which is only rarely\ninvoked.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36be57ffe39e03aab9fbe857f70c7a6a15bd9e08",
      "tree": "8062e9a9e49fd942fab35e17a2b5afe571a74f63",
      "parents": [
        "bdd804f478a0cc74bf7db8e9f9d5fd379d1b31ca"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sat May 20 15:00:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 21 12:59:18 2006 -0700"
      },
      "message": "[PATCH] cpuset: update cpuset_zones_allowed comment\n\nUpdate the kernel/cpuset.c:cpuset_zone_allowed() comment.\n\nThe rule for when mm/page_alloc.c should call cpuset_zone_allowed()\nwas intended to be:\n\n  Don\u0027t call cpuset_zone_allowed() if you can\u0027t sleep, unless you\n  pass in the __GFP_HARDWALL flag set in gfp_flag, which disables\n  the code that might scan up ancestor cpusets and sleep.\n\nThe explanation of this rule in the comment above cpuset_zone_allowed() was\nstale, as a result of a restructuring of some __alloc_pages() code in\nNovember 2005.\n\nRewrite that comment ...\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "18594822fcb01d4b35e05b9018f770a0b4156d1a",
      "tree": "38d35c38086a564beaac215f8e52694cdbfab1c3",
      "parents": [
        "5b5ffbc1e6d62d89747f3f59c09b2e488a7d7fce",
        "c4694c76ce28dd7e415b4f3014d8c6e580b5f3d2"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 16 01:19:52 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue May 16 01:19:52 2006 +0100"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "5e376613899076396d0c97de67ad072587267370",
      "tree": "ecc15c25ee4da7754aa7d137dccebab68820399e",
      "parents": [
        "0159677857c5ada0a0a2c03a4dd59312382b73d0"
      ],
      "author": {
        "name": "Trent Piepho",
        "email": "xyzzy@speakeasy.org",
        "time": "Mon May 15 09:44:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon May 15 11:20:55 2006 -0700"
      },
      "message": "[PATCH] symbol_put_addr() locks kernel\n\nEven since a previous patch:\n\nFix race between CONFIG_DEBUG_SLABALLOC and modules\nSun, 27 Jun 2004 17:55:19 +0000 (17:55 +0000)\nhttp://www.kernel.org/git/?p\u003dlinux/kernel/git/torvalds/old-2.6-bkcvs.git;a\u003dcommit;h\u003d92b3db26d31cf21b70e3c1eadc56c179506d8fbe\n\nThe function symbol_put_addr() will deadlock the kernel.\n\nsymbol_put_addr() would acquire modlist_lock, then while holding the lock call\ntwo functions kernel_text_address() and module_text_address() which also try\nto acquire the same lock.  This deadlocks the kernel of course.\n\nThis patch changes symbol_put_addr() to not acquire the modlist_lock, it\ndoesn\u0027t need it since it never looks at the module list directly.  Also, it\nnow uses core_kernel_text() instead of kernel_text_address().  The latter has\nan additional check for addr inside a module, but we don\u0027t need to do that\nsince we call module_text_address() (the same function kernel_text_address\nuses) ourselves.\n\nSigned-off-by: Trent Piepho \u003cxyzzy@speakeasy.org\u003e\nCc: Zwane Mwaikambo \u003czwane@fsmlabs.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Johannes Stezenbach \u003cjs@linuxtv.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "986733e01d258c26107f1da9d8d47c718349ad2f",
      "tree": "5e0f04a707b8c341f79927ba6fffd0ad55d85c29",
      "parents": [
        "3b7c8108273bed41a2fc04533cc9f2026ff38c8e"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon May 15 09:43:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon May 15 11:20:55 2006 -0700"
      },
      "message": "[PATCH] RCU: introduce rcu_needs_cpu() interface\n\nWith \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\n\nIntroduce rcu_needs_cpu() interface.  This can be used to tell if there\nwill be a new rcu batch on a cpu soon by looking at the curlist pointer.\nThis can be used to avoid to enter a tickless idle state where the cpu\nwould miss that a new batch is ready when rcu_start_batch would be called\non a different cpu.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f358166a9405e4f1d8e50d8f415c26d95505b6de",
      "tree": "7f5349d9e8b59633b9f8a7bd9bcd45ace1d21a41",
      "parents": [
        "0e44dc383787b472a7f13564c6bd8a44cc07d408"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu May 11 11:08:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu May 11 11:08:49 2006 -0700"
      },
      "message": "ptrace_attach: fix possible deadlock schenario with irqs\n\nEric Biederman points out that we can\u0027t take the task_lock while holding\ntasklist_lock for writing, because another CPU that holds the task lock\nmight take an interrupt that then tries to take tasklist_lock for writing.\n\nWhich would be a nasty deadlock, with one CPU spinning forever in an\ninterrupt handler (although admittedly you need to really work at\ntriggering it ;)\n\nSince the ptrace_attach() code is special and very unusual, just make it\nbe extra careful, and use trylock+repeat to avoid the possible deadlock.\n\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6f18a022fb311f07f3b32f2c0e1b5c9477dc4439",
      "tree": "5c0e66f14e02f53555bfc365098cc7e5eb85c343",
      "parents": [
        "a15bdeef108d282e540e202fc3c3e4bdf9692074"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 08 22:40:05 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Mon May 08 22:40:05 2006 +0100"
      },
      "message": "Finally remove the obnoxious inter_module_xxx()\n\nThis was already a bad plan when I argued against adding it in the first\nplace. Good riddance.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "f5b40e363ad6041a96e3da32281d8faa191597b9",
      "tree": "5f35453cff7acd5df5622a108381bbd011a383c5",
      "parents": [
        "5528e568a760442e0ec8fd2dea1f0791875a066b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 07 10:49:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun May 07 10:49:33 2006 -0700"
      },
      "message": "Fix ptrace_attach()/ptrace_traceme()/de_thread() race\n\nThis holds the task lock (and, for ptrace_attach, the tasklist_lock)\nover the actual attach event, which closes a race between attacking to a\nthread that is either doing a PTRACE_TRACEME or getting de-threaded.\n\nThanks to Oleg Nesterov for reminding me about this, and Chris Wright\nfor noticing a lost return value in my first version.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ad312d2093ae506ae0fa184d8d026b559083087",
      "tree": "890337ebca18ab31546b84a9831fb9c337e8e272",
      "parents": [
        "073115d6b29c7910feaa08241c6484637f5ca958"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Tue Apr 11 08:50:56 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:10:07 2006 -0400"
      },
      "message": "[PATCH] Audit Filter Performance\n\nWhile testing the watch performance, I noticed that selinux_task_ctxid()\nwas creeping into the results more than it should. Investigation showed\nthat the function call was being called whether it was needed or not. The\nbelow patch fixes this.\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "073115d6b29c7910feaa08241c6484637f5ca958",
      "tree": "5fd32da9f54b3c12b65d3c0142fb9bdf87dc01c3",
      "parents": [
        "ce29b682e228c70cdc91a1b2935c5adb2087bab8"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Sun Apr 02 17:07:33 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:10:04 2006 -0400"
      },
      "message": "[PATCH] Rework of IPC auditing\n\n1) The audit_ipc_perms() function has been split into two different\nfunctions:\n        - audit_ipc_obj()\n        - audit_ipc_set_perm()\n\nThere\u0027s a key shift here...  The audit_ipc_obj() collects the uid, gid,\nmode, and SElinux context label of the current ipc object.  This\naudit_ipc_obj() hook is now found in several places.  Most notably, it\nis hooked in ipcperms(), which is called in various places around the\nipc code permforming a MAC check.  Additionally there are several places\nwhere *checkid() is used to validate that an operation is being\nperformed on a valid object while not necessarily having a nearby\nipcperms() call.  In these locations, audit_ipc_obj() is called to\nensure that the information is captured by the audit system.\n\nThe audit_set_new_perm() function is called any time the permissions on\nthe ipc object changes.  In this case, the NEW permissions are recorded\n(and note that an audit_ipc_obj() call exists just a few lines before\neach instance).\n\n2) Support for an AUDIT_IPC_SET_PERM audit message type.  This allows\nfor separate auxiliary audit records for normal operations on an IPC\nobject and permissions changes.  Note that the same struct\naudit_aux_data_ipcctl is used and populated, however there are separate\naudit_log_format statements based on the type of the message.  Finally,\nthe AUDIT_IPC block of code in audit_free_aux() was extended to handle\naux messages of this new type.  No more mem leaks I hope ;-)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "ce29b682e228c70cdc91a1b2935c5adb2087bab8",
      "tree": "39e3e5b345748bec1c2d21962407689cdb1b7dab",
      "parents": [
        "e7c3497013a7e5496ce3d5fd3c73b5cf5af7a56e"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Sat Apr 01 18:29:34 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:10:01 2006 -0400"
      },
      "message": "[PATCH] More user space subject labels\n\nHi,\n\nThe patch below builds upon the patch sent earlier and adds subject label to\nall audit events generated via the netlink interface. It also cleans up a few\nother minor things.\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e7c3497013a7e5496ce3d5fd3c73b5cf5af7a56e",
      "tree": "2a57da5e958011b300256988e414387b1455660c",
      "parents": [
        "9c7aa6aa74fa8a5cda36e54cbbe4fffe0214497d"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Mon Apr 03 09:08:13 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:09:58 2006 -0400"
      },
      "message": "[PATCH] Reworked patch for labels on user space messages\n\nThe below patch should be applied after the inode and ipc sid patches.\nThis patch is a reworking of Tim\u0027s patch that has been updated to match\nthe inode and ipc patches since its similar.\n\n[updated:\n\u003e  Stephen Smalley also wanted to change a variable from isec to tsec in the\n\u003e  user sid patch.                                                              ]\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9c7aa6aa74fa8a5cda36e54cbbe4fffe0214497d",
      "tree": "1e1489ed5080ea4aff6206bfa904f549de8e56ca",
      "parents": [
        "1b50eed9cac0e8e5e4d3a522d8aa267f7f8f8acb"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Fri Mar 31 15:22:49 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:09:56 2006 -0400"
      },
      "message": "[PATCH] change lspp ipc auditing\n\nHi,\n\nThe patch below converts IPC auditing to collect sid\u0027s and convert to context\nstring only if it needs to output an audit record. This patch depends on the\ninode audit change patch already being applied.\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1b50eed9cac0e8e5e4d3a522d8aa267f7f8f8acb",
      "tree": "c66a1c3be846e34f1aac5db640b7ccb8770e8a80",
      "parents": [
        "3dc7e3153eddfcf7ba8b50628775ba516e5f759f"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Mon Apr 03 14:06:13 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:09:53 2006 -0400"
      },
      "message": "[PATCH] audit inode patch\n\nPreviously, we were gathering the context instead of the sid. Now in this patch,\nwe gather just the sid and convert to context only if an audit event is being\noutput.\n\nThis patch brings the performance hit from 146% down to 23%\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "3dc7e3153eddfcf7ba8b50628775ba516e5f759f",
      "tree": "926957e904739fc6c29e5125b7c1635b9f77548c",
      "parents": [
        "376bd9cb357ec945ac893feaeb63af7370a6e70b"
      ],
      "author": {
        "name": "Darrel Goeddel",
        "email": "dgoeddel@trustedcs.com",
        "time": "Fri Mar 10 18:14:06 2006 -0600"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:09:36 2006 -0400"
      },
      "message": "[PATCH] support for context based audit filtering, part 2\n\nThis patch provides the ability to filter audit messages based on the\nelements of the process\u0027 SELinux context (user, role, type, mls sensitivity,\nand mls clearance).  It uses the new interfaces from selinux to opaquely\nstore information related to the selinux context and to filter based on that\ninformation.  It also uses the callback mechanism provided by selinux to\nrefresh the information when a new policy is loaded.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "97e94c453073a2aba4bb5e0825ddc5e923debf11",
      "tree": "9ed466c5252608302389f59d00c1e9e3eecd7303",
      "parents": [
        "5411be59db80333039386f3b1ccfe5eb9023a916"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 29 20:26:24 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:06:21 2006 -0400"
      },
      "message": "[PATCH] no need to wank with task_lock() and pinning task down in audit_syscall_exit()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5411be59db80333039386f3b1ccfe5eb9023a916",
      "tree": "77873af4b7557768c3c48b56e7ae4508be4a70a5",
      "parents": [
        "e495149b173d8e133e1f6f2eb86fd97be7e92010"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 29 20:23:36 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:06:18 2006 -0400"
      },
      "message": "[PATCH] drop task argument of audit_syscall_{entry,exit}\n\n... it\u0027s always current, and that\u0027s a good thing - allows simpler locking.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "e495149b173d8e133e1f6f2eb86fd97be7e92010",
      "tree": "387a11cc8a3e272df33bdb0f697ec434b9dfa3fa",
      "parents": [
        "fa84cb935d4ec601528f5e2f0d5d31e7876a5044"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 29 20:17:10 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:06:16 2006 -0400"
      },
      "message": "[PATCH] drop gfp_mask in audit_log_exit()\n\nnow we can do that - all callers are process-synchronous and do not hold\nany locks.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "fa84cb935d4ec601528f5e2f0d5d31e7876a5044",
      "tree": "ba0694902a1fec4e32ff15503fc316c24b4a4501",
      "parents": [
        "d6fe3945b42d09a1eca7ad180a1646e585b8594f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 29 20:30:19 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:06:13 2006 -0400"
      },
      "message": "[PATCH] move call of audit_free() into do_exit()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "45d9bb0e37668b7c64d1e49e98fbc4733c23b334",
      "tree": "29b518f84a4e9c4a295dfd92a24b5a5c42c032cc",
      "parents": [
        "e0a515bc6a2188f02916e976f419a8640312e32a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 29 20:02:55 2006 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon May 01 06:06:07 2006 -0400"
      },
      "message": "[PATCH] deal with deadlocks in audit_free()\n\nDon\u0027t assume that audit_log_exit() et.al. are called for the context of\ncurrent; pass task explictly.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "13e87ec68641fd54f3fa04eef3419d034ed2115a",
      "tree": "6779da58d91af198401cc3c1f6f4c81b8d5a7bb6",
      "parents": [
        "47bb789973fed504e4711ec34e63b84e6cbfb4e8"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Apr 27 18:39:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 28 08:33:46 2006 -0700"
      },
      "message": "[PATCH] request_irq(): remove warnings from irq probing\n\n- Add new SA_PROBEIRQ which suppresses the new sharing-mismatch warning.\n  Some drivers like to use request_irq() to find an unused interrupt slot.\n\n- Use it in i82365.c\n\n- Kill unused SA_PROBE.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "47bb789973fed504e4711ec34e63b84e6cbfb4e8",
      "tree": "2f617a73244a93d4b5b92236b6f809bf36912db5",
      "parents": [
        "37e53db8aa233c65142d63b496277bf5be9c0ade"
      ],
      "author": {
        "name": "dean gaudet",
        "email": "dean@arctic.org",
        "time": "Thu Apr 27 18:39:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 28 08:33:46 2006 -0700"
      },
      "message": "[PATCH] off-by-1 in kernel/power/main.c\n\nThere\u0027s an off-by-1 in kernel/power/main.c:state_store() ...  if your\nkernel just happens to have some non-zero data at pm_states[PM_SUSPEND_MAX]\n(i.e.  one past the end of the array) then it\u0027ll let you write anything you\nwant to /sys/power/state and in response the box will enter S5.\n\nSigned-off-by: dean gaudet \u003cdean@arctic.org\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83d722f7e198b034699b1500d98729beff930efd",
      "tree": "7d790a2fd62165373ec7bacde704837288e0bec3",
      "parents": [
        "649bbaa484bcdce94f40a1b97a6a2ded0549e8a2"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Mon Apr 24 19:35:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 26 08:30:03 2006 -0700"
      },
      "message": "[PATCH] Remove __devinit and __cpuinit from notifier_call definitions\n\nFew of the notifier_chain_register() callers use __init in the definition\nof notifier_call.  It is incorrect as the function definition should be\navailable after the initializations (they do not unregister them during\ninitializations).\n\nThis patch fixes all such usages to _not_ have the notifier_call __init\nsection.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "649bbaa484bcdce94f40a1b97a6a2ded0549e8a2",
      "tree": "f24f05bf95ae9c4164266da87f36fed61c5c2206",
      "parents": [
        "e7edf9cdeddc0cff125e8e658216efb2ff2b2219"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Mon Apr 24 19:35:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 26 08:27:50 2006 -0700"
      },
      "message": "[PATCH] Remove __devinitdata from notifier block definitions\n\nFew of the notifier_chain_register() callers use __devinitdata in the\ndefinition of notifier_block data structure.  It is incorrect as the\ndata structure should be available after the initializations (they do\nnot unregister them during initializations).\n\nThis was leading to an oops when notifier_chain_register() call is\ninvoked for those callback chains after initialization.\n\nThis patch fixes all such usages to _not_ have the notifier_block data\nstructure in the init data section.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed198cb49750fd9ec564e9f1df66c10efea605f1",
      "tree": "04b508f5455c6c49e8af89913974108b3e1a83b0",
      "parents": [
        "e977145aeaad23d443686f2a2d5b32800d1607c5"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Apr 22 02:38:50 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sat Apr 22 02:38:50 2006 +0100"
      },
      "message": "[RBTREE] Update hrtimers to use rb_parent() accessor macro.\n\nAlso switch it to use the same method of using off-tree nodes as\neveryone else now does -- set them to point to themselves.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "402a26f0c040077ed6f941eefac5a6971f0d5f40",
      "tree": "f74e5d732404e9716b3c753007bac0f5d1e92869",
      "parents": [
        "bf7cf6ee1bd00679bbe93b6ae73f80032759b8df",
        "4f73247f0e53be1bd4aa519476e6261a8e4a64ab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Apr 20 08:17:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Apr 20 08:17:04 2006 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [PATCH] block/elevator.c: remove unused exports\n  [PATCH] splice: fix smaller sized splice reads\n  [PATCH] Don\u0027t inherit -\u003esplice_pipe across forks\n  [patch] cleanup: use blk_queue_stopped\n  [PATCH] Document online io scheduler switching\n"
    },
    {
      "commit": "7522a8423bed9931cbac5502b9c0657bde2700ea",
      "tree": "8729269696269cba4ca477d711490a6c89c20cda",
      "parents": [
        "5a7b46b369419493bab4de67b1526e9f76b22a7f"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Thu Apr 20 02:43:11 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Apr 20 07:54:03 2006 -0700"
      },
      "message": "[PATCH] kprobes: NULL out non-relevant fields in struct kretprobe\n\nIn cases where a struct kretprobe\u0027s *_handler fields are non-NULL, it is\npossible to cause a system crash, due to the possibility of calls ending up\nin zombie functions.  Documentation clearly states that unused *_handlers\nshould be set to NULL, but kprobe users sometimes fail to do so.\n\nFix it by setting the non-relevant fields of the struct kretprobe to NULL.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a0aa7f68afeeb92f6274b395177c20e617c8ed2d",
      "tree": "6750a82e5799dd2fe9cd8eb8320a98107f0f5d05",
      "parents": [
        "7daac4902053045450fa29db42aba19a4581f850"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Apr 20 13:05:33 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Apr 20 13:05:33 2006 +0200"
      },
      "message": "[PATCH] Don\u0027t inherit -\u003esplice_pipe across forks\n\nIt\u0027s really task private, so clear that field on fork after copying\ntask structure.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "5a7b46b369419493bab4de67b1526e9f76b22a7f",
      "tree": "c6c25e52dfd063db53db93d756da77ab67550ec6",
      "parents": [
        "52824b6b5fa0533e2b2adc9df396d0e9ff6fb02a"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Thu Apr 20 06:41:39 2006 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 19 16:27:18 2006 -0700"
      },
      "message": "[PATCH] Add more prevent_tail_call()\n\nThose also break userland regs like following.\n\n   00000000 \u003csys_chown16\u003e:\n      0:\t0f b7 44 24 0c       \tmovzwl 0xc(%esp),%eax\n      5:\t83 ca ff             \tor     $0xffffffff,%edx\n      8:\t0f b7 4c 24 08       \tmovzwl 0x8(%esp),%ecx\n      d:\t66 83 f8 ff          \tcmp    $0xffffffff,%ax\n     11:\t0f 44 c2             \tcmove  %edx,%eax\n     14:\t66 83 f9 ff          \tcmp    $0xffffffff,%cx\n     18:\t0f 45 d1             \tcmovne %ecx,%edx\n     1b:\t89 44 24 0c          \tmov    %eax,0xc(%esp)\n     1f:\t89 54 24 08          \tmov    %edx,0x8(%esp)\n     23:\te9 fc ff ff ff       \tjmp    24 \u003csys_chown16+0x24\u003e\n\nwhere the tailcall at the end overwrites the incoming stack-frame.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\n[ I would _really_ like to have a way to tell gcc about calling\n  conventions. The \"prevent_tail_call()\" macro is pretty ugly ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a3b98a422a20dedf3a2a40c44892d6e7e665157",
      "tree": "24387ffda32d2d7a8582116cd39654bf1fac19fe",
      "parents": [
        "8db08de4f6ae24e90aedf5125b5ddd52ffff15f4"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Tue Apr 18 22:20:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 19 09:13:49 2006 -0700"
      },
      "message": "[PATCH] swsusp: prevent possible image corruption on resume\n\nThe function free_pagedir() used by swsusp for freeing its internal data\nstructures clears the PG_nosave and PG_nosave_free flags for each page\nbeing freed.\n\nHowever, during resume PG_nosave_free set means that the page in\nquestion is \"unsafe\" (ie.  it will be overwritten in the process of\nrestoring the saved system state from the image), so it should not be\nused for the image data.\n\nTherefore free_pagedir() should not clear PG_nosave_free if it\u0027s called\nduring resume (otherwise \"unsafe\" pages freed by it may be used for\nstoring the image data and the data may get corrupted later on).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5e85d4abe3f43bb5362f384bab0e20ef082ce0b5",
      "tree": "cd3a29086e5274fd08bc8d22d15568deab144755",
      "parents": [
        "181ae4005d0a4010802be534d929b38c42b9ac06"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Apr 18 22:20:16 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 19 09:13:49 2006 -0700"
      },
      "message": "[PATCH] task: Make task list manipulations RCU safe\n\nWhile we can currently walk through thread groups, process groups, and\nsessions with just the rcu_read_lock, this opens the door to walking the\nentire task list.\n\nWe already have all of the other RCU guarantees so there is no cost in\ndoing this, this should be enough so that proc can stop taking the\ntasklist lock during readdir.\n\nprev_task was killed because it has no users, and using it will miss new\ntasks when doing an rcu traversal.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "64541d19702cfdb7ea946fdc20faee849f6874b1",
      "tree": "0eb2fbcac51359b590b9692b112fe662fee49a4a",
      "parents": [
        "1f60245479ca6d4d3f2cf4a47c7dd18caf5afdf2"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Apr 14 12:43:15 2006 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 14 17:43:57 2006 -0700"
      },
      "message": "[PATCH] kill unushed __put_task_struct_cb\n\nSomehow in the midst of dotting i\u0027s and crossing t\u0027s during\nthe merge up to rc1 we wound up keeping __put_task_struct_cb\nwhen it should have been killed as it no longer has any users.\nSorry I probably should have caught this while it was\nstill in the -mm tree.\n\nHaving the old code there gets confusing when reading\nthrough the code and trying to understand what is\nhappening.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "78a596b4490e17b9990d87b9d468ef5bb70daa10",
      "tree": "be8f14e15adfae7215ed7c8ad7f995d078ed55c9",
      "parents": [
        "21440d313358043b0ce5e43b00ff3c9b35a8616c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 31 01:38:12 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Apr 14 12:25:26 2006 -0700"
      },
      "message": "[PATCH] remove kernel/power/pm.c:pm_unregister()\n\nSince the last user is removed in -mm, we can now remove this long deprecated\nfunction.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e57a5059846e55d82b86d96dde40e988598601b3",
      "tree": "85b0f48406b37b46261735cbdd66e379977a0327",
      "parents": [
        "c06511d12d720b23c8dffff23004f0a888698f20"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Apr 12 16:30:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Apr 14 08:59:13 2006 -0700"
      },
      "message": "[PATCH] fix non-leader exec under ptrace\n\nThis reverts most of commit 30e0fca6c1d7d26f3f2daa4dd2b12c51dadc778a.\nIt broke the case of non-leader MT exec when ptraced.\nI think the bug it was intended to fix was already addressed by commit\n788e05a67c343fa22f2ae1d3ca264e7f15c25eaf.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a145410dccdb44f81d3b56763ef9b6f721f4e47c",
      "tree": "a2e6635223890acb3191332eb7ba7835fbd24586",
      "parents": [
        "2514395ef88b46e895726a8d40966cb83de7940c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Apr 11 22:18:58 2006 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 07:34:01 2006 -0700"
      },
      "message": "[PATCH] __group_complete_signal: remove bogus BUG_ON\n\nCommit e56d090310d7625ecb43a1eeebd479f04affb48b\n\n   [PATCH] RCU signal handling\n\nmade this BUG_ON() unsafe. This code runs under -\u003esiglock,\nwhile switch_exec_pids() takes tasklist_lock.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88dd9c16cecbd105bbe7711b6120333f6f7b5474",
      "tree": "9632e5988abeaa7e4d20350305edc4e4652b56d1",
      "parents": [
        "6dde432553551ae036aae12c2b940677d36c9a5b",
        "d1195c516a9acd767cb541f914be2c6ddcafcfc1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:34:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:34:02 2006 -0700"
      },
      "message": "Merge branch \u0027splice\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block\n\n* \u0027splice\u0027 of git://brick.kernel.dk/data/git/linux-2.6-block:\n  [PATCH] vfs: add splice_write and splice_read to documentation\n  [PATCH] Remove sys_ prefix of new syscalls from __NR_sys_*\n  [PATCH] splice: warning fix\n  [PATCH] another round of fs/pipe.c cleanups\n  [PATCH] splice: comment styles\n  [PATCH] splice: add Ingo as addition copyright holder\n  [PATCH] splice: unlikely() optimizations\n  [PATCH] splice: speedups and optimizations\n  [PATCH] pipe.c/fifo.c code cleanups\n  [PATCH] get rid of the PIPE_*() macros\n  [PATCH] splice: speedup __generic_file_splice_read\n  [PATCH] splice: add direct fd \u003c-\u003e fd splicing support\n  [PATCH] splice: add optional input and output offsets\n  [PATCH] introduce a \"kernel-internal pipe object\" abstraction\n  [PATCH] splice: be smarter about calling do_page_cache_readahead()\n  [PATCH] splice: optimize the splice buffer mapping\n  [PATCH] splice: cleanup __generic_file_splice_read()\n  [PATCH] splice: only call wake_up_interruptible() when we really have to\n  [PATCH] splice: potential !page dereference\n  [PATCH] splice: mark the io page as accessed\n"
    },
    {
      "commit": "5ef37b196467bf2f9d41e5579dd388c08b800f7c",
      "tree": "ea1ea6e4c0f7b34b917fa52948e4939fa4e3eaf1",
      "parents": [
        "2395140ee2bffe38b1c8a59318f62882b797f5e6"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Mon Apr 10 22:54:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:42 2006 -0700"
      },
      "message": "[PATCH] add cpu_relax to hrtimer_cancel\n\nAdd a cpu_relax() to the hand-coded spinwait in hrtimer_cancel().\n\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d824e66a9a427faf69c58f98dd7e1c3d1bb51c61",
      "tree": "f2f1050a55e496777896aaac96ebd82cbc62c174",
      "parents": [
        "f6422f17d3a480f21917a3895e2a46b968f56a08"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Apr 10 22:54:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:41 2006 -0700"
      },
      "message": "[PATCH] build kernel/irq/migration.c only if CONFIG_GENERIC_PENDING_IRQ is set\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa7271076ae6547d7f370ad7e91ef86fdb318f17",
      "tree": "5a04c82e8ea4dda6cfd7905da18f68752d10faa3",
      "parents": [
        "ba6edfcd1708da2e665f14eee76e87f39448ec40"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Apr 10 22:53:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:40 2006 -0700"
      },
      "message": "[PATCH] the scheduled unexport of panic_timeout\n\nImplement the scheduled unexport of panic_timeout.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "ba6edfcd1708da2e665f14eee76e87f39448ec40"
}
