)]}'
{
  "log": [
    {
      "commit": "701188374b6f1ef9cf7e4dce4a2e69ef4c0012ac",
      "tree": "f716e33bde324c74553a8d0b2acfb70d8ca3f1cc",
      "parents": [
        "5a2d41961dd6815b874b5c0afec0ac96cd90eea4"
      ],
      "author": {
        "name": "Tetsuo Handa",
        "email": "penguin-kernel@I-love.SAKURA.ne.jp",
        "time": "Mon Feb 22 12:44:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 22 19:50:34 2010 -0800"
      },
      "message": "kernel/sys.c: fix missing rcu protection for sys_getpriority()\n\nfind_task_by_vpid() is not safe without rcu_read_lock().  2.6.33-rc7 got\nRCU protection for sys_setpriority() but missed it for sys_getpriority().\n\nSigned-off-by: Tetsuo Handa \u003cpenguin-kernel@I-love.SAKURA.ne.jp\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bee415ce427d1eab6cfb30221461c7d20cbf1903",
      "tree": "406b70a86768535105b226c2b2f0a59b301cc52e",
      "parents": [
        "627fa177a1502ad24390d945851209ac022f3a36",
        "388c3aab5d4f1b0bbfe2d5f47e7cd681866bc573"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 22 08:55:32 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 22 08:55:32 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf probe: Init struct probe_point and set counter correctly\n  hw-breakpoint: Keep track of dr7 local enable bits\n  hw-breakpoints: Accept breakpoints on NULL address\n  perf_events: Fix FORK events\n"
    },
    {
      "commit": "5a5e0f4c7038168e38d1db6af09d1ac715ee9888",
      "tree": "6627b1e2ae1b4880d93c1c5f8d6db4f3aca0d38c",
      "parents": [
        "4c743d0ae60462e91465483dd87f4458d71af550"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Jan 27 17:09:38 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Feb 16 15:11:08 2010 -0800"
      },
      "message": "kfifo: Don\u0027t use integer as NULL pointer\n\nThis patch fixes following sparse warnings:\n\ninclude/linux/kfifo.h:127:25: warning: Using plain integer as NULL pointer\nkernel/kfifo.c:83:21: warning: Using plain integer as NULL pointer\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "1a02d59aba9b61b820517fb135086471c065b573",
      "tree": "349a6c71a67036b415ae48aaf1a61331244afde7",
      "parents": [
        "1ebca9dad5abe8b2ed4dbd186cd657fb47c1f321"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Jan 27 17:09:34 2010 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Feb 16 15:11:06 2010 -0800"
      },
      "message": "kfifo: Make kfifo_initialized work after kfifo_free\n\nAfter kfifo rework it\u0027s no longer possible to reliably know if kfifo is\nusable, since after kfifo_free(), kfifo_initialized() would still return\ntrue. The correct behaviour is needed for at least FHCI USB driver.\n\nThis patch fixes the issue by resetting the kfifo to zero values (the\nsame approach is used in kfifo_alloc() if allocation failed).\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7d0bab9dfecb3717f7e704b60a9f11631cb6636e",
      "tree": "57d23b51502649499784fcf3741091f40b366bda",
      "parents": [
        "0aa2ca9ae1e08d11661abb00ae6e75ff885448d6",
        "b9c3032277f756e73f6c673419dc414155e04e46"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:52:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:52:12 2010 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  hrtimer, softirq: Fix hrtimer-\u003esoftirq trampoline\n"
    },
    {
      "commit": "627a9a194d6b29d345d99ef806171395bc6e3e38",
      "tree": "cb75dd1c5ef64cfe68c75e3299233d016ce23655",
      "parents": [
        "3d8b4bdef7e7c9d36ce90e563788c10051a91c34",
        "a9bb18f36c8056f0712fb28c52c0f85d98438dfb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:47:59 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:47:59 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/kprobes: Fix probe parsing\n  tracing: Fix circular dead lock in stack trace\n"
    },
    {
      "commit": "3d8b4bdef7e7c9d36ce90e563788c10051a91c34",
      "tree": "f98e4fc7cce54ea0b4b4466342c3ee06f9a7a9f7",
      "parents": [
        "724e6d3fe8003c3f60bf404bf22e4e331327c596",
        "1a72cfa6856e7d58e049c42c6e6a789669478479"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:47:48 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 15 19:47:48 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf top: Fix help text alignment\n  perf: Fix hypervisor sample reporting\n  perf: Make bp_len type to u64 generic across the arch\n"
    },
    {
      "commit": "6f93d0a7c83772997b81c30d6f519a9a5dbab6a9",
      "tree": "fd937bfb57964c514db2186e58c896fb7dc30647",
      "parents": [
        "1a72cfa6856e7d58e049c42c6e6a789669478479"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Feb 14 11:12:04 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 14 18:10:39 2010 +0100"
      },
      "message": "perf_events: Fix FORK events\n\nCommit 22e19085 (\"Honour event state for aux stream data\")\nintroduced a bug where we would drop FORK events.\n\nThe thing is that we deliver FORK events to the child process\u0027\nevent, which at that time will be PERF_EVENT_STATE_INACTIVE\nbecause the child won\u0027t be scheduled in (we\u0027re in the middle of\nfork).\n\nSolve this twice, change the event state filter to exclude only\ndisabled (STATE_OFF) or worse, and deliver FORK events to the\ncurrent (parent).\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nLKML-Reference: \u003c1266142324.5273.411.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a9bb18f36c8056f0712fb28c52c0f85d98438dfb",
      "tree": "408900306e5730221cb026f9c8fe9bdc9ec14d7c",
      "parents": [
        "4f48f8b7fd18c44f8478174f9925cc3c059c6ce4"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 10 17:23:47 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Feb 14 09:43:58 2010 +0100"
      },
      "message": "tracing/kprobes: Fix probe parsing\n\nTrying to add a probe like:\n\n  echo p:myprobe 0x10000 \u003e /sys/kernel/debug/tracing/kprobe_events\n\nwill fail since the wrong pointer is passed to strict_strtoul\nwhen trying to convert the address to an unsigned long.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20100210162346.GA6933@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c93d89f3dbf0202bf19c07960ca8602b48c2f9a0",
      "tree": "1534d49d8baeab231dc9f3693780a605d5c32d2e",
      "parents": [
        "6339204ecc2aa2067a99595522de0403f0854bb8"
      ],
      "author": {
        "name": "Jason Wang",
        "email": "jasowang@redhat.com",
        "time": "Wed Jan 27 19:13:40 2010 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Tue Feb 09 19:20:15 2010 +0200"
      },
      "message": "Export the symbol of getboottime and mmonotonic_to_bootbased\n\nExport getboottime and monotonic_to_bootbased in order to let them\ncould be used by following patch.\n\nCc: stable@kernel.org\nSigned-off-by: Jason Wang \u003cjasowang@redhat.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "aa16cd8d12352ccb5b921995ab3901110779f24a",
      "tree": "bc93b1e96dda7e1dc6f1aff498767c627f2de638",
      "parents": [
        "a3a71ca9a715776cf3eda605dafdb4a383782c4f",
        "59647b6ac3050dd964bc556fe6ef22f4db5b935c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 04 16:07:41 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 04 16:07:41 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futex: Handle futex value corruption gracefully\n  futex: Handle user space corruption gracefully\n  futex_lock_pi() key refcnt fix\n  softlockup: Add sched_clock_tick() to avoid kernel warning on kgdb resume\n"
    },
    {
      "commit": "cd757645fbdc34a8343c04bb0e74e06fccc2cb10",
      "tree": "b06a5b92674731846b4d22aa53c99d6099b304b7",
      "parents": [
        "c80d292f137275a1ed88e6ed515ecb457051f1a4"
      ],
      "author": {
        "name": "Mahesh Salgaonkar",
        "email": "mahesh@linux.vnet.ibm.com",
        "time": "Sat Jan 30 10:25:18 2010 +0530"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Feb 04 01:07:12 2010 +0100"
      },
      "message": "perf: Make bp_len type to u64 generic across the arch\n\nChange \u0027bp_len\u0027 type to __u64 to make it work across archs as\nthe s390 architecture watch point length can be upto 2^64.\n\nreference:\n\thttp://lkml.org/lkml/2010/1/25/212\n\nThis is an ABI change that is not backward compatible with\nthe previous hardware breakpoint info layout integrated in this\ndevelopment cycle, a rebuilt of perf tools is necessary for\nversions based on 2.6.33-rc1 - 2.6.33-rc6 to work with a\nkernel based on this patch.\n\nSigned-off-by: Mahesh Salgaonkar \u003cmahesh@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: \"K. Prasad\" \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin \u003cschwidefsky@de.ibm.com\u003e\nLKML-Reference: \u003c20100130045518.GA20776@in.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "b9c3032277f756e73f6c673419dc414155e04e46",
      "tree": "1727289fff4ea4fdcd93658d07e20ab53b55af96",
      "parents": [
        "c80d292f137275a1ed88e6ed515ecb457051f1a4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 03 18:08:52 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 03 18:17:40 2010 +0100"
      },
      "message": "hrtimer, softirq: Fix hrtimer-\u003esoftirq trampoline\n\nhrtimers callbacks are always done from hardirq context, either the\njiffy tick interrupt or the hrtimer device interrupt.\n\n[ there is currently one exception that can still call a hrtimer\n  callback from softirq, but even in that case this will still\n  work correctly. ]\n\nReported-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Yury Polyanskiy \u003cypolyans@princeton.edu\u003e\nTested-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nLKML-Reference: \u003c1265120401.24455.306.camel@laptop\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "59647b6ac3050dd964bc556fe6ef22f4db5b935c",
      "tree": "5e3b678a1172bce5f61143466bb172727cb13aec",
      "parents": [
        "51246bfd189064079c54421507236fd2723b18f3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 03 09:33:05 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 03 15:13:22 2010 +0100"
      },
      "message": "futex: Handle futex value corruption gracefully\n\nThe WARN_ON in lookup_pi_state which complains about a mismatch\nbetween pi_state-\u003eowner-\u003epid and the pid which we retrieved from the\nuser space futex is completely bogus.\n\nThe code just emits the warning and then continues despite the fact\nthat it detected an inconsistent state of the futex. A conveniant way\nfor user space to spam the syslog.\n\nReplace the WARN_ON by a consistency check. If the values do not match\nreturn -EINVAL and let user space deal with the mess it created.\n\nThis also fixes the missing task_pid_vnr() when we compare the\npi_state-\u003eowner pid with the futex value.\n\nReported-by: Jermome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "51246bfd189064079c54421507236fd2723b18f3",
      "tree": "060060ee3fe1cfe7c3ab510e4aff8a9dc3a7c64f",
      "parents": [
        "5ecb01cfdf96c5f465192bdb2a4fd4a61a24c6cc"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 02 11:40:27 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 03 15:13:22 2010 +0100"
      },
      "message": "futex: Handle user space corruption gracefully\n\nIf the owner of a PI futex dies we fix up the pi_state and set\npi_state-\u003eowner to NULL. When a malicious or just sloppy programmed\nuser space application sets the futex value to 0 e.g. by calling\npthread_mutex_init(), then the futex can be acquired again. A new\nwaiter manages to enqueue itself on the pi_state w/o damage, but on\nunlock the kernel dereferences pi_state-\u003eowner and oopses.\n\nPrevent this by checking pi_state-\u003eowner in the unlock path. If\npi_state-\u003eowner is not current we know that user space manipulated the\nfutex value. Ignore the mess and return -EINVAL.\n\nThis catches the above case and also the case where a task hijacks the\nfutex by setting the tid value and then tries to unlock it.\n\nReported-by: Jermome Marchand \u003cjmarchan@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: \u003cstable@kernel.org\u003e\n\n"
    },
    {
      "commit": "5ecb01cfdf96c5f465192bdb2a4fd4a61a24c6cc",
      "tree": "718e04a92a89352dd39193f8a2e08d657d80914e",
      "parents": [
        "d6ad3e286d2c075a60b9f11075a2c55aeeeca2ad"
      ],
      "author": {
        "name": "Mikael Pettersson",
        "email": "mikpe@it.uu.se",
        "time": "Sat Jan 23 22:36:29 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 03 15:13:22 2010 +0100"
      },
      "message": "futex_lock_pi() key refcnt fix\n\nThis fixes a futex key reference count bug in futex_lock_pi(),\nwhere a key\u0027s reference count is incremented twice but decremented\nonly once, causing the backing object to not be released.\n\nIf the futex is created in a temporary file in an ext3 file system,\nthis bug causes the file\u0027s inode to become an \"undead\" orphan,\nwhich causes an oops from a BUG_ON() in ext3_put_super() when the\nfile system is unmounted. glibc\u0027s test suite is known to trigger this,\nsee \u003chttp://bugzilla.kernel.org/show_bug.cgi?id\u003d14256\u003e.\n\nThe bug is a regression from 2.6.28-git3, namely Peter Zijlstra\u0027s\n38d47c1b7075bd7ec3881141bb3629da58f88dab \"[PATCH] futex: rely on\nget_user_pages() for shared futexes\". That commit made get_futex_key()\nalso increment the reference count of the futex key, and updated its\ncallers to decrement the key\u0027s reference count before returning.\nUnfortunately the normal exit path in futex_lock_pi() wasn\u0027t corrected:\nthe reference count is incremented by get_futex_key() and queue_lock(),\nbut the normal exit path only decrements once, via unqueue_me_pi().\nThe fix is to put_futex_key() after unqueue_me_pi(), since 2.6.31\nthis is easily done by \u0027goto out_put_key\u0027 rather than \u0027goto out\u0027.\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "c80d292f137275a1ed88e6ed515ecb457051f1a4",
      "tree": "4bfbab3536ac8e7ca11c08fdd933cffbae803cba",
      "parents": [
        "2a2a5660f10a468016fed594ab09d77ef0bb6079",
        "b8a1d37c5f981cdd2e83c9fd98198832324cd57a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 02 18:12:22 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 02 18:12:22 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  kernel/cred.c: use kmem_cache_free\n"
    },
    {
      "commit": "4528fd0595847c2078b59f24800e751c2d6b7e41",
      "tree": "0be4aca79bc9b6709d4762f43ae53e2589931a85",
      "parents": [
        "ef2b9b054580ef835078d8aa411bd06542cd5c1c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Feb 02 13:44:10 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 02 18:11:22 2010 -0800"
      },
      "message": "cgroups: fix to return errno in a failure path\n\nIn cgroup_create(), if alloc_css_id() returns failure, the errno is not\npropagated to userspace, so mkdir will fail silently.\n\nTo trigger this bug, we mount blkio (or memory subsystem), and create more\nthen 65534 cgroups.  (The number of cgroups is limited to 65535 if a\nsubsystem has use_id \u003d\u003d 1)\n\n # mount -t cgroup -o blkio xxx /mnt\n # for ((i \u003d 0; i \u003c 65534; i++)); do mkdir /mnt/$i; done\n # mkdir /mnt/65534\n (should return ENOSPC)\n #\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc173f7092c76a7967f135c2b3a54052ad99733b",
      "tree": "04a2cd01feae729375d241b2bfe551b7cfcaefaa",
      "parents": [
        "f4b5162820de60204afa5c8639335f4931b7fb0c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Feb 02 13:44:01 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 02 18:11:21 2010 -0800"
      },
      "message": "kfifo: fix kernel-doc notation\n\nFix kfifo kernel-doc warnings:\n\nWarning(kernel/kfifo.c:361): No description found for parameter \u0027total\u0027\nWarning(kernel/kfifo.c:402): bad line:  @ @lenout: pointer to output variable with copied data\nWarning(kernel/kfifo.c:412): No description found for parameter \u0027lenout\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b8a1d37c5f981cdd2e83c9fd98198832324cd57a",
      "tree": "fe3a2c7309a9c2d5bef8e3ba053ddbb446a39969",
      "parents": [
        "1a45dcfe2525e9432cb4aba461d4994fc2befe42"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Wed Feb 03 09:31:36 2010 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Wed Feb 03 10:21:57 2010 +1100"
      },
      "message": "kernel/cred.c: use kmem_cache_free\n\nFree memory allocated using kmem_cache_zalloc using kmem_cache_free rather\nthan kfree.\n\nThe semantic patch that makes this change is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression x,E,c;\n@@\n\n x \u003d \\(kmem_cache_alloc\\|kmem_cache_zalloc\\|kmem_cache_alloc_node\\)(c,...)\n ... when !\u003d x \u003d E\n     when !\u003d \u0026x\n?-kfree(x)\n+kmem_cache_free(c,x)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Steve Dickson \u003csteved@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "4f48f8b7fd18c44f8478174f9925cc3c059c6ce4",
      "tree": "94eb6ad3dcf1d381d7b2bc81b3883d6cde98f3ba",
      "parents": [
        "ab658321f32770b903a4426e2a6fae0392757755"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Feb 02 15:32:09 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 02 10:20:18 2010 -0500"
      },
      "message": "tracing: Fix circular dead lock in stack trace\n\nWhen we cat \u003cdebugfs\u003e/tracing/stack_trace, we may cause circular lock:\nsys_read()\n  t_start()\n     arch_spin_lock(\u0026max_stack_lock);\n\n  t_show()\n     seq_printf(), vsnprintf() .... /* they are all trace-able,\n       when they are traced, max_stack_lock may be required again. */\n\nThe following script can trigger this circular dead lock very easy:\n#!/bin/bash\n\necho 1 \u003e /proc/sys/kernel/stack_tracer_enabled\n\nmount -t debugfs xxx /mnt \u003e /dev/null 2\u003e\u00261\n\n(\n# make check_stack() zealous to require max_stack_lock\nfor ((; ;))\n{\n\techo 1 \u003e /mnt/tracing/stack_max_size\n}\n) \u0026\n\nfor ((; ;))\n{\n\tcat /mnt/tracing/stack_trace \u003e /dev/null\n}\n\nTo fix this bug, we increase the percpu trace_active before\nrequire the lock.\n\nReported-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B67D4F9.9080905@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e20da891302c69d49fea181b4e49c33acc2305de",
      "tree": "237bb5e56a2a2ad84e796af6758079011896bf53",
      "parents": [
        "834db333eda46246f6290f0e1a7525af04fc8cb4",
        "48d50674179981e41f432167b2441cec782d5484"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:45:26 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:45:26 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  lockdep: Fix check_usage_backwards() error message\n"
    },
    {
      "commit": "834db333eda46246f6290f0e1a7525af04fc8cb4",
      "tree": "4809b5da82a76a9924cde7a2db8986636f8be727",
      "parents": [
        "8ea85c2817301adb986b3b86dc20414595b776be",
        "5352ae638e2d7d5c9b2e4d528676bbf2af6fd6f3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:45:00 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:45:00 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf, hw_breakpoint, kgdb: Do not take mutex for kernel debugger\n  x86, hw_breakpoints, kgdb: Fix kgdb to use hw_breakpoint API\n  hw_breakpoints: Release the bp slot if arch_validate_hwbkpt_settings() fails.\n  perf: Ignore perf.data.old\n  perf report: Fix segmentation fault when running with \u0027-g none\u0027\n"
    },
    {
      "commit": "8ea85c2817301adb986b3b86dc20414595b776be",
      "tree": "d918bd0c2427a4e907475271863f88530eef4bf1",
      "parents": [
        "bdd846678387d1313f689c9d341bd9743c9aa451",
        "9d3cfc4c1d17c6d3bc1373e3b954c56b92607755"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:44:36 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:44:36 2010 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Correct printk whitespace in warning from cpu down task check\n  sched: Fix incorrect sanity check\n  sched: Fix fork vs hotplug vs cpuset namespaces\n"
    },
    {
      "commit": "bdd846678387d1313f689c9d341bd9743c9aa451",
      "tree": "312585e17b3fbf2f334f892db1a487e1716ae6ab",
      "parents": [
        "935cc9323ac33bb9b6cb853815e5c86f77e50607",
        "7b7422a566aa0dc1e582ce263d4c7ff4a772700a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:44:06 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 01 10:44:06 2010 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  clocksource: Prevent potential kgdb dead lock\n"
    },
    {
      "commit": "d6ad3e286d2c075a60b9f11075a2c55aeeeca2ad",
      "tree": "24f374a6cb1ef36c2aec41b9de6b8f3b1b09780d",
      "parents": [
        "48d50674179981e41f432167b2441cec782d5484"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Jan 27 16:25:22 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 01 08:22:32 2010 +0100"
      },
      "message": "softlockup: Add sched_clock_tick() to avoid kernel warning on kgdb resume\n\nWhen CONFIG_HAVE_UNSTABLE_SCHED_CLOCK is set, sched_clock() gets\nthe time from hardware such as the TSC on x86. In this\nconfiguration kgdb will report a softlock warning message on\nresuming or detaching from a debug session.\n\nSequence of events in the problem case:\n\n 1) \"cpu sched clock\" and \"hardware time\" are at 100 sec prior\n    to a call to kgdb_handle_exception()\n\n 2) Debugger waits in kgdb_handle_exception() for 80 sec and on\n    exit the following is called ...  touch_softlockup_watchdog() --\u003e\n    __raw_get_cpu_var(touch_timestamp) \u003d 0;\n\n 3) \"cpu sched clock\" \u003d 100s (it was not updated, because the\n    interrupt was disabled in kgdb) but the \"hardware time\" \u003d 180 sec\n\n 4) The first timer interrupt after resuming from\n    kgdb_handle_exception updates the watchdog from the \"cpu sched clock\"\n\nupdate_process_times() { ...  run_local_timers() --\u003e\nsoftlockup_tick() --\u003e check (touch_timestamp \u003d\u003d 0) (it is \"YES\"\nhere, we have set \"touch_timestamp \u003d 0\" at kgdb) --\u003e\n__touch_softlockup_watchdog() ***(A)--\u003e reset \"touch_timestamp\"\nto \"get_timestamp()\" (Here, the \"touch_timestamp\" will still be\nset to 100s.)  ...\n\n    scheduler_tick() ***(B)--\u003e sched_clock_tick() (update \"cpu sched\n    clock\" to \"hardware time\" \u003d 180s) ...  }\n\n 5) The Second timer interrupt handler appears to have a large\n    jump and trips the softlockup warning.\n\nupdate_process_times() { ...  run_local_timers() --\u003e\nsoftlockup_tick() --\u003e \"cpu sched clock\" - \"touch_timestamp\" \u003d\n180s-100s \u003e 60s --\u003e printk \"soft lockup error messages\" ...  }\n\nnote: ***(A) reset \"touch_timestamp\" to\n\"get_timestamp(this_cpu)\"\n\nWhy is \"touch_timestamp\" 100 sec, instead of 180 sec?\n\nWhen CONFIG_HAVE_UNSTABLE_SCHED_CLOCK is set, the call trace of\nget_timestamp() is:\n\nget_timestamp(this_cpu)\n --\u003ecpu_clock(this_cpu)\n --\u003esched_clock_cpu(this_cpu)\n --\u003e__update_sched_clock(sched_clock_data, now)\n\nThe __update_sched_clock() function uses the GTOD tick value to\ncreate a window to normalize the \"now\" values.  So if \"now\"\nvalue is too big for sched_clock_data, it will be ignored.\n\nThe fix is to invoke sched_clock_tick() to update \"cpu sched\nclock\" in order to recover from this state.  This is done by\nintroducing the function touch_softlockup_watchdog_sync(). This\nallows kgdb to request that the sched clock is updated when the\nwatchdog thread runs the first time after a resume from kgdb.\n\n[yong.zhang0@gmail.com: Use per cpu instead of an array]\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Dongdong Deng \u003cDongdong.Deng@windriver.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: peterz@infradead.org\nLKML-Reference: \u003c1264631124-4837-2-git-send-email-jason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5352ae638e2d7d5c9b2e4d528676bbf2af6fd6f3",
      "tree": "95bab4d28f7c91bc5b7e79b3e1c879dfe96c52b9",
      "parents": [
        "cc0967490c1c3824bc5b75718b6ca8a51d9f2617"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 28 17:04:43 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 30 08:42:21 2010 +0100"
      },
      "message": "perf, hw_breakpoint, kgdb: Do not take mutex for kernel debugger\n\nThis patch fixes the regression in functionality where the\nkernel debugger and the perf API do not nicely share hw\nbreakpoint reservations.\n\nThe kernel debugger cannot use any mutex_lock() calls because it\ncan start the kernel running from an invalid context.\n\nA mutex free version of the reservation API needed to get\ncreated for the kernel debugger to safely update hw breakpoint\nreservations.\n\nThe possibility for a breakpoint reservation to be concurrently\nprocessed at the time that kgdb interrupts the system is\nimprobable. Should this corner case occur the end user is\nwarned, and the kernel debugger will prohibit updating the\nhardware breakpoint reservations.\n\nAny time the kernel debugger reserves a hardware breakpoint it\nwill be a system wide reservation.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: torvalds@linux-foundation.org\nLKML-Reference: \u003c1264719883-7285-3-git-send-email-jason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cc0967490c1c3824bc5b75718b6ca8a51d9f2617",
      "tree": "1224a5764dbcd779b842be6bd569d753da33de8c",
      "parents": [
        "b23ff0e9330e4b11e18af984d50573598e10e7f9"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Jan 28 17:04:42 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 30 08:42:20 2010 +0100"
      },
      "message": "x86, hw_breakpoints, kgdb: Fix kgdb to use hw_breakpoint API\n\nIn the 2.6.33 kernel, the hw_breakpoint API is now used for the\nperformance event counters.  The hw_breakpoint_handler() now\nconsumes the hw breakpoints that were previously set by kgdb\narch specific code.  In order for kgdb to work in conjunction\nwith this core API change, kgdb must use some of the low level\nfunctions of the hw_breakpoint API to install, uninstall, and\ndeal with hw breakpoint reservations.\n\nThe kgdb core required a change to call kgdb_disable_hw_debug\nanytime a slave cpu enters kgdb_wait() in order to keep all the\nhw breakpoints in sync as well as to prevent hitting a hw\nbreakpoint while kgdb is active.\n\nDuring the architecture specific initialization of kgdb, it will\npre-allocate 4 disabled (struct perf event **) structures.  Kgdb\nwill use these to manage the capabilities for the 4 hw\nbreakpoint registers, per cpu.  Right now the hw_breakpoint API\ndoes not have a way to ask how many breakpoints are available,\non each CPU so it is possible that the install of a breakpoint\nmight fail when kgdb restores the system to the run state.  The\nintent of this patch is to first get the basic functionality of\nhw breakpoints working and leave it to the person debugging the\nkernel to understand what hw breakpoints are in use and what\nrestrictions have been imposed as a result.  Breakpoint\nconstraints will be dealt with in a future patch.\n\nWhile atomic, the x86 specific kgdb code will call\narch_uninstall_hw_breakpoint() and arch_install_hw_breakpoint()\nto manage the cpu specific hw breakpoints.\n\nThe net result of these changes allow kgdb to use the same pool\nof hw_breakpoints that are used by the perf event API, but\nneither knows about future reservations for the available hw\nbreakpoint slots.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: torvalds@linux-foundation.org\nLKML-Reference: \u003c1264719883-7285-2-git-send-email-jason.wessel@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b23ff0e9330e4b11e18af984d50573598e10e7f9",
      "tree": "e170892469ddbcb2ee249271e52264f961c58476",
      "parents": [
        "7f5102ca4b8a8e598dbfa154322ea684bc98da96"
      ],
      "author": {
        "name": "Mahesh Salgaonkar",
        "email": "mahesh@linux.vnet.ibm.com",
        "time": "Thu Jan 21 18:25:16 2010 +0530"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jan 28 14:15:51 2010 +0100"
      },
      "message": "hw_breakpoints: Release the bp slot if arch_validate_hwbkpt_settings() fails.\n\nOn a given architecture, when hardware breakpoint registration fails\ndue to un-supported access type (read/write/execute), we lose the bp\nslot since register_perf_hw_breakpoint() does not release the bp slot\non failure.\nHence, any subsequent hardware breakpoint registration starts failing\nwith \u0027no space left on device\u0027 error.\n\nThis patch introduces error handling in register_perf_hw_breakpoint()\nfunction and releases bp slot on error.\n\nSigned-off-by: Mahesh Salgaonkar \u003cmahesh@linux.vnet.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: K. Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nLKML-Reference: \u003c20100121125516.GA32521@in.ibm.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "9d3cfc4c1d17c6d3bc1373e3b954c56b92607755",
      "tree": "7e9f748cd920ced68fc51e21f761155d3c7d94ec",
      "parents": [
        "11854247e2c851e7ff9ce138e501c6cffc5a4217"
      ],
      "author": {
        "name": "Frans Pop",
        "email": "elendil@planet.nl",
        "time": "Mon Jan 25 14:56:34 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 28 06:59:55 2010 +0100"
      },
      "message": "sched: Correct printk whitespace in warning from cpu down task check\n\nDue to an incorrect line break the output currently contains tabs.\nAlso remove trailing space.\n\nThe actual output that logcheck sent me looked like this:\n Task events/1 (pid \u003d 10) is on cpu 1^I^I^I^I(state \u003d 1, flags \u003d 84208040)\n\nAfter this patch it becomes:\n Task events/1 (pid \u003d 10) is on cpu 1 (state \u003d 1, flags \u003d 84208040)\n\nSigned-off-by: Frans Pop \u003celendilplanet.nl\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c201001251456.34996.elendil@planet.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "11854247e2c851e7ff9ce138e501c6cffc5a4217",
      "tree": "281c12176055279558b31b4b059e32e59229f486",
      "parents": [
        "fabf318e5e4bda0aca2b0d617b191884fda62703"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Jan 21 16:34:27 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 28 06:59:51 2010 +0100"
      },
      "message": "sched: Fix incorrect sanity check\n\nWe moved to migrate on wakeup, which means that sleeping tasks could\nstill be present on offline cpus. Amend the check to only test running\ntasks.\n\nReported-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "48d50674179981e41f432167b2441cec782d5484",
      "tree": "218bc15a2152a10d4b6e7bd412133121777cc182",
      "parents": [
        "b04da8bfdfbbd79544cab2fadfdc12e87eb01600"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Jan 26 19:16:41 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 27 08:34:02 2010 +0100"
      },
      "message": "lockdep: Fix check_usage_backwards() error message\n\nLockdep has found the real bug, but the output doesn\u0027t look right to me:\n\n\u003e \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e [ INFO: possible irq lock inversion dependency detected ]\n\u003e 2.6.33-rc5 #77\n\u003e ---------------------------------------------------------\n\u003e emacs/1609 just changed the state of lock:\n\u003e  (\u0026(\u0026tty-\u003ectrl_lock)-\u003erlock){+.....}, at: [\u003cffffffff8127c648\u003e] tty_fasync+0xe8/0x190\n\u003e but this lock took another, HARDIRQ-unsafe lock in the past:\n\u003e  (\u0026(\u0026sighand-\u003esiglock)-\u003erlock){-.....}\n\n\"HARDIRQ-unsafe\" and \"this lock took another\" looks wrong, afaics.\n\n\u003e   ... key      at: [\u003cffffffff81c054a4\u003e] __key.46539+0x0/0x8\n\u003e   ... acquired at:\n\u003e    [\u003cffffffff81089af6\u003e] __lock_acquire+0x1056/0x15a0\n\u003e    [\u003cffffffff8108a0df\u003e] lock_acquire+0x9f/0x120\n\u003e    [\u003cffffffff81423012\u003e] _raw_spin_lock_irqsave+0x52/0x90\n\u003e    [\u003cffffffff8127c1be\u003e] __proc_set_tty+0x3e/0x150\n\u003e    [\u003cffffffff8127e01d\u003e] tty_open+0x51d/0x5e0\n\nThe stack-trace shows that this lock (ctrl_lock) was taken under\n-\u003esiglock (which is hopefully irq-safe).\n\nThis is a clear typo in check_usage_backwards() where we tell the print a\nfancy routine we\u0027re forwards.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20100126181641.GA10460@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "03688970347bfea32823953a7ce5886d1713205f",
      "tree": "7ae2cc539b20b0a621d4a11f335f96de619ecfcb",
      "parents": [
        "6993b1bb1e62367f500789835a1f747e12259f07"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Fri Jan 22 08:12:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 17:00:39 2010 -0500"
      },
      "message": "tracing/documentation: Cover new frame pointer semantics\n\nUpdate the graph tracer examples to cover the new frame pointer semantics\n(in terms of passing it along).  Move the HAVE_FUNCTION_GRAPH_FP_TEST docs\nout of the Kconfig, into the right place, and expand on the details.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nLKML-Reference: \u003c1264165967-18938-1-git-send-email-vapier@gentoo.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "3c05d7482777f15e71bb4cb1ba78dee2800dfec6",
      "tree": "cb3d7c935ede863ca94e0beb97dc57ceb1e75e7b",
      "parents": [
        "492a74f4210e15f4701422e2e1c4cd3c1e45ddae"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:14:08 2010 -0500"
      },
      "message": "ring-buffer: Check for end of page in iterator\n\nIf the iterator comes to an empty page for some reason, or if\nthe page is emptied by a consuming read. The iterator code currently\ndoes not check if the iterator is pass the contents, and may\nreturn a false entry.\n\nThis patch adds a check to the ring buffer iterator to test if the\ncurrent page has been completely read and sets the iterator to the\nnext page if necessary.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "492a74f4210e15f4701422e2e1c4cd3c1e45ddae",
      "tree": "a45808e0aa8e5f50ca934a571660f24d6b2d8e1d",
      "parents": [
        "74bf4076f2ed79b5510440b72a561823a8852ec0"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:17:47 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jan 26 16:09:30 2010 -0500"
      },
      "message": "ring-buffer: Check if ring buffer iterator has stale data\n\nUsually reads of the ring buffer is performed by a single task.\nThere are two types of reads from the ring buffer.\n\nOne is a consuming read which will consume the entry that was read\nand the next read will be the entry that follows.\n\nThe other is an iterator that will let the user read the contents of\nthe ring buffer without modifying it. When an iterator is allocated,\nwrites to the ring buffer are disabled to protect the iterator.\n\nThe problem exists when consuming reads happen while an iterator is\nallocated. Specifically, the kind of read that swaps out an entire\npage (used by splice) and replaces it with a new read. If the iterator\nis on the page that is swapped out, then the next read may read\nfrom this swapped out page and return garbage.\n\nThis patch adds a check when reading the iterator to make sure that\nthe iterator contents are still valid. If a consuming read has taken\nplace, the iterator is reset.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7b7422a566aa0dc1e582ce263d4c7ff4a772700a",
      "tree": "29cb2554e08df65a82afd46f2e034ee0e015ac80",
      "parents": [
        "9a3cbe3265c7714e8ee423feb6e27a080af79608"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jan 26 12:51:10 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jan 26 14:53:16 2010 +0100"
      },
      "message": "clocksource: Prevent potential kgdb dead lock\n\ncommit 0f8e8ef7 (clocksource: Simplify clocksource watchdog resume\nlogic) introduced a potential kgdb dead lock. When the kernel is\nstopped by kgdb inside code which holds watchdog_lock then kgdb dead\nlocks in clocksource_resume_watchdog().\n\nclocksource_resume_watchdog() is called from kbdg via\nclocksource_touch_watchdog() to avoid that the clock source watchdog\nmarks TSC unstable after the kernel has been stopped.\n\nSolve this by replacing spin_lock with a spin_trylock and just return\nin case the lock is held. Not resetting the watchdog might result in\nTSC becoming marked unstable, but that\u0027s an acceptable penalty for\nusing kgdb.\n\nThe timekeeping is anyway easily screwed up by kgdb when the system\nuses either jiffies or a clock source which wraps in short intervals\n(e.g. pm_timer wraps about every 4.6s), so we really do not have to\nworry about that occasional TSC marked unstable side effect.\n\nThe second caller of clocksource_resume_watchdog() is\nclocksource_resume(). The trylock is safe here as well because the\nsystem is UP at this point, interrupts are disabled and nothing else\ncan hold watchdog_lock().\n\nReported-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nLKML-Reference: \u003c1264480000-6997-4-git-send-email-jason.wessel@windriver.com\u003e\nCc: kgdb-bugreport@lists.sourceforge.net\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "74bf4076f2ed79b5510440b72a561823a8852ec0",
      "tree": "d992d49f992cd77e20c9833876c021ad9b265f57",
      "parents": [
        "f6760aa024199cfbce564311dc4bc4d47b6fb349"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 25 15:11:53 2010 -0500"
      },
      "message": "tracing: Prevent kernel oops with corrupted buffer\n\nIf the contents of the ftrace ring buffer gets corrupted and the trace\nfile is read, it could create a kernel oops (usualy just killing the user\ntask thread). This is caused by the checking of the pid in the buffer.\nIf the pid is negative, it still references the cmdline cache array,\nwhich could point to an invalid address.\n\nThe simple fix is to test for negative PIDs.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f6760aa024199cfbce564311dc4bc4d47b6fb349",
      "tree": "e059ad7965cba0234097d6893dfe8afbfd3beb67",
      "parents": [
        "90ea301916688d010862395b00817f3c1c8e09a4",
        "ea9d8e3f45404d411c00ae67b45cc35c58265bb7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:38:07 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:38:07 2010 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  clockevent: Don\u0027t remove broadcast device when cpu is dead\n"
    },
    {
      "commit": "b8be634e01b400fa2528848ad0cd6a5580a15bc4",
      "tree": "f36da264249540727a60e13a54d1d44c8821b48d",
      "parents": [
        "298a4c3a57fed38df365a6807728d1930a72c728",
        "f5e2bae0aad03164ffc7ce9dfeee6608e2c87dba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:31:34 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 24 10:31:34 2010 -0800"
      },
      "message": "Merge git://git.infradead.org/~dwmw2/mtd-2.6.33\n\n* git://git.infradead.org/~dwmw2/mtd-2.6.33:\n  mtd: tests: fix read, speed and stress tests on NOR flash\n  mtd: Really add ARM pismo support\n  kmsg_dump: Dump on crash_kexec as well\n"
    },
    {
      "commit": "fabf318e5e4bda0aca2b0d617b191884fda62703",
      "tree": "651b2ee4fb8f393d2fe93f133a5ec6129cb7a8e8",
      "parents": [
        "6d558c3ac9b6508d26fd5cadccce51fc9d726b1c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jan 21 21:04:57 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jan 21 23:25:31 2010 +0100"
      },
      "message": "sched: Fix fork vs hotplug vs cpuset namespaces\n\nThere are a number of issues:\n\n1) TASK_WAKING vs cgroup_clone (cpusets)\n\ncopy_process():\n\n  sched_fork()\n    child-\u003estate \u003d TASK_WAKING; /* waiting for wake_up_new_task() */\n  if (current-\u003ensproxy !\u003d p-\u003ensproxy)\n     ns_cgroup_clone()\n       cgroup_clone()\n         mutex_lock(inode-\u003ei_mutex)\n         mutex_lock(cgroup_mutex)\n         cgroup_attach_task()\n\t   ss-\u003ecan_attach()\n           ss-\u003eattach() [ -\u003e cpuset_attach() ]\n             cpuset_attach_task()\n               set_cpus_allowed_ptr();\n                 while (child-\u003estate \u003d\u003d TASK_WAKING)\n                   cpu_relax();\nwill deadlock the system.\n\n\n2) cgroup_clone (cpusets) vs copy_process\n\nSo even if the above would work we still have:\n\ncopy_process():\n\n  if (current-\u003ensproxy !\u003d p-\u003ensproxy)\n     ns_cgroup_clone()\n       cgroup_clone()\n         mutex_lock(inode-\u003ei_mutex)\n         mutex_lock(cgroup_mutex)\n         cgroup_attach_task()\n\t   ss-\u003ecan_attach()\n           ss-\u003eattach() [ -\u003e cpuset_attach() ]\n             cpuset_attach_task()\n               set_cpus_allowed_ptr();\n  ...\n\n  p-\u003ecpus_allowed \u003d current-\u003ecpus_allowed\n\nover-writing the modified cpus_allowed.\n\n\n3) fork() vs hotplug\n\n  if we unplug the child\u0027s cpu after the sanity check when the child\n  gets attached to the task_list but before wake_up_new_task() shit\n  will meet with fan.\n\nSolve all these issues by moving fork cpu selection into\nwake_up_new_task().\n\nReported-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1264106190.4283.1314.camel@laptop\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e80b1359858df17b0034bdf7d1b6f3e0d5b97257",
      "tree": "c0ce7b9abcef8910ee78327285d85b04b0512d33",
      "parents": [
        "341031caec0cd730e84d248d95851bf54ec4e41f",
        "b27d515a49169e5e2a92d621faac761074a8c5b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:50:04 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 21 08:50:04 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: x86: Add support for the ANY bit\n  perf: Change the is_software_event() definition\n  perf: Honour event state for aux stream data\n  perf: Fix perf_event_do_pending() fallback callsite\n  perf kmem: Print usage help for unknown commands\n  perf kmem: Increase \"Hit\" column length\n  hw-breakpoints, perf: Fix broken mmiotrace due to dr6 by reference change\n  perf timechart: Use tid not pid for COMM change\n"
    },
    {
      "commit": "22e190851f8709c48baf00ed9ce6144cdc54d025",
      "tree": "52e4104e23a68282dce5dfe181c1234f8764bcd9",
      "parents": [
        "fe432200abb0d64f409895168d9ad8fbb9d8e6c6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jan 18 09:12:32 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:40:40 2010 +0100"
      },
      "message": "perf: Honour event state for aux stream data\n\nAnton reported that perf record kept receiving events even after calling\nioctl(PERF_EVENT_IOC_DISABLE). It turns out that FORK,COMM and MMAP\nevents didn\u0027t respect the disabled state and kept flowing in.\n\nReported-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Anton Blanchard \u003canton@samba.org\u003e\nLKML-Reference: \u003c1263459187.4244.265.camel@laptop\u003e\nCC: stable@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe432200abb0d64f409895168d9ad8fbb9d8e6c6",
      "tree": "dab76fc8e717241e1e035f3856d22af5582c1c9c",
      "parents": [
        "b00eca8cd66029128615e8be9a19e284a950c0f2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jan 18 09:08:26 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:40:39 2010 +0100"
      },
      "message": "perf: Fix perf_event_do_pending() fallback callsite\n\nPaul questioned the context in which we should call\nperf_event_do_pending(). After looking at that I found that it should be\ncalled from IRQ context these days, however the fallback call-site is\nplaced in softirq context. Ammend this by placing the callback in the IRQ\ntimer path.\n\nReported-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1263374859.4244.192.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6d558c3ac9b6508d26fd5cadccce51fc9d726b1c",
      "tree": "dbad2aa9c5874ea7ee5fff1f9f32b0be208c3df6",
      "parents": [
        "50b926e439620c469565e8be0f28be78f5fca1ce"
      ],
      "author": {
        "name": "Yong Zhang",
        "email": "yong.zhang0@gmail.com",
        "time": "Mon Jan 11 14:21:25 2010 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:39:04 2010 +0100"
      },
      "message": "sched: Reassign prev and switch_count when reacquire_kernel_lock() fail\n\nAssume A-\u003eB schedule is processing, if B have acquired BKL before and it\nneed reschedule this time. Then on B\u0027s context, it will go to\nneed_resched_nonpreemptible for reschedule. But at this time, prev and\nswitch_count are related to A. It\u0027s wrong and will lead to incorrect\nscheduler statistics.\n\nSigned-off-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c2674af741001102238w7b0ddcadref00d345e2181d11@mail.gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "50b926e439620c469565e8be0f28be78f5fca1ce",
      "tree": "3eb4b4aa89ed7c6d61457cdf745c5d52f577671a",
      "parents": [
        "24bc7347da73a9ed3383056c3d0f28c0e361621e"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Mon Jan 04 14:44:56 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 21 13:39:03 2010 +0100"
      },
      "message": "sched: Fix vmark regression on big machines\n\nSD_PREFER_SIBLING is set at the CPU domain level if power saving isn\u0027t\nenabled, leading to many cache misses on large machines as we traverse\nlooking for an idle shared cache to wake to.  Change the enabler of\nselect_idle_sibling() to SD_SHARE_PKG_RESOURCES, and enable same at the\nsibling domain level.\n\nReported-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1262612696.15495.15.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ea9d8e3f45404d411c00ae67b45cc35c58265bb7",
      "tree": "227fbaa1c05feec65dad473e7a49133985759ab7",
      "parents": [
        "7dc9c484a71525794ca05cf7a47f283f1b54cd12"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Thu Jan 07 11:22:44 2010 +0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Jan 18 14:44:50 2010 +0100"
      },
      "message": "clockevent: Don\u0027t remove broadcast device when cpu is dead\n\nMarc reported that the BUG_ON in clockevents_notify() triggers on his\nsystem. This happens because the kernel tries to remove an active\nclock event device (used for broadcasting) from the device list.\n\nThe handling of devices which can be used as per cpu device and as a\nglobal broadcast device is suboptimal.\n\nThe simplest solution for now (and for stable) is to check whether the\ndevice is used as global broadcast device, but this needs to be\nrevisited.\n\n[ tglx: restored the cpuweight check and massaged the changelog ]\n\nReported-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nTested-by: Marc Dionne \u003cmarc.c.dionne@gmail.com\u003e\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nLKML-Reference: \u003c1262834564-13033-1-git-send-email-dfeng@redhat.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "2a8249daf6e2d643bf47a68a7fef2584a0597cb5",
      "tree": "182e640660eac46dc656e4eaa508adb7175ca199",
      "parents": [
        "c6a93d330b53fa587f550aedcdeb93ff23ea7f87",
        "7485d0d3758e8e6491a5c9468114e74dc050785d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futexes: Remove rw parameter from get_futex_key()\n"
    },
    {
      "commit": "6ccc347b699681a0b21c2f7b1a1f85500a58c6b8",
      "tree": "abe33c75ae53d445abde0e5986b96ef696501d38",
      "parents": [
        "eb29a5cc0b601c458bae9df2f6c3696d75c2d383",
        "d1303dd1d6b220cab375f24fa91a5640e54e169e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/filters: Add comment for match callbacks\n  tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n  tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n  lib: Introduce strnstr()\n  tracing/filters: Fix MATCH_END_ONLY filter matching\n  tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n  ftrace: Fix MATCH_END_ONLY function filter\n  tracing/x86: Derive arch from bits argument in recordmcount.pl\n  ring-buffer: Add rb_list_head() wrapper around new reader page next field\n  ring-buffer: Wrap a list.next reference with rb_list_head()\n"
    },
    {
      "commit": "af2422c42c0ff42b8b93dbb3a5fe65250fb65c40",
      "tree": "cb3eb1488225b1c295044c40b841cde60e499fd4",
      "parents": [
        "cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86"
      ],
      "author": {
        "name": "David John",
        "email": "davidjon@xenontk.org",
        "time": "Fri Jan 15 17:01:23 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "smp_call_function_any(): pass the node value to cpumask_of_node()\n\nThe change in acpi_cpufreq to use smp_call_function_any causes a warning\nwhen it is called since the function erroneously passes the cpu id to\ncpumask_of_node rather than the node that the cpu is on.  Fix this.\n\ncpumask_of_node(3): node \u003e nr_node_ids(1)\nPid: 1, comm: swapper Not tainted 2.6.33-rc3-00097-g2c1f189 #223\nCall Trace:\n [\u003cffffffff81028bb3\u003e] cpumask_of_node+0x23/0x58\n [\u003cffffffff81061f51\u003e] smp_call_function_any+0x65/0xfa\n [\u003cffffffff810160d1\u003e] ? do_drv_read+0x0/0x2f\n [\u003cffffffff81015fba\u003e] get_cur_val+0xb0/0x102\n [\u003cffffffff81016080\u003e] get_cur_freq_on_cpu+0x74/0xc5\n [\u003cffffffff810168a7\u003e] acpi_cpufreq_cpu_init+0x417/0x515\n [\u003cffffffff81562ce9\u003e] ? __down_write+0xb/0xd\n [\u003cffffffff8148055e\u003e] cpufreq_add_dev+0x278/0x922\n\nSigned-off-by: David John \u003cdavidjon@xenontk.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5dab600e6a153ceb64832f608069e6c08185411a",
      "tree": "866d05be2255bd4f0c146534741b10c60afe9b79",
      "parents": [
        "d994ffc247f7c4a48b848f10c4c01c9b06411ada"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: document everywhere that size has to be power of two\n\nOn my first try using them I missed that the fifos need to be power of\ntwo, resulting in a runtime bug.  Document that requirement everywhere\n(and fix one grammar bug)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1",
      "tree": "09cef2a043af96491497db380abe89af2aee5176",
      "parents": [
        "64ce1037c5434b1d036cd99ecaee6e00496bc2e9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_out_peek\n\nIn some upcoming code it\u0027s useful to peek into a FIFO without permanentely\nremoving data.  This patch implements a new kfifo_out_peek() to do this.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64ce1037c5434b1d036cd99ecaee6e00496bc2e9",
      "tree": "37a8c8f1dccdcdb3d00bf07d36d86fe6ea05f3f9",
      "parents": [
        "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: sanitize *_user error handling\n\nRight now for kfifo_*_user it\u0027s not easily possible to distingush between\na user copy failing and the FIFO not containing enough data.  The problem\nis that both conditions are multiplexed into the same return code.\n\nAvoid this by moving the \"copy length\" into a separate output parameter\nand only return 0/-EFAULT in the main return value.\n\nI didn\u0027t fully adapt the weird \"record\" variants, those seem\nto be unused anyways and were rather messy (should they be just removed?)\n\nI would appreciate some double checking if I did all the conversions\ncorrectly.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2",
      "tree": "44c8400754bc42a072fe7dc117696ebb5699920e",
      "parents": [
        "2427b8e3eaea3719e53bbed7b3375382c3aa6f13"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: use void * pointers for user buffers\n\nThe pointers to user buffers are currently unsigned char *, which requires\na lot of casting in the caller for any non-char typed buffers.  Use void *\ninstead.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1303dd1d6b220cab375f24fa91a5640e54e169e",
      "tree": "6b37f4fe7ef331e18c35919ae2fab0ce9da5e6b9",
      "parents": [
        "16da27a8bc7a0d050686d1b2e9efb53fab9ed226"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:40 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:14 2010 -0500"
      },
      "message": "tracing/filters: Add comment for match callbacks\n\nWe should be clear on 2 things:\n\n- the length parameter of a match callback includes\n  tailing \u0027\\0\u0027.\n\n- the string to be searched might not be NULL-terminated.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8770.7000608@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "16da27a8bc7a0d050686d1b2e9efb53fab9ed226",
      "tree": "def65eba395d9b2a2531f87dc1dd051be7845e92",
      "parents": [
        "b2af211f284eb1bef19fbb85fc8ef551bb1e7460"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:27 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:12 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n\nMATCH_FULL matching for PTR_STRING is not working correctly:\n\n  # echo \u0027func \u003d\u003d vt\u0027 \u003e events/bkl/lock_kernel/filter\n  # echo 1 \u003e events/bkl/lock_kernel/enable\n  ...\n  # cat trace\n   Xorg-1484  [000]  1973.392586: lock_kernel: ... func\u003dvt_ioctl()\n    gpm-1402  [001]  1974.027740: lock_kernel: ... func\u003dvt_ioctl()\n\nWe should pass to regex.match(..., len) the length (including \u0027\\0\u0027)\nof the source string instead of the length of the pattern string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8763.5070707@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2af211f284eb1bef19fbb85fc8ef551bb1e7460",
      "tree": "251b3848de7478ad9123c92fc7c95a464bd84f78",
      "parents": [
        "d5f1fb53353edc38da326445267c1df0c9676df2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:11 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:11 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n\nThe @str might not be NULL-terminated if it\u0027s of type\nDYN_STRING or STATIC_STRING, so we should use strnstr()\ninstead of strstr().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8753.2000102@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a3291c14ecf0a995e30d993b7f2cae031de98727",
      "tree": "46b0ed65d437fdffba57866af1ce51d0d15a7673",
      "parents": [
        "285caad415f459f336247932b4db95a571357a02"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:41 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:07 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_END_ONLY filter matching\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but event filtering incorrectly disallows strings\nlike bar_foo_foo:\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8735.6070604@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "285caad415f459f336247932b4db95a571357a02",
      "tree": "b4372c5336dee9919f26c61a4808ef08993a43a6",
      "parents": [
        "751e9983ee276cb150e8812b1d995f6035a63878"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:21 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:05 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n\nMATCH_FRONT_ONLY actually is a full matching:\n\n  # ./perf record -R -f -a -e lock:lock_acquire \\\n\t--filter \u0027name ~rcu_*\u0027 sleep 1\n  # ./perf trace\n  (no output)\n\nWe should pass the length of the pattern string to strncmp().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8721.5090301@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "751e9983ee276cb150e8812b1d995f6035a63878",
      "tree": "7f9abfa2ea11bcc2ccfa9922af17811d5020fa69",
      "parents": [
        "b82a4045f7962483a78a874343dc6e31b79c96c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:02 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:03 2010 -0500"
      },
      "message": "ftrace: Fix MATCH_END_ONLY function filter\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but ftrace filter incorrectly disallows strings\nlike bar_foo_foo:\n\n  # echo \u0027*io\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter | grep \u0027req_bio_endio\u0027\n  # cat available_filter_functions | grep \u0027req_bio_endio\u0027\n  req_bio_endio\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E870E.6060607@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7485d0d3758e8e6491a5c9468114e74dc050785d",
      "tree": "073fb295550c96f075cbf968858bbab7e9fe5061",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Jan 05 16:32:43 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 09:17:36 2010 +0100"
      },
      "message": "futexes: Remove rw parameter from get_futex_key()\n\nCurrently, futexes have two problem:\n\nA) The current futex code doesn\u0027t handle private file mappings properly.\n\nget_futex_key() uses PageAnon() to distinguish file and\nanon, which can cause the following bad scenario:\n\n  1) thread-A call futex(private-mapping, FUTEX_WAIT), it\n     sleeps on file mapping object.\n  2) thread-B writes a variable and it makes it cow.\n  3) thread-B calls futex(private-mapping, FUTEX_WAKE), it\n     wakes up blocked thread on the anonymous page. (but it\u0027s nothing)\n\nB) Current futex code doesn\u0027t handle zero page properly.\n\nRead mode get_user_pages() can return zero page, but current\nfutex code doesn\u0027t handle it at all. Then, zero page makes\ninfinite loop internally.\n\nThe solution is to use write mode get_user_page() always for\npage lookup. It prevents the lookup of both file page of private\nmappings and zero page.\n\nPerformance concerns:\n\nProbaly very little, because glibc always initialize variables\nfor futex before to call futex(). It means glibc users never see\nthe overhead of this patch.\n\nCompatibility concerns:\n\nThis patch has few compatibility issues. After this patch,\nFUTEX_WAIT require writable access to futex variables (read-only\nmappings makes EFAULT). But practically it\u0027s not a problem,\nglibc always initalizes variables for futexes explicitly - nobody\nuses read-only mappings.\n\nReported-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Ulrich Drepper \u003cdrepper@gmail.com\u003e\nLKML-Reference: \u003c20100105162633.45A2.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b45c6e76bc2c72f6426c14bed64fdcbc9bf37cb0",
      "tree": "5b1d7a869db512f1297c82142adf006c3c6786c0",
      "parents": [
        "bd4f490a079730aadfaf9a728303ea0135c01945"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 08 14:42:52 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:05 2010 -0800"
      },
      "message": "kernel/signal.c: fix kernel information leak with print-fatal-signals\u003d1\n\nWhen print-fatal-signals is enabled it\u0027s possible to dump any memory\nreachable by the kernel to the log by simply jumping to that address from\nuser space.\n\nOr crash the system if there\u0027s some hardware with read side effects.\n\nThe fatal signals handler will dump 16 bytes at the execution address,\nwhich is fully controlled by ring 3.\n\nIn addition when something jumps to a unmapped address there will be up to\n16 additional useless page faults, which might be potentially slow (and at\nleast is not very efficient)\n\nFortunately this option is off by default and only there on i386.\n\nBut fix it by checking for kernel addresses and also stopping when there\u0027s\na page fault.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bd4f490a079730aadfaf9a728303ea0135c01945",
      "tree": "7de1396233a18a8da5e4b204415a8859154c79bc",
      "parents": [
        "272a897904b9a067550f5b8e812036b65180418f"
      ],
      "author": {
        "name": "Dave Anderson",
        "email": "anderson@redhat.com",
        "time": "Fri Jan 08 14:42:50 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:05 2010 -0800"
      },
      "message": "cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput()\n\nThe LTP cgroup test suite generates a \"kernel BUG at kernel/cgroup.c:790!\"\nhere in cgroup_diput():\n\n                 /*\n                  * if we\u0027re getting rid of the cgroup, refcount should ensure\n                  * that there are no pidlists left.\n                  */\n                 BUG_ON(!list_empty(\u0026cgrp-\u003epidlists));\n\nThe cgroup pidlist rework in 2.6.32 generates the BUG_ON, which is caused\nwhen pidlist_array_load() calls cgroup_pidlist_find():\n\n(1) if a matching cgroup_pidlist is found, it down_write\u0027s the mutex of the\n     pre-existing cgroup_pidlist, and increments its use_count.\n(2) if no matching cgroup_pidlist is found, then a new one is allocated, it\n     down_write\u0027s its mutex, and the use_count is set to 0.\n(3) the matching, or new, cgroup_pidlist gets returned back to pidlist_array_load(),\n     which increments its use_count -- regardless whether new or pre-existing --\n     and up_write\u0027s the mutex.\n\nSo if a matching list is ever encountered by cgroup_pidlist_find() during\nthe life of a cgroup directory, it results in an inflated use_count value,\npreventing it from ever getting released by cgroup_release_pid_array().\nThen if the directory is subsequently removed, cgroup_diput() hits the\nBUG_ON() when it finds that the directory\u0027s cgroup is still populated with\na pidlist.\n\nThe patch simply removes the use_count increment when a matching pidlist\nis found by cgroup_pidlist_find(), because it gets bumped by the calling\npidlist_array_load() function while still protected by the list\u0027s mutex.\n\nSigned-off-by: Dave Anderson \u003canderson@redhat.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8767ba2796a1c894e6d9524584a26a8224f0543d",
      "tree": "cefe04f3420ae11d46c4badbd1d3b2993da156b7",
      "parents": [
        "42d53b4ff7d61487d18274ebdf1f70c1aef6f122"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Fri Jan 08 14:42:38 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:04 2010 -0800"
      },
      "message": "kmod: fix resource leak in call_usermodehelper_pipe()\n\nFix resource (write-pipe file) leak in call_usermodehelper_pipe().\n\nWhen call_usermodehelper_exec() fails, write-pipe file is opened and\ncall_usermodehelper_pipe() just returns an error.  Since it is hard for\ncaller to determine whether the error occured when opening the pipe or\nexecuting the helper, the caller cannot close the pipe by themselves.\n\nI\u0027ve found this resoruce leak when testing coredump.  You can check how\nthe resource leaks as below;\n\n$ echo \"|nocommand\" \u003e /proc/sys/kernel/core_pattern\n$ ulimit -c unlimited\n$ while [ 1 ]; do ./segv; done \u0026\u003e /dev/null \u0026\n$ cat /proc/meminfo (\u003c- repeat it)\n\nwhere segv.c is;\n//-----\nint main () {\n        char *p \u003d 0;\n        *p \u003d 1;\n}\n//-----\n\nThis patch closes write-pipe file if call_usermodehelper_exec() failed.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e1ff5d72a6393f2ef5dbf74f58bb55a12d63834",
      "tree": "e9a9600a14fa4d1f2b045097c9e9d7d03463f0bf",
      "parents": [
        "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "message": "ring-buffer: Add rb_list_head() wrapper around new reader page next field\n\nIf the very unlikely case happens where the writer moves the head by one\nbetween where the head page is read and where the new reader page\nis assigned _and_ the writer then writes and wraps the entire ring buffer\nso that the head page is back to what was originally read as the head page,\nthe page to be swapped will have a corrupted next pointer.\n\nSimple solution is to wrap the assignment of the next pointer with a\nrb_list_head().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29",
      "tree": "e18c745a2b1b147a9222a615e9d0c39e8a6f7938",
      "parents": [
        "c6f7afaeeda5b3c42ea8d7b27e197d223a04675e"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Jan 06 17:12:07 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:38:25 2010 -0500"
      },
      "message": "ring-buffer: Wrap a list.next reference with rb_list_head()\n\nThis reference at the end of rb_get_reader_page() was causing off-by-one\nwrites to the prev pointer of the page after the reader page when that\npage is the head page, and therefore the reader page has the RB_PAGE_HEAD\nflag in its list.next pointer. This eventually results in a GPF in a\nsubsequent call to rb_set_head_page() (usually from rb_get_reader_page())\nwhen that prev pointer is dereferenced. The dereferenced register would\ncharacteristically have an address that appears shifted left by one byte\n(eg, ffxxxxxxxxxxxxyy instead of ffffxxxxxxxxxxxx) due to being written at\nan address one byte too high.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1262826727-9090-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "10b465aaf9536ee5a16652fa0700740183d48ec9",
      "tree": "402597ee1ed00b2cfb57f14dba96199134a79b26",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sat Dec 19 14:43:01 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 06 01:11:29 2010 -0800"
      },
      "message": "modules: Skip empty sections when exporting section notes\n\nCommit 35dead4 \"modules: don\u0027t export section names of empty sections\nvia sysfs\" changed the set of sections that have attributes, but did\nnot change the iteration over these attributes in add_notes_attrs().\nThis can lead to add_notes_attrs() creating attributes with the wrong\nnames or with null name pointers.\n\nIntroduce a sect_empty() function and use it in both add_sect_attrs()\nand add_notes_attrs().\n\nReported-by: Martin Michlmayr \u003ctbm@cyrius.com\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nTested-by: Martin Michlmayr \u003ctbm@cyrius.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "952363c90c93e967c8e1819131b68cbb6f9c962f",
      "tree": "d68303e8615d56cff385ee1331ab536994e8096f",
      "parents": [
        "2d959e95658a0224b0dd0d787926d5ffc95f9574",
        "05cbaa2853cdfc255fdd04e65a82bfe9208c4e52"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:56:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:56:24 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix NULL deref in inheritance code\n  perf: Pass appropriate frame pointer to dump_trace()\n"
    },
    {
      "commit": "9d6e323c687c7b94c703c9b0900a74e5d262d462",
      "tree": "82b6dfff0fa732cfabde42001482aad144bb3945",
      "parents": [
        "b21c07040304b8716e38a4a0e4ab60f386357e61",
        "4efb5290ae187514bd31af8c2d7755e175245e19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:24 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf kmem: Fix statistics typo\n  kprobes: Fix distinct type warning\n  perf: Rename perf_event_hw_event in design document\n  perf tools: Add missing header files to LIB_H Makefile variable\n  perf record: We should fork only if a program was specified to run\n  perf diff: Fix usage array, it must end with a NULL entry\n"
    },
    {
      "commit": "b21c07040304b8716e38a4a0e4ab60f386357e61",
      "tree": "eb2cf03ec35b9a5090c0adaab659a766e02c3b10",
      "parents": [
        "4e58fb7305449cf8c5a86dd97dfc1812221be77c",
        "fb7ae981cb9fe8665b9da97e8734745e030c151d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix sign fields in ftrace_define_fields_##call()\n  tracing/syscalls: Fix typo in SYSCALL_DEFINE0\n  tracing/kprobe: Show sign of fields in trace_kprobe format files\n  ksym_tracer: Remove trace_stat\n  ksym_tracer: Fix race when incrementing count\n  ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n  ksym_tracer: Fix to make the tracer work\n  tracing: Kconfig spelling fixes and cleanups\n  tracing: Fix setting tracer specific options\n  Documentation: Update ftrace-design.txt\n  Documentation: Update tracepoint-analysis.txt\n  Documentation: Update mmiotrace.txt\n"
    },
    {
      "commit": "0f4bd46ec252887f44f1f065b41867cac8f70dfb",
      "tree": "daa176e9f9e1f5e9ba8c5476b5333142f31aa062",
      "parents": [
        "60d9aa758c00f20ade0cb1951f6a934f628dd2d7"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Dec 22 03:15:43 2009 +0000"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Dec 31 19:45:04 2009 +0000"
      },
      "message": "kmsg_dump: Dump on crash_kexec as well\n\ncrash_kexec gets called before kmsg_dump(KMSG_DUMP_OOPS) if\npanic_on_oops is set, so the kernel log buffer is not stored\nfor this case.\n\nThis patch adds a KMSG_DUMP_KEXEC dump type which gets called\nwhen crash_kexec() is invoked. To avoid getting double dumps,\nthe old KMSG_DUMP_PANIC is moved below crash_kexec(). The\nmtdoops driver is modified to handle KMSG_DUMP_KEXEC in the\nsame way as a panic.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Simon Kagstrom \u003csimon.kagstrom@netinsight.net\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n"
    },
    {
      "commit": "05cbaa2853cdfc255fdd04e65a82bfe9208c4e52",
      "tree": "83a6b8ea45fe181e623aa6c532cb9176400199de",
      "parents": [
        "48b5ba9cc98d676712da29d9931f1c88e5185ff2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 30 16:00:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 31 13:11:31 2009 +0100"
      },
      "message": "perf: Fix NULL deref in inheritance code\n\nLiming found a NULL deref when a task has a perf context but no\ncounters  when it forks.\n\nThis can occur in two cases, a race during construction where\nthe fork hits after installing the context but before the first\ncounter gets inserted, or more reproducably, a fork after the\nlast counter is closed (which leaves the context around).\n\nReported-by: Wang Liming \u003climing.wang@windriver.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCC: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c1262185684.7135.222.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fb7ae981cb9fe8665b9da97e8734745e030c151d",
      "tree": "7b127c1bd4c0457c30f57d0f9c6ceacf69ab88c2",
      "parents": [
        "e96dc9674cb597de4fee757ed005c8465072d13f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:38 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:06 2009 -0500"
      },
      "message": "tracing: Fix sign fields in ftrace_define_fields_##call()\n\nAdd is_signed_type() call to trace_define_field() in ftrace macros.\n\nThe code previously just passed in 0 (false), disregarding whether\nor not the field was actually a signed type.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3A.6020007@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "79b408210885b9f7f0b067b07a09d68f4da3a700",
      "tree": "b1297cf9ce84442abe48e67debf67214bd00ac9b",
      "parents": [
        "53ab668064edaeef99c0ee22799483d45f4c81f6"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:19 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:03 2009 -0500"
      },
      "message": "tracing/kprobe: Show sign of fields in trace_kprobe format files\n\nThe format files of trace_kprobe do not show the sign of the fields.\nThe other format files show the field signed type of the fields and\nthis patch makes the trace_kprobe formats consistent with the others.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D27.5040009@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "53ab668064edaeef99c0ee22799483d45f4c81f6",
      "tree": "1aa92f9e5bbddb61cbc3d5683180dc64abe341fc",
      "parents": [
        "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:24:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:50 2009 +0100"
      },
      "message": "ksym_tracer: Remove trace_stat\n\ntrace_stat is problematic. Don\u0027t use it, use seqfile instead.\n\nThis fixes a race that reading the stat file is not protected by\nany lock, which can lead to use after free.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF203.40200@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5",
      "tree": "1ca34f9f0608f688069da43688b2a9b8fa163644",
      "parents": [
        "3d13ec2efdb5843ad91e57b60d50b44d922cf063"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:40 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix race when incrementing count\n\nWe are under rcu read section but not holding the write lock, so\ncount++ is not atomic. Use atomic64_t instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1EC.9010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d13ec2efdb5843ad91e57b60d50b44d922cf063",
      "tree": "35eb9a0ce4571bded972c28bc00526d9f51819dd",
      "parents": [
        "88f7a890d74137ab0d126a5d65679cd620f1a289"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n\nIt used to work, but now doesn\u0027t:\n\n # echo \u003e ksym_filter\n bash: echo: write error: Invalid argument\n\nIt\u0027s caused by d954fbf0ff6b5fdfb32350e85a2f15d3db976506\n(\"tracing: Fix wrong usage of strstrip in trace_ksyms\").\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1D7.5040400@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88f7a890d74137ab0d126a5d65679cd620f1a289",
      "tree": "93f6a908ae6eca32dd7b06be5a0cfb856c7877ac",
      "parents": [
        "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:22:22 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:47 2009 +0100"
      },
      "message": "ksym_tracer: Fix to make the tracer work\n\nksym tracer doesn\u0027t work:\n\n # echo tasklist_lock:rw- \u003e ksym_trace_filter\n -bash: echo: write error: No such device\n\nIt\u0027s because we pass to perf_event_create_kernel_counter()\na cpu number which is not present.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF19E.1010201@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77",
      "tree": "f73c4b14b52247911a89fbcce0bcf9bd2b227913",
      "parents": [
        "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Dec 21 12:01:17 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:37:54 2009 +0100"
      },
      "message": "tracing: Kconfig spelling fixes and cleanups\n\nFix filename reference (ftrace-implementation.txt -\u003e\nftrace-design.txt).\n\nFix spelling, punctuation, grammar.\n\nFix help text indentation and line lengths to reduce need for\nhorizontal scrolling or larger window sizes.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20091221120117.3fb49cdc.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2ef6661ce62e26a8c0978e521fab646128a144b",
      "tree": "d03139549a1bfd627249a4db2e36b788b62462e3",
      "parents": [
        "0b413e44d64aeac36a096505a40fc2ff470872fa"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Dec 21 13:02:24 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:25:31 2009 +0100"
      },
      "message": "kprobes: Fix distinct type warning\n\nEvery time I see this:\n\n kernel/kprobes.c: In function \u0027register_kretprobe\u0027:\n kernel/kprobes.c:1038: warning: comparison of distinct pointer types lacks a cast\n\nI\u0027m wondering if something changed in common code and we need to\ndo something for s390. Apparently that\u0027s not the case.\nLet\u0027s get rid of this annoying warning.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c20091221120224.GA4471@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b5e2588d8238b03df66c4e74769fd03ad84f694",
      "tree": "7a7baf0d8309a3473bf265d1354bb756d65a4a02",
      "parents": [
        "6067d7e4f05e5c08617cf95032867d892035e581",
        "443c6f145de813518c36ac6b6e4e08d9445337e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 24 13:01:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 24 13:01:29 2009 -0800"
      },
      "message": "Merge branch \u0027sysctl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc-2.6\n\n* \u0027sysctl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc-2.6:\n  SYSCTL: Add a mutex to the page_alloc zone order sysctl\n  SYSCTL: Print binary sysctl warnings (nearly) only once\n"
    },
    {
      "commit": "4440095c8268c1a5e11577097d2be429cec036ca",
      "tree": "7e1ca48bcd8fd0b947a7cc0edf31c0af9bbc4ec3",
      "parents": [
        "f42ecb2808db5386f983d593a7c08d3ea3b94a27"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Dec 23 21:00:20 2009 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Dec 23 21:00:20 2009 +0100"
      },
      "message": "SYSCTL: Print binary sysctl warnings (nearly) only once\n\nWhen printing legacy sysctls print the warning message\nfor each of them only once.  This way there is a guarantee\nthe syslog won\u0027t be flooded for any sane program.\n\nThe original attempt at this made the tables non const and stored\nthe flag inline.\n\nLinus suggested using a separate hash table for this, this is based on a\ncode snippet from him.\n\nThe hash implies this is not exact and can sometimes not print a\nnew sysctl due to a hash collision, but in practice this should not\nbe a problem\n\nI used a FNV32 hash over the binary string with a 32byte bitmap. This\ngives relatively little collisions when all the predefined binary sysctls\nare hashed:\n\nsize 256\nbucket\nlength      number\n0:          [25]\n1:          [67]\n2:          [88]\n3:          [47]\n4:          [22]\n5:          [6]\n6:          [1]\n\nThe worst case is a single collision of 6 hash values.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "6432ed648a204d01d160990630178a1569b36852",
      "tree": "f8171068c01318883faeac903e8cc589a9c9f154",
      "parents": [
        "94e5165aa72826b05ffd492f334a1465187e255a",
        "0c69774e6ce94364cfaa8bdeb18061edc414bc5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 23 09:12:57 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 23 09:12:57 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Revert 738d2be, simplify set_task_cpu()\n"
    },
    {
      "commit": "0c69774e6ce94364cfaa8bdeb18061edc414bc5a",
      "tree": "b83fdb55af2f9b9dddcab4a273739ebe1c810594",
      "parents": [
        "f7b84a6ba7eaeba4e1df8feddca1473a7db369a5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Dec 22 15:43:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 23 10:04:10 2009 +0100"
      },
      "message": "sched: Revert 738d2be, simplify set_task_cpu()\n\nEffectively reverts 738d2be4301007f054541c5c4bf7fb6a361c9b3a.\n\nAs demonstrated by Eric, we really need to call __set_task_cpu()\nearly in the fork() path to properly initialize the various task\nstate -- specifically the cgroup state through set_task_rq().\n\n[ we could probably fix this by explicitly calling\n  __set_task_cpu() from   sched_fork(), but lets try that for the\n  next cycle and simply revert to the old behaviour for now. ]\n\nReported-by: Eric Paris \u003ceparis@redhat.com\u003e\nTested-by: Eric Paris \u003ceparis@redhat.com\u003e,\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: efault@gmx.de\nLKML-Reference: \u003c1261492999.4937.36.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe35d4a0289a8d6efcacb57e9a377b845686df10",
      "tree": "05ff26e6658d3ddc6e4885059bbf018b1681bb3b",
      "parents": [
        "9917f7bbe96432012d3ad8075e9fd99390255d0c",
        "28ba0ec64ca0f6ad2b0338ccec0b00a4e64e7a69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:20:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:20:48 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  jfs: Fix 32bit build warning\n  Remove obsolete comment in fs.h\n  Sanitize f_flags helpers\n  Fix f_flags/f_mode in case of lookup_instantiate_filp() from open(pathname, 3)\n  anonfd: Allow making anon files read-only\n  fs/compat_ioctl.c: fix build error when !BLOCK\n  pohmelfs needs I_LOCK\n  alloc_file(): simplify handling of mnt_clone_write() errors\n"
    },
    {
      "commit": "86d4880313603810901f639ccb5c88ff13d4ad3c",
      "tree": "c182d890b5c96a1143b70b00b93e3fc4a9263555",
      "parents": [
        "a121f24accac1600bf5b6fb1e12eeabdfed7cb1a"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: add record handling functions\n\nAdd kfifo_in_rec() - puts some record data into the FIFO\n Add kfifo_out_rec() - gets some record data from the FIFO\n Add kfifo_from_user_rec() - puts some data from user space into the FIFO\n Add kfifo_to_user_rec() - gets data from the FIFO and write it to user space\n Add kfifo_peek_rec() - gets the size of the next FIFO record field\n Add kfifo_skip_rec() - skip the next fifo out record\n Add kfifo_avail_rec() - determinate the number of bytes available in a record FIFO\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a121f24accac1600bf5b6fb1e12eeabdfed7cb1a",
      "tree": "24a3bb527e50304677785dbb390dd5ff838c94e8",
      "parents": [
        "37bdfbbfaab47811fcec84dff23c4e8da1a09f9e"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: add kfifo_skip, kfifo_from_user and kfifo_to_user\n\nAdd kfifo_reset_out() for save lockless discard the fifo output\n Add kfifo_skip() to skip a number of output bytes\n Add kfifo_from_user() to copy user space data into the fifo\n Add kfifo_to_user() to copy fifo data to user space\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7acd72eb85f1c7a15e8b5eb554994949241737f1",
      "tree": "76712bb9f38690d8cf9c2f91bef811e4413d1aa3",
      "parents": [
        "e64c026dd09b73faf20707711402fc5ed55a8e70"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: rename kfifo_put... into kfifo_in... and kfifo_get... into kfifo_out...\n\nrename kfifo_put...  into kfifo_in...  to prevent miss use of old non in\nkernel-tree drivers\n\nditto for kfifo_get...  -\u003e kfifo_out...\n\nImprove the prototypes of kfifo_in and kfifo_out to make the kerneldoc\nannotations more readable.\n\nAdd mini \"howto porting to the new API\" in kfifo.h\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e64c026dd09b73faf20707711402fc5ed55a8e70",
      "tree": "4780736e021824f15329a0826eff3cc27d3f9646",
      "parents": [
        "c1e13f25674ed564948ecb7dfe5f83e578892896"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: cleanup namespace\n\nchange name of __kfifo_* functions to kfifo_*, because the prefix __kfifo\nshould be reserved for internal functions only.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1e13f25674ed564948ecb7dfe5f83e578892896",
      "tree": "24fac07b3e2b66dff01c3127b34077de1de4c101",
      "parents": [
        "45465487897a1c6d508b14b904dc5777f7ec7e04"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: move out spinlock\n\nMove the pointer to the spinlock out of struct kfifo.  Most users in\ntree do not actually use a spinlock, so the few exceptions now have to\ncall kfifo_{get,put}_locked, which takes an extra argument to a\nspinlock.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45465487897a1c6d508b14b904dc5777f7ec7e04",
      "tree": "935c8dae68dc793ff2f795d57cf027531475cd53",
      "parents": [
        "2ec91eec47f713e3d158ba5b28a24a85a2cf3650"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:55 2009 -0800"
      },
      "message": "kfifo: move struct kfifo in place\n\nThis is a new generic kernel FIFO implementation.\n\nThe current kernel fifo API is not very widely used, because it has to\nmany constrains.  Only 17 files in the current 2.6.31-rc5 used it.\nFIFO\u0027s are like list\u0027s a very basic thing and a kfifo API which handles\nthe most use case would save a lot of development time and memory\nresources.\n\nI think this are the reasons why kfifo is not in use:\n\n - The API is to simple, important functions are missing\n - A fifo can be only allocated dynamically\n - There is a requirement of a spinlock whether you need it or not\n - There is no support for data records inside a fifo\n\nSo I decided to extend the kfifo in a more generic way without blowing up\nthe API to much.  The new API has the following benefits:\n\n - Generic usage: For kernel internal use and/or device driver.\n - Provide an API for the most use case.\n - Slim API: The whole API provides 25 functions.\n - Linux style habit.\n - DECLARE_KFIFO, DEFINE_KFIFO and INIT_KFIFO Macros\n - Direct copy_to_user from the fifo and copy_from_user into the fifo.\n - The kfifo itself is an in place member of the using data structure, this save an\n   indirection access and does not waste the kernel allocator.\n - Lockless access: if only one reader and one writer is active on the fifo,\n   which is the common use case, no additional locking is necessary.\n - Remove spinlock - give the user the freedom of choice what kind of locking to use if\n   one is required.\n - Ability to handle records. Three type of records are supported:\n   - Variable length records between 0-255 bytes, with a record size\n     field of 1 bytes.\n   - Variable length records between 0-65535 bytes, with a record size\n     field of 2 bytes.\n   - Fixed size records, which no record size field.\n - Preserve memory resource.\n - Performance!\n - Easy to use!\n\nThis patch:\n\nSince most users want to have the kfifo as part of another object,\nreorganize the code to allow including struct kfifo in another data\nstructure.  This requires changing the kfifo_alloc and kfifo_init\nprototypes so that we pass an existing kfifo pointer into them.  This\npatch changes the implementation and all existing users.\n\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83f57a11d84460dfe2afdb5a8bc759953428e38b",
      "tree": "b8506a6b61eb23e3d203fb248776c7eab9270c2d",
      "parents": [
        "0e2c8b8f55072a98b99e7bdad55c912084d6a526"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "message": "Revert \"time: Remove xtime_cache\"\n\nThis reverts commit 7bc7d637452383d56ba4368d4336b0dde1bb476d, as\nrequested by John Stultz. Quoting John:\n\n \"Petr Titěra reported an issue where he saw odd atime regressions with\n  2.6.33 where there were a full second worth of nanoseconds in the\n  nanoseconds field.\n\n  He also reviewed the time code and narrowed down the problem: unhandled\n  overflow of the nanosecond field caused by rounding up the\n  sub-nanosecond accumulated time.\n\n  Details:\n\n   * At the end of update_wall_time(), we currently round up the\n  sub-nanosecond portion of accumulated time when storing it into xtime.\n  This was added to avoid time inconsistencies caused when the\n  sub-nanosecond portion was truncated when storing into xtime.\n  Unfortunately we don\u0027t handle the possible second overflow caused by\n  that rounding.\n\n   * Previously the xtime_cache code hid this overflow by normalizing the\n  xtime value when storing into the xtime_cache.\n\n   * We could try to handle the second overflow after the rounding up, but\n  since this affects the timekeeping\u0027s internal state, this would further\n  complicate the next accumulation cycle, causing small errors in ntp\n  steering. As much as I\u0027d like to get rid of it, the xtime_cache code is\n  known to work.\n\n   * The correct fix is really to include the sub-nanosecond portion in the\n  timekeeping accessor function, so we don\u0027t need to round up at during\n  accumulation. This would greatly simplify the accumulation code.\n  Unfortunately, we can\u0027t do this safely until the last three\n  non-GENERIC_TIME arches (sparc32, arm, cris) are converted  (those\n  patches are in -mm) and we kill off the spots where arches set xtime\n  directly. This is all 2.6.34 material, so I think reverting the\n  xtime_cache change is the best approach for now.\n\n  Many thanks to Petr for both reporting and finding the issue!\"\n\nReported-by: Petr Titěra \u003cP.Titera@century.cz\u003e\nRequested-by: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5300990c0370e804e49d9a59d928c5d53fb73487",
      "tree": "08ed922afd172662039c082ec9e9410070f4afe8",
      "parents": [
        "482928d59db668b8d82a48717f78986d8cea72e9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Dec 19 10:15:07 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 22 12:27:34 2009 -0500"
      },
      "message": "Sanitize f_flags helpers\n\n* pull ACC_MODE to fs.h; we have several copies all over the place\n* nightmarish expression calculating f_mode by f_flags deserves a helper\ntoo (OPEN_FMODE(flags))\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "628ff7c1d8d8466a5ad8078bd0206a130f8b8a51",
      "tree": "cc7ab0c90849be38e200fc6ff6a3a09e3caf0405",
      "parents": [
        "ed2617585f39dd12fae38c657bba68b9779ea10d"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Fri Dec 18 09:41:24 2009 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 22 12:27:34 2009 -0500"
      },
      "message": "anonfd: Allow making anon files read-only\n\nIt seems a couple places such as arch/ia64/kernel/perfmon.c and\ndrivers/infiniband/core/uverbs_main.c could use anon_inode_getfile()\ninstead of a private pseudo-fs + alloc_file(), if only there were a way\nto get a read-only file.  So provide this by having anon_inode_getfile()\ncreate a read-only file if we pass O_RDONLY in flags.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c",
      "tree": "f1a4ddfea72acf13864f543648bf3f79924cbdc3",
      "parents": [
        "7e25f44cbf8d95a9748fdfd19c06145f19fd10e3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "message": "tracing: Fix setting tracer specific options\n\nThe function __set_tracer_option() takes as its last parameter a\n\"neg\" value. If set it should negate the value of the option.\n\nThe trace_options_write() passed the value written to the file\nwhich is what the new value needs to be set as. But since this\nis not the negative, it never sets the value.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0e2c8b8f55072a98b99e7bdad55c912084d6a526",
      "tree": "80c1ab46950ba15ed04ff6f8a6b8a032d6fbeafa",
      "parents": [
        "f7b84a6ba7eaeba4e1df8feddca1473a7db369a5"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Dec 20 10:50:02 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 21 10:42:29 2009 -0800"
      },
      "message": "resources: fix call to alignf() in allocate_resource()\n\nThe second parameter to alignf() in allocate_resource() must\nreflect what new resource is attempted to be allocated, else\nfunctions like pcibios_align_resource() (at least on x86) or\npcmcia_align() can\u0027t work correctly.\n\nCommit 1e5ad9679016275d422e36b12a98b0927d76f556 broke this by\nsetting the \"new\" resource until we\u0027re about to return success.\nTo keep the resource untouched when allocate_resource() fails,\na \"tmp\" resource is introduced.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70f1120527797adb31c68bdc6f1b45e182c342c7",
      "tree": "d2b5f85f3c0f7c9a162828362d3e5f587df56e20",
      "parents": [
        "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 17:36:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 23:31:23 2009 +0100"
      },
      "message": "sched: Fix hotplug hang\n\nThe hot-unplug kstopmachine usage does a wakeup after\ndeactivating the cpu, hence we cannot use cpu_active()\nhere but must rely on the good olde online.\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nReported-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nLKML-Reference: \u003c1261326987.4314.24.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66",
      "tree": "078c78047dd9eca67174955a1d1b622da3fe8da8",
      "parents": [
        "dd59f6c76b265ed2ff18b497d6105a9511b1feb1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 14:23:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 19:05:02 2009 +0100"
      },
      "message": "sched: Restore printk sanity\n\nRevert the braindead pr_* crap. (Commit 663997d \"sched: Use\npr_fmt() and pr_\u003clevel\u003e()\")\n\nIt\u0027s dumb and causes stupid \"sched: \" strings all over the place.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c1261315437.4314.6.camel@laptop\u003e\n[ i dont mind the pr_*() patterns that much - but Peter dislikes them with a vengence. ]\n[ - v2: remove spurious diffstat from changelog :-/ ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eca9dfcd0029c8a84b1094bb84a2fb53e4addf6c",
      "tree": "2e5982fef1e737ce5f8936981c7dc7fb50fc655c",
      "parents": [
        "3981e152864fcc1dbbb564e1f4c0ae11a09639d2",
        "b5b60fda1e462a849bc37dfbace2888191be82cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf session: Make events_stats u64 to avoid overflow on 32-bit arches\n  hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n  perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n  perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker\n  perf events, x86/stacktrace: Make stack walking optional\n  perf events: Remove unused perf_counter.h header file\n  perf probe: Check new event name\n  kprobe-tracer: Check new event/group name\n  perf probe: Check whether debugfs path is correct\n  perf probe: Fix libdwarf include path for Debian\n"
    },
    {
      "commit": "aac3d39693529ca538e37ebdb6ed5d6432a697c7",
      "tree": "bb1b0c9fe0538008aa2c97c6f5d9dfc2a4c34190",
      "parents": [
        "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
        "077614ee1e93245a3b9a4e1213659405dbeb0ba6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  sched: Fix broken assertion\n  sched: Assert task state bits at build time\n  sched: Update task_state_arraypwith new states\n  sched: Add missing state chars to TASK_STATE_TO_CHAR_STR\n  sched: Move TASK_STATE_TO_CHAR_STR near the TASK_state bits\n  sched: Teach might_sleep() about preemptible RCU\n  sched: Make warning less noisy\n  sched: Simplify set_task_cpu()\n  sched: Remove the cfs_rq dependency from set_task_cpu()\n  sched: Add pre and post wakeup hooks\n  sched: Move kthread_bind() back to kthread.c\n  sched: Fix select_task_rq() vs hotplug issues\n  sched: Fix sched_exec() balancing\n  sched: Ensure set_task_cpu() is never called on blocked tasks\n  sched: Use TASK_WAKING for fork wakups\n  sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE\n  sched: Fix task_hot() test order\n  sched: Fix set_cpu_active() in cpu_down()\n  sched: Mark boot-cpu active before smp_init()\n  sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n  ...\n"
    },
    {
      "commit": "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
      "tree": "def247dc399549bc1359fe9d1faa49c621f8890d",
      "parents": [
        "3cd312c3e887b4bee2d94668a481b3d19c07732c",
        "d4581a239a40319205762b76c01eb6363f277efa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sys: Fix missing rcu protection for __task_cred() access\n  signals: Fix more rcu assumptions\n  signal: Fix racy access to __task_cred in kill_pid_info_as_uid()\n"
    }
  ],
  "next": "3cd312c3e887b4bee2d94668a481b3d19c07732c"
}
