)]}'
{
  "log": [
    {
      "commit": "ff4e9da2330beb8d64498a513d3f9694e941b01a",
      "tree": "c45a1d50d1f9a015af9497afe8f17b6025200efd",
      "parents": [
        "7d536cb3fb9993bdcd5a2fbaa6b0670ded4e101c"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Mon Jun 22 10:33:07 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 20 12:02:09 2009 -0400"
      },
      "message": "tracing: cleanup for tracing_trace_options_read()\n\n\u0027\\n\u0027 is already appended, and what we need is just an extra\nspace for the \u0027\\0\u0027.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A3EED63.3090908@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7d536cb3fb9993bdcd5a2fbaa6b0670ded4e101c",
      "tree": "63c4a6ec6de75d9a2db7d677c768a5f2953fa237",
      "parents": [
        "68fd60a8c8bca6af51805c45f286f0f2572ac977"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jul 16 10:54:02 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 20 11:38:44 2009 -0400"
      },
      "message": "tracing/events: record the size of dynamic arrays\n\nWhen a dynamic array is defined, we add __data_loc_foo in\ntrace_entry to record the offset of the array, but the\nsize of the array is not recorded, which causes 2 problems:\n\n- the event filter just compares the first 2 chars of the strings.\n\n- parsers can\u0027t parse dynamic arrays.\n\nSo we encode the size of each dynamic array in the higher 16 bits\nof __data_loc_foo, while the offset is in lower 16 bits.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4A5E964A.9000403@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "566b0aaf798a0dddfc455d1a5b05c424c6686c65",
      "tree": "ce8e8bfb62986ba4e5ba1b1d7d729c83aeb74387",
      "parents": [
        "45bceffc3013bda7d2ebc7802e9b153b674e2d44"
      ],
      "author": {
        "name": "jolsa@redhat.com",
        "email": "jolsa@redhat.com",
        "time": "Thu Jul 16 21:44:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 18 12:21:16 2009 +0200"
      },
      "message": "tracing: Remove unused fields/variables\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: rostedt@goodmis.org\nLKML-Reference: \u003c1247773468-11594-2-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45bceffc3013bda7d2ebc7802e9b153b674e2d44",
      "tree": "222d7dd8fd300925cbf12cdc0fba5bee2528997e",
      "parents": [
        "6f2f3cf00ee32f75ba007a46bab88a54d68a5deb",
        "78af08d90b8f745044b1274430bc4bc6b2b27aca"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 18 12:19:57 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 18 12:20:01 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: tracing/core was on an older, pre-rc1 base.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f2f3cf00ee32f75ba007a46bab88a54d68a5deb",
      "tree": "89aaab40d502c84e135b7e9e72b20bb7d498bc8c",
      "parents": [
        "79173bf556417a737e9d2e096e0788452ec30a61"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jul 16 14:21:08 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 17 01:45:51 2009 -0400"
      },
      "message": "tracing/function: Cleanup for function tracer\n\nWe can directly use %pf input format instead of kallsyms_lookup()\nand %s input format\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "79173bf556417a737e9d2e096e0788452ec30a61",
      "tree": "c27a263ce2efae15ad7b045f60cd28a0b2390862",
      "parents": [
        "64fbcd162819bddaf0d99e78b16371b655aa5dee"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jul 16 14:17:11 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 17 01:44:10 2009 -0400"
      },
      "message": "tracing/trace_stack: Cleanup for trace_lookup_stack()\n\nWe can directly use %pF input format instead of sprint_symbol()\nand %s input format.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "64fbcd162819bddaf0d99e78b16371b655aa5dee",
      "tree": "abc34dd23386f13675502455d99d868b9b63173e",
      "parents": [
        "da706d8bc833e7153622435560422e653bdb2e94"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Jul 15 12:32:15 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Jul 17 00:37:53 2009 -0400"
      },
      "message": "tracing/function: Simplify __ftrace_replace_code()\n\nRewrite the __ftrace_replace_code() function, simplify it, but don\u0027t\nchange the code\u0027s logic.\n\nFirst, we get the state we want to set, if the record has the same\nstate, then do nothing, otherwise enable/disable it.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "04aef32d39cc4ef80087c0ce8ed113c6d64f1a6b",
      "tree": "fb6e1231d7ac8fb38cf514c0c6107291234228d9",
      "parents": [
        "4b0a84043e0c14088958fddb62f416d050368011"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Jul 15 12:29:06 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 16 23:34:32 2009 -0400"
      },
      "message": "tracing/function: Fix the return value of ftrace_trace_onoff_callback()\n\nftrace_trace_onoff_callback() will return an error even if we do the\nright operation, for example:\n\n # echo _spin_*:traceon:10 \u003e set_ftrace_filter\n -bash: echo: write error: Invalid argument\n # cat set_ftrace_filter\n #### all functions enabled ####\n _spin_trylock_bh:traceon:count\u003d10\n _spin_unlock_irq:traceon:count\u003d10\n _spin_unlock_bh:traceon:count\u003d10\n _spin_lock_irq:traceon:count\u003d10\n _spin_unlock:traceon:count\u003d10\n _spin_trylock:traceon:count\u003d10\n _spin_unlock_irqrestore:traceon:count\u003d10\n _spin_lock_irqsave:traceon:count\u003d10\n _spin_lock_bh:traceon:count\u003d10\n _spin_lock:traceon:count\u003d10\n\nWe want to set _spin_*:traceon:10 to set_ftrace_filter, it complains\nwith \"Invalid argument\", but the operation is successful.\n\nThis is because ftrace_process_regex() returns the number of functions that\nmatched the pattern. If the number is not 0, this value is returned\nby ftrace_regex_write() whereas we want to return the number of bytes\nvirtually written.\nAlso the file offset pointer is not updated in this case.\n\nIf the number of matched functions is lower than the number of bytes written\nby the user, this results to a reprocessing of the string given by the user with\na lower size, leading to a malformed ftrace regex and then a -EINVAL returned.\n\nSo, this patch fixes it by returning 0 if no error occured.\nThe fix also applies on 2.6.30\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "da706d8bc833e7153622435560422e653bdb2e94",
      "tree": "0da824f6db67ce361976ef3b4d5a7212ea92619b",
      "parents": [
        "e202687927c132b1e1ff36b526b5e78ac33de840"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Wed Jul 15 16:27:30 2009 +0800"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 16 18:46:47 2009 -0400"
      },
      "message": "ring_buffer: Fix warning while ignoring cmpxchg return value\n\nkernel/trace/ring_buffer.c: In function \u0027rb_tail_page_update\u0027:\nkernel/trace/ring_buffer.c:849: warning: value computed is not used\nkernel/trace/ring_buffer.c:850: warning: value computed is not used\n\nAdd \"(void)\"s to fix this warning, because we don\u0027t need here to handle\nthe fail case of cmpxchg, it\u0027s fine if an interrupt already did the\njob.\n\nChanged from V1:\n  Add a comment(which is written by Steven) for it.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "4b0a84043e0c14088958fddb62f416d050368011",
      "tree": "cf5df6cef66a178c35e335240a756798caf2c399",
      "parents": [
        "63f7a330014ad29b662638caabd8e96fe945b9ed",
        "d07387b490b1c43bfcb9f3900faf96f2dafb2630"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 16 10:18:29 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 16 10:18:29 2009 -0700"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-sched\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-sched:\n  sched: Fix bug in SCHED_IDLE interaction with group scheduling\n  sched: Fix rt_rq-\u003epushable_tasks initialization in init_rt_rq()\n  sched: Reset sched stats on fork()\n  sched_rt: Fix overload bug on rt group scheduling\n  sched: Documentation/sched-rt-group: Fix style issues \u0026 bump version\n"
    },
    {
      "commit": "62f49052ac4b68152ddf742b78b2151ba20dbc28",
      "tree": "f5cc92c195484360176e884fd88e8d3d01ae4b18",
      "parents": [
        "5be6717e0d2493a20791d592e2d20fd2b2f62d44",
        "6ff7041dbfeb3bd7dfe9aa67275c21199ef760d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:35:24 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:35:24 2009 -0700"
      },
      "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: Fix migration expiry check\n  hrtimer: migration: do not check expiry time on current CPU\n"
    },
    {
      "commit": "989fa940961faa9d51f073bafa58c2b5653d5969",
      "tree": "1d28774b8449b0a840b2cc396fd6229e7549fde2",
      "parents": [
        "c0c50b541a4b147c5c2572ed051420238c47f57a",
        "ce2ae53b750abfaa012ce408e93da131a5b5649b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:35:00 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 14 18:35:00 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futexes: Fix infinite loop in get_futex_key() on huge page\n"
    },
    {
      "commit": "6ab5d668b131d3c5416f6df1d3ca95b82d4fe8a2",
      "tree": "dc5cd05361845a431c1388f83f913e4610a2dfca",
      "parents": [
        "d0b6e04a4cd8360e3c9c419f7c30a3081a0c142a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Thu Jun 04 00:55:45 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 13 11:01:10 2009 +0200"
      },
      "message": "tracing/function-profiler: do not free per cpu variable stat\n\nThe per cpu variable stat is freeded if we fail to allocate a name\non start up. This was due to stat at first being allocated in the\ninitial design. But since then, it has become a static per cpu variable\nbut the free on error was not removed.\n\nAlso added __init annotation to the function that this is in.\n\n[ Impact: prevent possible memory corruption on low mem at boot up ]\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7638d5322bd89d49e013a03fe2afaeb6d214fabd",
      "tree": "cfafc7c6c9f169a7a308c290363dde765e21735d",
      "parents": [
        "dd0d9a46f573b086a67522f819566427dba9c4c7",
        "264ef8a904943ed7d0b04fa958894d7a5c2b2c61"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:24:35 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:24:35 2009 -0700"
      },
      "message": "Merge branch \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6\n\n* \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6:\n  kmemleak: Remove alloc_bootmem annotations introduced in the past\n  kmemleak: Add callbacks to the bootmem allocator\n  kmemleak: Allow partial freeing of memory blocks\n  kmemleak: Trace the kmalloc_large* functions in slub\n  kmemleak: Scan objects allocated during a scanning episode\n  kmemleak: Do not acquire scan_mutex in kmemleak_open()\n  kmemleak: Remove the reported leaks number limitation\n  kmemleak: Add more cond_resched() calls in the scanning thread\n  kmemleak: Renice the scanning thread to +10\n"
    },
    {
      "commit": "405f55712dfe464b3240d7816cc4fe4174831be2",
      "tree": "96c425ea7fa8b31058b8f83a433c5e5265c8ebc7",
      "parents": [
        "f9fabcb58a6d26d6efde842d1703ac7cfa9427b6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Jul 11 22:08:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 12 12:22:34 2009 -0700"
      },
      "message": "headers: smp_lock.h redux\n\n* Remove smp_lock.h from files which don\u0027t need it (including some headers!)\n* Add smp_lock.h to files which do need it\n* Make smp_lock.h include conditional in hardirq.h\n  It\u0027s needed only for one kernel_locked() usage which is under CONFIG_PREEMPT\n\n  This will make hardirq.h inclusion cheaper for every PREEMPT\u003dn config\n  (which includes allmodconfig/allyesconfig, BTW)\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce2ae53b750abfaa012ce408e93da131a5b5649b",
      "tree": "7d380e51a49ad40fc08044ed8050243080280273",
      "parents": [
        "f00caa76297a534e30c3ec85382fbc3fd0dcbc69"
      ],
      "author": {
        "name": "Sonny Rao",
        "email": "sonnyrao@us.ibm.com",
        "time": "Fri Jul 10 18:13:13 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 11 12:40:44 2009 +0200"
      },
      "message": "futexes: Fix infinite loop in get_futex_key() on huge page\n\nget_futex_key() can infinitely loop if it is called on a\nvirtual address that is within a huge page but not aligned to\nthe beginning of that page.  The call to get_user_pages_fast\nwill return the struct page for a sub-page within the huge page\nand the check for page-\u003emapping will always fail.\n\nThe fix is to call compound_head on the page before checking\nthat it\u0027s mapped.\n\nSigned-off-by: Sonny Rao \u003csonnyrao@us.ibm.com\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\nCc: anton@samba.org\nCc: rajamony@us.ibm.com\nCc: speight@us.ibm.com\nCc: mstephen@us.ibm.com\nCc: grimm@us.ibm.com\nCc: mikey@ozlabs.au.ibm.com\nLKML-Reference: \u003c20090710231313.GA23572@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d07387b490b1c43bfcb9f3900faf96f2dafb2630",
      "tree": "97893ceda1e7262df981e87374f2553a6a8dba34",
      "parents": [
        "c20b08e3986c2dbfa6df1e880bf4f7159994d199"
      ],
      "author": {
        "name": "Paul Turner",
        "email": "pjt@google.com",
        "time": "Fri Jul 10 17:05:16 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 11 10:00:09 2009 +0200"
      },
      "message": "sched: Fix bug in SCHED_IDLE interaction with group scheduling\n\nOne of the isolation modifications for SCHED_IDLE is the\nunitization of sleeper credit.  However the check for this\nassumes that the sched_entity we\u0027re placing always belongs to a\ntask.\n\nThis is potentially not true with group scheduling and leaves\nus rummaging randomly when we try to pull the policy.\n\nSigned-off-by: Paul Turner \u003cpjt@google.com\u003e\nCc: peterz@infradead.org\nLKML-Reference: \u003calpine.DEB.1.00.0907101649570.29914@kitami.corp.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ac3f482236793c75caae2c2ebb3f3e5f8b7393e1",
      "tree": "f769225f9a77ae1e026b18d3d9260f5e5aefe99d",
      "parents": [
        "85be928c4101670f99cdd7c927798aa4dcbb3168",
        "f39d1b9792881ce4eb982ec8cc65258bf95674b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 10 14:25:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 10 14:25:59 2009 -0700"
      },
      "message": "Merge branch \u0027core-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  dma-debug: Fix the overlap() function to be correct and readable\n  oprofile: reset bt_lost_no_mapping with other stats\n  x86/oprofile: rename kernel parameter for architectural perfmon to arch_perfmon\n  signals: declare sys_rt_tgsigqueueinfo in syscalls.h\n  rcu: Mark Hierarchical RCU no longer experimental\n  dma-debug: Put all hash-chain locks into the same lock class\n  dma-debug: fix off-by-one error in overlap function\n"
    },
    {
      "commit": "d86ee4809d0329d4aa0d0f2c76c2295a16862799",
      "tree": "32b3eaf766c1127ef2298c2e48b5441b7cf9b843",
      "parents": [
        "c99e6efe1ba04561e7d93a81f0be07e37427e835"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jul 10 14:57:57 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 10 14:24:05 2009 -0700"
      },
      "message": "sched: optimize cond_resched()\n\nOptimize cond_resched() by removing one conditional.\n\nCurrently cond_resched() checks system_state \u003d\u003d\nSYSTEM_RUNNING in order to avoid scheduling before the\nscheduler is running.\n\nWe can however, as per suggestion of Matt, use\nPREEMPT_ACTIVE to accomplish that very same.\n\nSuggested-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a6f86bc5ed4af2ff04bc927eb77789c70e53a1e",
      "tree": "f14b3a1547a0f26789658f2939c904e180369482",
      "parents": [
        "b690a3770e99497982d48a93e30cb7de549aead8",
        "e1af3aec3e2e7d21d4b3054323779d478c19d907"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 10 11:41:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 10 11:41:41 2009 -0700"
      },
      "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 trace_print_seq()\n  kprobes: No need to unlock kprobe_insn_mutex\n  tracing/fastboot: Document the need of initcall_debug\n  trace_export: Repair missed fields\n  tracing: Fix stack tracer sysctl handling\n"
    },
    {
      "commit": "6ff7041dbfeb3bd7dfe9aa67275c21199ef760d6",
      "tree": "c8897de7ba6c09d51d83557d981ced3da48bba61",
      "parents": [
        "7e0c5086c172ecf8b0c2ad860b02a586967d17d0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jul 10 14:57:05 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jul 10 17:32:55 2009 +0200"
      },
      "message": "hrtimer: Fix migration expiry check\n\nThe timer migration expiry check should prevent the migration of a\ntimer to another CPU when the timer expires before the next event is\nscheduled on the other CPU. Migrating the timer might delay it because\nwe can not reprogram the clock event device on the other CPU. But the\ncode implementing that check has two flaws:\n\n- for !HIGHRES the check compares the expiry value with the clock\n  events device expiry value which is wrong for CLOCK_REALTIME based\n  timers.\n\n- the check is racy. It holds the hrtimer base lock of the target CPU,\n  but the clock event device expiry value can be modified\n  nevertheless, e.g. by an timer interrupt firing.\n\nThe !HIGHRES case is easy to fix as we can enqueue the timer on the\ncpu which was selected by the load balancer. It runs the idle\nbalancing code once per jiffy anyway. So the maximum delay for the\ntimer is the same as when we keep the tick on the current cpu going.\n\nIn the HIGHRES case we can get the next expiry value from the hrtimer\ncpu_base of the target CPU and serialize the update with the cpu_base\nlock. This moves the lock section in hrtimer_interrupt() so we can set\nnext_event to KTIME_MAX while we are handling the expired timers and\nset it to the next expiry value after we handled the timers under the\nbase lock. While the expired timers are processed timer migration is\nblocked because the expiry time of the timer is always \u003c\u003d KTIME_MAX.\n\nAlso remove the now useless clockevents_get_next_event() function.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "7e0c5086c172ecf8b0c2ad860b02a586967d17d0",
      "tree": "207e1975ea970279e5ad912a094361e2fa169d93",
      "parents": [
        "507e123151149e578c9aae33eb876c49824da5f8"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jul 09 13:52:32 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jul 10 17:22:20 2009 +0200"
      },
      "message": "hrtimer: migration: do not check expiry time on current CPU\n\nThe timer migration code needs to check whether the expiry time of the\ntimer is before the programmed clock event expiry time when the timer\nis enqueued on another CPU because we can not reprogram the timer\ndevice on the other CPU. The current logic checks the expiry time even\nif we enqueue on the current CPU when nohz_get_load_balancer() returns\ncurrent CPU. This might lead to an endless loop in the expiry check\ncode when the expiry time of the timer is before the current\nprogrammed next event.\n\nCheck whether nohz_get_load_balancer() returns current CPU and skip\nthe expiry check if this is the case.\n\nThe bug was triggered from the networking code. The patch fixes the\nregression http://bugzilla.kernel.org/show_bug.cgi?id\u003d13738\n(Soft-Lockup/Race in networking in 2.6.31-rc1+195)\n\nCc: Arun Bharadwaj \u003carun@linux.vnet.ibm.com\nTested-by: Joao Correia \u003cjoaomiguelcorreia@gmail.com\u003e\nTested-by: Andres Freund \u003candres@anarazel.de\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e202687927c132b1e1ff36b526b5e78ac33de840",
      "tree": "8c1cadd560913e41237af48fc0058a9ed640dda7",
      "parents": [
        "a35780005eb256eb5ec83ffcc802967295887a45",
        "8b2c70d1e43074cc06afe99b0de12b686d9c9d02"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 13:30:06 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 13:30:06 2009 +0200"
      },
      "message": "Merge branch \u0027tip/tracing/ring-buffer-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into tracing/core\n"
    },
    {
      "commit": "a35780005eb256eb5ec83ffcc802967295887a45",
      "tree": "187244378069f3dd02b23e706d10a3054837f3ba",
      "parents": [
        "d8ea37d5de58d35a39d0b4e7d209751aaa1b8174"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Jul 06 16:10:23 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 12:14:07 2009 +0200"
      },
      "message": "tracing/workqueues: Add refcnt to struct cpu_workqueue_stats\n\nThe stat entries can be freed when the stat file is being read.\nThe worse is, the ptr can be freed immediately after it\u0027s returned\nfrom workqueue_stat_start/next().\n\nAdd a refcnt to struct cpu_workqueue_stats to avoid use-after-free.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A51B16F.6010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d8ea37d5de58d35a39d0b4e7d209751aaa1b8174",
      "tree": "a64ffb2c844ad0f0e99616a69e6f548370d31665",
      "parents": [
        "80098c200e2ee3b4c86a9d1e156dbcd05380e08f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Jul 06 16:10:18 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 12:14:05 2009 +0200"
      },
      "message": "tracing/stat: Add stat_release() callback\n\nAdd stat_release() callback to struct tracer_stat, so a stat tracer\ncan release it\u0027s entries after the stat file has been read out.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A51B16A.6020708@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "80098c200e2ee3b4c86a9d1e156dbcd05380e08f",
      "tree": "25a216567c02e94a9f4203ddc452fb24bb200176",
      "parents": [
        "6a167c655858cbec4175532fd00417661c87f149"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jul 06 16:15:04 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 12:09:04 2009 +0200"
      },
      "message": "kmemtrace: Rename some functions\n\nSo we have:\n\n - kmemtrace_print_alloc/free() for kmemtrace default output\n\n - kmemtrace_print_alloc/free_user() for binary output used\n   by kmemtrace-user.\n\nSuggested-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A51B288.70505@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6a167c655858cbec4175532fd00417661c87f149",
      "tree": "f177c7a7ea5a6c949bf7f4cc37cebb5665e38ed1",
      "parents": [
        "68baafcfc46074c4bb4e4c3115c2c76a8a85f37d"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 09 04:46:30 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 12:07:20 2009 +0200"
      },
      "message": "tracing/kmemtrace: Use the %pf format\n\nRemove the obsolete seq_print_ip_sym() usage and replace it\nby the %pf format in order to print function symbols.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nLKML-Reference: \u003c1247107590-6428-3-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "68baafcfc46074c4bb4e4c3115c2c76a8a85f37d",
      "tree": "b3790c3fcd871d981c09932fb8ce6af2d36c070c",
      "parents": [
        "dc82ec98a4727fd51b77e92d05fe7d2db3dcc11c"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Jul 09 04:46:29 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 12:07:19 2009 +0200"
      },
      "message": "tracing/function-graph-tracer: Use the %pf format\n\nRemove the obsolete seq_print_ip_sym() usage and replace it\nby the %pf format in order to print function symbols.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c1247107590-6428-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dc82ec98a4727fd51b77e92d05fe7d2db3dcc11c",
      "tree": "c66955e01458db480185c963304a60b6fd77c72c",
      "parents": [
        "c5cb183608167c744cb28bbd85884be5a4ce875d"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jul 09 16:22:22 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 11:55:28 2009 +0200"
      },
      "message": "tracing/filter: Remove empty subsystem and its directory\n\nRemove empty subsystem and its directory when module unload.\n\nBefore patch:\n # rmmod trace-events-sample.ko\n # ls sample\n enable  filter\n\nAfter patch:\n # rmmod trace-events-sample.ko\n # ls sample\n ls: cannot access sample: No such file or directory\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A55A8BE.9010707@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5cb183608167c744cb28bbd85884be5a4ce875d",
      "tree": "cce5d915673768ba0f2190920dcd7ee644a5c477",
      "parents": [
        "ddc1637af217dbd8bc51f30e6d24e84476a869a6"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Thu Jul 09 16:20:12 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 11:55:27 2009 +0200"
      },
      "message": "tracing/filter: Remove preds from struct event_subsystem\n\nNo need to save preds to event_subsystem, because it\u0027s not used.\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A55A83C.1030005@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c20b08e3986c2dbfa6df1e880bf4f7159994d199",
      "tree": "ea539701a3cf78b8e2f1d2aab2a2ec442d00f690",
      "parents": [
        "7793527b90d9418211f4fe8464cc1dcb1631ea1b"
      ],
      "author": {
        "name": "Fabio Checconi",
        "email": "fchecconi@gmail.com",
        "time": "Mon Jun 15 20:56:38 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 10:43:30 2009 +0200"
      },
      "message": "sched: Fix rt_rq-\u003epushable_tasks initialization in init_rt_rq()\n\ninit_rt_rq() initializes only rq-\u003ert.pushable_tasks, and not the\npushable_tasks field of the passed rt_rq.  The plist is not used\nuninitialized since the only pushable_tasks plists used are the\nones of root rt_rqs; anyway reinitializing the list on every group\ncreation corrupts the root plist, losing its previous contents.\n\nSigned-off-by: Fabio Checconi \u003cfabio@gandalf.sssup.it\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20090615185638.GK21741@gandalf.sssup.it\u003e\nCC: Gregory Haskins \u003cghaskins@novell.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7793527b90d9418211f4fe8464cc1dcb1631ea1b",
      "tree": "a09cdbe3942d9ba22877976737a220f9aaac2a04",
      "parents": [
        "a1ba4d8ba9f06a397e97cbd67a93ee306860b40a"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.de.marchi@gmail.com",
        "time": "Thu Jul 09 13:57:20 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 10:43:29 2009 +0200"
      },
      "message": "sched: Reset sched stats on fork()\n\nThe sched_stat fields are currently not reset upon fork.\nIngo\u0027s recent commit 6c594c21fcb02c662f11c97be4d7d2b73060a205\ndid reset nr_migrations, but it didn\u0027t reset any of the\nothers.\n\nThis patch resets all sched_stat fields on fork.\n\nSigned-off-by: Lucas De Marchi \u003clucas.de.marchi@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c193b0f820907090457s7a3662f4gcdecdc22fcae857b@mail.gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a1ba4d8ba9f06a397e97cbd67a93ee306860b40a",
      "tree": "f0e0f92a2c0763f8ec162c2b0e2abc389075b207",
      "parents": [
        "d4ec36bac3de39b7e10ec8f42fbdd20d9a9ed753"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Apr 01 18:40:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 10 10:43:29 2009 +0200"
      },
      "message": "sched_rt: Fix overload bug on rt group scheduling\n\nFixes an easily triggerable BUG() when setting process affinities.\n\nMake sure to count the number of migratable tasks in the same place:\nthe root rt_rq. Otherwise the number doesn\u0027t make sense and we\u0027ll hit\nthe BUG in set_cpus_allowed_rt().\n\nAlso, make sure we only count tasks, not groups (this is probably\nalready taken care of by the fact that rt_se-\u003enr_cpus_allowed will be 0\nfor groups, but be more explicit)\n\nTested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: stable@kernel.org\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nLKML-Reference: \u003c1247067476.9777.57.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "264ef8a904943ed7d0b04fa958894d7a5c2b2c61",
      "tree": "ddab997d86b591cf67de3afc2f23e7d9f2fb1207",
      "parents": [
        "ec3a354bd46cbdaa7933ba57a142ee2d2dbde0e5"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Tue Jul 07 10:33:01 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Thu Jul 09 17:07:02 2009 +0100"
      },
      "message": "kmemleak: Remove alloc_bootmem annotations introduced in the past\n\nkmemleak_alloc() calls were added in some places where alloc_bootmem was\ncalled. Since now kmemleak tracks bootmem allocations, these explicit\ncalls should be run.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "ad361c9884e809340f6daca80d56a9e9c871690a",
      "tree": "7ec02c9934964fecdc791a0df0fc722d3bda5c53",
      "parents": [
        "e3288775ff63900fbb7db505f2b9a1bee98f07df"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 06 13:05:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 10:30:03 2009 -0700"
      },
      "message": "Remove multiple KERN_ prefixes from printk formats\n\nCommit 5fd29d6ccbc98884569d6f3105aeca70858b3e0f (\"printk: clean up\nhandling of log-levels and newlines\") changed printk semantics.  printk\nlines with multiple KERN_\u003clevel\u003e prefixes are no longer emitted as\nbefore the patch.\n\n\u003clevel\u003e is now included in the output on each additional use.\n\nRemove all uses of multiple KERN_\u003clevel\u003es in formats.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b43f3cbd21ffbd719fd4fa6642bfe6af255ded34",
      "tree": "f09372f7aa3057a4cca32d5c7fc19032bd7cda5a",
      "parents": [
        "622f8061a68d3f7a576c20a47b7f3bae7c8cfbef"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Jul 08 01:54:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:31:56 2009 -0700"
      },
      "message": "headers: mnt_namespace.h redux\n\nFix various silly problems wrt mnt_namespace.h:\n\n - exit_mnt_ns() isn\u0027t used, remove it\n - done that, sched.h and nsproxy.h inclusions aren\u0027t needed\n - mount.h inclusion was need for vfsmount_lock, but no longer\n - remove mnt_namespace.h inclusion from files which don\u0027t use anything\n   from mnt_namespace.h\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "77ae365eca895061c8bf2b2e3ae1d9ea62869739",
      "tree": "fc808698a4f2869b45ef4e8c958cbab183a7ad37",
      "parents": [
        "3adc54fa82a68be1cd1ac82ad786ee362796e50a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Mar 27 11:00:29 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 07 18:36:12 2009 -0400"
      },
      "message": "ring-buffer: make lockless\n\nThis patch converts the ring buffers into a completely lockless\nbuffer recording system. The read side still takes locks since\nwe still serialize readers. But the writers are the ones that\nmust be lockless (those can happen in NMIs).\n\nThe main change is to the \"head_page\" pointer. We write to the\ntail, and read from the head. The \"head_page\" pointer in the cpu\nbuffer is now just a reference to where to look. The real head\npage is now kept in the head_page-\u003elist-\u003eprev-\u003enext pointer.\nThat is, in the list head of the previous page we set flags.\n\nThe list pages are allocated to be aligned such that the lowest\nsignificant bits are always zero pointing to the list. This gives\nus play to put in flags to their pointers.\n\nbit 0: set when the page is a head page\nbit 1: set when the writer is moving the page (for overwrite mode)\n\ncmpxchg is used to update the pointer.\n\nWhen the writer wraps the buffer and the tail meets the head,\nin overwrite mode, the writer must move the head page forward.\nIt first uses cmpxchg to change the pointer flag from 1 to 2.\nOnce this is done, the reader on another CPU will not take the\npage from the buffer.\n\nThe writers need to protect against interrupts (we don\u0027t bother with\ndisabling interrupts because NMIs are allowed to write too).\n\nAfter the writer sets the pointer flag to 2, it takes care to\nmanage interrupts coming in. This is discribed in detail within the\ncomments of the code.\n\n Changes in version 2:\n  - Let reader reset entries value of header page.\n  - Fix tail page passing commit page on reader page test.\n  - Always increment entries and write counter in rb_tail_page_update\n  - Add safety check in rb_set_commit_to_write to break out of infinite loop\n  - add mask in rb_is_reader_page\n\n[ Impact: lock free writing to the ring buffer ]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "3adc54fa82a68be1cd1ac82ad786ee362796e50a",
      "tree": "0538fac360f776354ec6b171e6adb0049cfa9f3b",
      "parents": [
        "ddc1637af217dbd8bc51f30e6d24e84476a869a6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Mar 30 15:32:01 2009 -0400"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Jul 07 18:36:10 2009 -0400"
      },
      "message": "ring-buffer: make the buffer a true circular link list\n\nThis patch changes the ring buffer data pages from using a link list\nhead pointer, to making each buffer page point to another buffer page\nand never back to a \"head\".\n\nThis makes the handling of the ring buffer less complex, since the\ntraversing of the ring buffer pages no longer needs to account for the\nhead pointer.\n\nThis change also is needed to make the ring buffer lockless.\n\n[\n  Changes in version 2:\n\n  - Added change that Lai Jiangshan mentioned.\n\n  From: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\n  Date: Thu, 11 Jun 2009 11:25:48 +0800\n  LKML-Reference: \u003c4A30793C.6090208@cn.fujitsu.com\u003e\n\n  I\u0027m not sure whether these 4 lines:\n\tbpage \u003d list_entry(pages.next, struct buffer_page, list);\n\tlist_del_init(\u0026bpage-\u003elist);\n\tcpu_buffer-\u003epages \u003d \u0026bpage-\u003elist;\n\n\tlist_splice(\u0026pages, cpu_buffer-\u003epages);\n  equal to these 2 lines:\n \tcpu_buffer-\u003epages \u003d pages.next;\n \tlist_del(\u0026pages);\n\n  If there are equivalent, I think the second one\n  are simpler. It may be not a really necessarily cleanup.\n\n  What I asked is: if there are equivalent, could you use these two line:\n \tcpu_buffer-\u003epages \u003d pages.next;\n\tlist_del(\u0026pages);\n]\n\n[ Impact: simplify the ring buffer to help make it lockless ]\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "793285fcafce4719a05e0c99fa74b188157fe7fe",
      "tree": "3395530c1d4e604beac506c703b3093bb13f23ee",
      "parents": [
        "82e3310ace59794ecf0f531eca94647b2863dfda"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Sun Jul 05 12:08:26 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 06 13:57:04 2009 -0700"
      },
      "message": "cred_guard_mutex: do not return -EINTR to user-space\n\ndo_execve() and ptrace_attach() return -EINTR if\nmutex_lock_interruptible(-\u003ecred_guard_mutex) fails.\n\nThis is not right, change the code to return ERESTARTNOINTR.\n\nPerhaps we should also change proc_pid_attr_write().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5bfd7560979062ad75c9805c1719cec990b5db29",
      "tree": "cdefaa4920ad4f87f4cd66f96cb4112b2be2bde3",
      "parents": [
        "c8236db9cd7aa492dcfcdcca702638e704abed49"
      ],
      "author": {
        "name": "Kevin Cernekee",
        "email": "cernekee@gmail.com",
        "time": "Sun Jul 05 12:08:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 06 13:57:03 2009 -0700"
      },
      "message": "Fix virt_to_phys() warnings\n\nThese warnings were observed on MIPS32 using 2.6.31-rc1 and gcc-4.2.0:\n\nmm/page_alloc.c: In function \u0027alloc_pages_exact\u0027:\nmm/page_alloc.c:1986: warning: passing argument 1 of \u0027virt_to_phys\u0027 makes pointer from integer without a cast\n\ndrivers/usb/mon/mon_bin.c: In function \u0027mon_alloc_buff\u0027:\ndrivers/usb/mon/mon_bin.c:1264: warning: passing argument 1 of \u0027virt_to_phys\u0027 makes pointer from integer without a cast\n\n[akpm@linux-foundation.org: fix kernel/perf_counter.c too]\nSigned-off-by: Kevin Cernekee \u003ccernekee@gmail.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\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": "ddc1637af217dbd8bc51f30e6d24e84476a869a6",
      "tree": "2ff7a1330093ad524ab367f85f6cc6753ea293c3",
      "parents": [
        "020e5f85cb087a40572c8b8b2dd06292a14fa212"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jul 03 17:34:24 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 03 11:39:46 2009 +0200"
      },
      "message": "kmemtrace: Print binary output only if \u0027bin\u0027 option is set\n\nCurrently by default the output of kmemtrace is binary format instead\nof human-readable output.\n\nThis patch makes the following changes:\n\n  - We\u0027ll see human-readable output by default\n  - We\u0027ll see binary output if \u0027bin\u0027 option is set\n\nNote: you may probably need to explicitly disable context-info binary\n      output:\n\n\t# echo 0 \u003e options/context-info\n\t# echo 1 \u003e options/bin\n\t# cat trace_pipe\n\nv2:\n- use %pF to print call_site\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A4DD0A0.5060500@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e1af3aec3e2e7d21d4b3054323779d478c19d907",
      "tree": "338ef5a081fb66a6463ab4c1e882d7870ca154ac",
      "parents": [
        "4a2bb6fcc80e6330ca2f2393e98605052cc7780b"
      ],
      "author": {
        "name": "Xiao Guangrong",
        "email": "xiaoguangrong@cn.fujitsu.com",
        "time": "Wed Jul 01 16:50:25 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 02 08:51:13 2009 +0200"
      },
      "message": "tracing: Fix trace_print_seq()\n\nWe will lose something if trace_seq-\u003ebuffer[0] is 0, because the copy length\nis calculated by strlen() in seq_puts(), so using seq_write() instead of\nseq_puts().\n\nThere have a example:\nafter reboot:\n\n # echo kmemtrace \u003e current_tracer\n # echo 0 \u003e options/kmem_minimalistic\n # cat trace\n # tracer: kmemtrace\n #\n #\n\nNothing is exported, because the first byte of trace_seq-\u003ebuffer[ ]\nis KMEMTRACE_USER_ALLOC.\n\n( the value of KMEMTRACE_USER_ALLOC is zero, seeing\n  kmemtrace_print_alloc_user() in kernel/trace/kmemtrace.c)\n\nSigned-off-by: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A4B2351.5010300@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "020e5f85cb087a40572c8b8b2dd06292a14fa212",
      "tree": "d1bd09885693dd9d5e9db995cb0f7f58aa0e1bb8",
      "parents": [
        "c5cb5a2d8d7dc872cf1504091ad0e59fe5ff7cb5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jul 01 10:47:05 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 15:44:24 2009 +0200"
      },
      "message": "tracing/events: Add trace_event boot option\n\nWe already have ftrace\u003d boot option, and this adds a similar\nboot option for trace events, so allow trace events to be\nenabled at boot, for boot debugging purpose.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A4ACE29.3010407@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5cb5a2d8d7dc872cf1504091ad0e59fe5ff7cb5",
      "tree": "5608e7a85768d2fa2a21ec8e8f3e933ab1ede60d",
      "parents": [
        "4a2bb6fcc80e6330ca2f2393e98605052cc7780b"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Jun 30 17:08:14 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 10:43:41 2009 +0200"
      },
      "message": "kprobes: Clean up insn_pages by using list instead of hlist\n\nUse struct list instead of struct hlist for managing\ninsn_pages, because insn_pages doesn\u0027t use hash table.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nLKML-Reference: \u003c20090630210814.17851.64651.stgit@localhost.localdomain\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4a2bb6fcc80e6330ca2f2393e98605052cc7780b",
      "tree": "3e1d2314d7002f13bb61ff78266cce3922673c93",
      "parents": [
        "238a24f626628cb16a3015f332d649f08246ca89"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Jun 30 17:08:09 2009 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 01 10:43:07 2009 +0200"
      },
      "message": "kprobes: No need to unlock kprobe_insn_mutex\n\nRemove needless kprobe_insn_mutex unlocking during safety check\nin garbage collection, because if someone releases a dirty slot\nduring safety check (which ensures other cpus doesn\u0027t execute\nall dirty slots), the safety check must be fail. So, we need to\nhold the mutex while checking safety.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nLKML-Reference: \u003c20090630210809.17851.28781.stgit@localhost.localdomain\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e83c2b0ff325f52dda1aff3572d0e1516216c54b",
      "tree": "0d9dd56df33a308d03c8ac2d666826017777f0cf",
      "parents": [
        "9fcfc91bda04259abb9af2fd83bbf48d19da8502",
        "12de38b186c2af97bf0b4a1f907f766df46b1def"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 19:04:53 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 19:04:53 2009 -0700"
      },
      "message": "Merge branch \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6\n\n* \u0027kmemleak\u0027 of git://linux-arm.org/linux-2.6:\n  kmemleak: Inform kmemleak about pid_hash\n  kmemleak: Do not warn if an unknown object is freed\n  kmemleak: Do not report new leaked objects if the scanning was stopped\n  kmemleak: Slightly change the policy on newly allocated objects\n  kmemleak: Do not trigger a scan when reading the debug/kmemleak file\n  kmemleak: Simplify the reports logged by the scanning thread\n  kmemleak: Enable task stacks scanning by default\n  kmemleak: Allow the early log buffer to be configurable.\n"
    },
    {
      "commit": "55bcab46955644d5a8149a9b3cc9752a336e02f8",
      "tree": "a45593603de9265cb0624043ab36f4e0f98823fc",
      "parents": [
        "58580c86450bc09ff101f0d23fd8a162c146bc64",
        "7bec7a9134c25cecb0d7029199b59f7b1bef35b8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 19:02:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 19:02:59 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (47 commits)\n  perf report: Add --symbols parameter\n  perf report: Add --comms parameter\n  perf report: Add --dsos parameter\n  perf_counter tools: Adjust only prelinked symbol\u0027s addresses\n  perf_counter: Provide a way to enable counters on exec\n  perf_counter tools: Reduce perf stat measurement overhead/skew\n  perf stat: Use percentages for scaling output\n  perf_counter, x86: Update x86_pmu after WARN()\n  perf stat: Micro-optimize the code: memcpy is only required if no event is selected and !null_run\n  perf stat: Improve output\n  perf stat: Fix multi-run stats\n  perf stat: Add -n/--null option to run without counters\n  perf_counter tools: Remove dead code\n  perf_counter: Complete counter swap\n  perf report: Print sorted callchains per histogram entries\n  perf_counter tools: Prepare a small callchain framework\n  perf record: Fix unhandled io return value\n  perf_counter tools: Add alias for \u0027l1d\u0027 and \u0027l1i\u0027\n  perf-report: Add bare minimum PERF_EVENT_READ parsing\n  perf-report: Add modes for inherited stats and no-samples\n  ...\n"
    },
    {
      "commit": "df279ca8966c3de83105428e3391ab17690802a9",
      "tree": "9c10bbad25bbb8f3b40bd25ec3aadf8f0c0a4324",
      "parents": [
        "b4f90189dc2c7a7e6926ea480ae3404ec3de4581"
      ],
      "author": {
        "name": "Renaud Lottiaux",
        "email": "renaud.lottiaux@kerlabs.com",
        "time": "Tue Jun 30 11:41:34 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 18:56:00 2009 -0700"
      },
      "message": "bsdacct: fix access to invalid filp in acct_on()\n\nThe file opened in acct_on and freshly stored in the ns-\u003ebacct struct can\nbe closed in acct_file_reopen by a concurrent call after we release\nacct_lock and before we call mntput(file-\u003ef_path.mnt).\n\nRecord file-\u003ef_path.mnt in a local variable and use this variable only.\n\nSigned-off-by: Renaud Lottiaux \u003crenaud.lottiaux@kerlabs.com\u003e\nSigned-off-by: Louis Rilling \u003clouis.rilling@kerlabs.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8bc1ad7dd301b7ca7454013519fa92e8c53655ff",
      "tree": "602ec95fa99b0256370f3d887953cb30e159cc25",
      "parents": [
        "529ba0d9669386157457a1cb96294d2fe79b3f88"
      ],
      "author": {
        "name": "Zhang Rui",
        "email": "rui.zhang@intel.com",
        "time": "Tue Jun 30 11:41:31 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 18:56:00 2009 -0700"
      },
      "message": "kernel/resource.c: fix sign extension in reserve_setup()\n\nWhen the 32-bit signed quantities get assigned to the u64 resource_size_t,\nthey are incorrectly sign-extended.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d13253\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d9905\n\nSigned-off-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nReported-by: Leann Ogasawara \u003cleann@ubuntu.com\u003e\nCc: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\nReported-by: \u003cpablomme@googlemail.com\u003e\nTested-by: \u003cpablomme@googlemail.com\u003e\nCc: \u003cstable@kernel.org\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57e7986ed142417498155ebcd5eaf617ac37136d",
      "tree": "81ce9acd79ee7e6383dfd5cdadc4e016a012990e",
      "parents": [
        "051ae7f7344f453616b6b10332d4d8e1d40ed823"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Tue Jun 30 16:07:19 2009 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 30 12:00:16 2009 +0200"
      },
      "message": "perf_counter: Provide a way to enable counters on exec\n\nThis provides a way to mark a counter to be enabled on the next\nexec. This is useful for measuring the total activity of a\nprogram without including overhead from the process that\nlaunches it.\n\nThis also changes the perf stat command to use this new\nfacility.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c19017.43927.838745.689203@cargo.ozlabs.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "12de38b186c2af97bf0b4a1f907f766df46b1def",
      "tree": "de85488aa885f29933eec7e733b2e232401fd105",
      "parents": [
        "b6e687221eb840bacd4d4a991e5f8e7ed3ae910a"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Jun 29 17:13:55 2009 +0100"
      },
      "committer": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Jun 29 17:14:14 2009 +0100"
      },
      "message": "kmemleak: Inform kmemleak about pid_hash\n\nKmemleak does not track alloc_bootmem calls but the pid_hash allocated\nin pidhash_init() would need to be scanned as it contains pointers to\nstruct pid objects.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\n"
    },
    {
      "commit": "238a24f626628cb16a3015f332d649f08246ca89",
      "tree": "f4454dd15f7b86c0ca0869230f6e389901147b70",
      "parents": [
        "82d5308127c3e3404ffbf41e503853c68660b18b"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Mon Jun 29 15:55:10 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 29 10:22:10 2009 +0200"
      },
      "message": "tracing/fastboot: Document the need of initcall_debug\n\nTo use boot tracer, one should pass initcall_debug as well as\nftrace\u003dinitcall to the command line.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A48735E.9050002@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8326e284f8deb75eee3d32b973464dd96e120843",
      "tree": "a2c4e18f4e7984680946cab0303e5369f175d4f5",
      "parents": [
        "187dd317f0169142e4adf6263852f93c3b6f6a3c",
        "e888d7facd1f1460a638151036d15b6cfb3ccc74"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:28 2009 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, delay: tsc based udelay should have rdtsc_barrier\n  x86, setup: correct include file in \u003casm/boot.h\u003e\n  x86, setup: Fix typo \"CONFIG_x86_64\" in \u003casm/boot.h\u003e\n  x86, mce: percpu mcheck_timer should be pinned\n  x86: Add sysctl to allow panic on IOCK NMI error\n  x86: Fix uv bau sending buffer initialization\n  x86, mce: Fix mce resume on 32bit\n  x86: Move init_gbpages() to setup_arch()\n  x86: ensure percpu lpage doesn\u0027t consume too much vmalloc space\n  x86: implement percpu_alloc kernel parameter\n  x86: fix pageattr handling for lpage percpu allocator and re-enable it\n  x86: reorganize cpa_process_alias()\n  x86: prepare setup_pcpu_lpage() for pageattr fix\n  x86: rename remap percpu first chunk allocator to lpage\n  x86: fix duplicate free in setup_pcpu_remap() failure path\n  percpu: fix too lazy vunmap cache flushing\n  x86: Set cpu_llc_id on AMD CPUs\n"
    },
    {
      "commit": "187dd317f0169142e4adf6263852f93c3b6f6a3c",
      "tree": "c539ad11655d4545c5ef4b54cbecd9cff9cff974",
      "parents": [
        "9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5",
        "507e123151149e578c9aae33eb876c49824da5f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:16 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:16 2009 -0700"
      },
      "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  timer stats: Optimize by adding quick check to avoid function calls\n  timers: Fix timer_migration interface which accepts any number as input\n"
    },
    {
      "commit": "9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5",
      "tree": "39ee39ee45333b9eadb0c1183d9e88f86be59983",
      "parents": [
        "61abfd2df8aa43a137ae58446dd0638a2385586e",
        "0296e4254f3318e0dcad9706fa1daf8e5addc1e9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:04 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 28 11:05:04 2009 -0700"
      },
      "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  ftrace: Fix the output of profile\n  ring-buffer: Make it generally available\n  ftrace: Remove duplicate newline\n  tracing: Fix trace_buf_size boot option\n  ftrace: Fix t_hash_start()\n  ftrace: Don\u0027t manipulate @pos in t_start()\n  ftrace: Don\u0027t increment @pos in g_start()\n  tracing: Reset iterator in t_start()\n  trace_stat: Don\u0027t increment @pos in seq start()\n  tracing_bprintk: Don\u0027t increment @pos in t_start()\n  tracing/events: Don\u0027t increment @pos in s_start()\n"
    },
    {
      "commit": "82d5308127c3e3404ffbf41e503853c68660b18b",
      "tree": "6c24d7e23a1fc6e4b26bcdeb718ea62a8a93cf45",
      "parents": [
        "a32c7765e2796395aec49f699bd25c407155e9c5"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Jun 26 17:07:02 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 26 20:48:40 2009 +0200"
      },
      "message": "trace_export: Repair missed fields\n\nSome fields for struct ftrace_graph_ret are missed\nwhen they are exported to user.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c4A448FB6.5000302@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a32c7765e2796395aec49f699bd25c407155e9c5",
      "tree": "6d46f223a177ada92c6f47c36ba2e51cd6041037",
      "parents": [
        "0296e4254f3318e0dcad9706fa1daf8e5addc1e9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jun 26 16:55:51 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 26 20:48:39 2009 +0200"
      },
      "message": "tracing: Fix stack tracer sysctl handling\n\nThis made my machine completely frozen:\n\n  # echo 1 \u003e /proc/sys/kernel/stack_tracer_enabled\n  # echo 2 \u003e /proc/sys/kernel/stack_tracer_enabled\n\nThe cause is register_ftrace_function() was called twice.\n\nAlso fix ftrace_enabled sysctl, though seems nothing bad happened\nas I tested it.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A448D17.9010305@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "19d2e755436054dfc2be640bffc32e427c37ac3d",
      "tree": "f53c2e93820d1ca6d04e8b42c7bca08af01c9b44",
      "parents": [
        "f55c555226b1010b249730ec6b232e5470286950"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 26 13:10:23 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 26 17:48:54 2009 +0200"
      },
      "message": "perf_counter: Complete counter swap\n\nComplete the counter swap by indeed switching the times too and\nupdating the userpage after modifying the counter values.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1246014623.31755.195.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0296e4254f3318e0dcad9706fa1daf8e5addc1e9",
      "tree": "7568f2372564b45fa79bbcdd36273999cae0de8c",
      "parents": [
        "1155de47cd66d0c496d5a6fb2223e980ef1285b2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Fri Jun 26 11:15:37 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 26 09:25:42 2009 +0200"
      },
      "message": "ftrace: Fix the output of profile\n\nThe first entry of the ftrace profile was always skipped when\nreading trace_stat/functionX.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A443D59.4080307@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5211a242d0cbdded372aee59da18f80552b0a80a",
      "tree": "5d2a853e538b8478648a57efe94ef049e76e13e6",
      "parents": [
        "9c26f52b900f7207135bafc8789e1a4f5d43e096"
      ],
      "author": {
        "name": "Kurt Garloff",
        "email": "garloff@suse.de",
        "time": "Wed Jun 24 14:32:11 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 22:06:11 2009 +0200"
      },
      "message": "x86: Add sysctl to allow panic on IOCK NMI error\n\nThis patch introduces a new sysctl:\n\n    /proc/sys/kernel/panic_on_io_nmi\n\nwhich defaults to 0 (off).\n\nWhen enabled, the kernel panics when the kernel receives an NMI\ncaused by an IO error.\n\nThe IO error triggered NMI indicates a serious system\ncondition, which could result in IO data corruption. Rather\nthan contiuing, panicing and dumping might be a better choice,\nso one can figure out what\u0027s causing the IO error.\n\nThis could be especially important to companies running IO\nintensive applications where corruption must be avoided, e.g. a\nbank\u0027s databases.\n\n[ SuSE has been shipping it for a while, it was done at the\n  request of a large database vendor, for their users. ]\n\nSigned-off-by: Kurt Garloff \u003cgarloff@suse.de\u003e\nSigned-off-by: Roberto Angelino \u003crobertangelino@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nLKML-Reference: \u003c20090624213211.GA11291@kroah.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6e18ec79b023d5fe84226cef533cf0e3770ce93",
      "tree": "6fc1bd9afd21454864abe2aec6a0e35e17d47f04",
      "parents": [
        "bfbd3381e63aa2a14c6706afb50ce4630aa0d9a2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Jun 25 11:27:12 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:08 2009 +0200"
      },
      "message": "perf_counter: Rework the sample ABI\n\nThe PERF_EVENT_READ implementation made me realize we don\u0027t\nactually need the sample_type int the output sample, since\nwe already have that in the perf_counter_attr information.\n\nTherefore, remove the PERF_EVENT_MISC_OVERFLOW bit and the\nevent-\u003etype overloading, and imply put counter overflow\nsamples in a PERF_EVENT_SAMPLE type.\n\nThis also fixes the issue that event-\u003etype was only 32-bit\nand sample_type had 64 usable bits.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bfbd3381e63aa2a14c6706afb50ce4630aa0d9a2",
      "tree": "9b165a3068b8a7976ea34e633013165855bb5f51",
      "parents": [
        "38b200d67636a30cb8dc1508137908e7a649b5c9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jun 24 21:11:59 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:07 2009 +0200"
      },
      "message": "perf_counter: Implement more accurate per task statistics\n\nWith the introduction of PERF_EVENT_READ we have the\npossibility to provide accurate counter values for\nindividual tasks in a task hierarchy.\n\nHowever, due to the lazy context switching used for similar\ncounter contexts our current per task counts are way off.\n\nIn order to maintain some of the lazy switch benefits we\ndon\u0027t disable it out-right, but simply iterate the active\ncounters and flip the values between the contexts.\n\nThis only reads the counters but does not need to reprogram\nthe full PMU.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "38b200d67636a30cb8dc1508137908e7a649b5c9",
      "tree": "74f88d57a7f55075d4cd0b46690ff4b319dca642",
      "parents": [
        "194002b274e9169a04beb1b23dcc132159bb566c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jun 23 20:13:11 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:07 2009 +0200"
      },
      "message": "perf_counter: Add PERF_EVENT_READ\n\nProvide a read() like event which can be used to log the\ncounter value at specific sites such as child-\u003eparent\nfolding on exit.\n\nIn order to be useful, we log the counter parent ID, not the\nactual counter ID, since userspace can only relate parent\nIDs to perf_counter_attr constructs.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "194002b274e9169a04beb1b23dcc132159bb566c",
      "tree": "6977e48df4a1429dae999d4afe23e5e28febc99e",
      "parents": [
        "7f8b4e4e0988dadfd22330fd147ad2453e19f510"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jun 22 16:35:24 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:06 2009 +0200"
      },
      "message": "perf_counter, x86: Add mmap counter read support\n\nUpdate the mmap control page with the needed information to\nuse the userspace RDPMC instruction for self monitoring.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7f8b4e4e0988dadfd22330fd147ad2453e19f510",
      "tree": "b57c6b0fbfd3718dbc6f27bd7f422bb276c11469",
      "parents": [
        "41f95331b972a039f519ae0c70f051b7121f7346"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jun 22 14:34:35 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 21:39:05 2009 +0200"
      },
      "message": "perf_counter: Add scale information to the mmap control page\n\nAdd the needed time scale to the self-profile mmap information.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aa715284b4d28cabde6c25c568d769a6be712bc8",
      "tree": "c308ab1cdf8d0d7b6b1a01a1a233183670d62f9f",
      "parents": [
        "28d0325ce6e0a52f53d8af687e6427fee59004d3"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 25 14:27:58 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 25 14:33:46 2009 +0200"
      },
      "message": "futex: request only one page from get_user_pages()\n\nYanmin noticed that fault_in_user_writeable() requests 4 pages instead\nof one.\n\nThat\u0027s the result of blindly trusting Linus\u0027 proposal :) I even looked\nup the prototype to verify the correctness: the argument in question\nis confusingly enough named \"len\" while in reality it means number of\npages.\n\nPointed-out-by: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "1155de47cd66d0c496d5a6fb2223e980ef1285b2",
      "tree": "0ee762d6b1215a37fe89acc174de8cbbf476d218",
      "parents": [
        "00e54d087afb3867b0b461aef6c1ff433d0df564"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Thu Jun 25 14:30:12 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 10:31:30 2009 +0200"
      },
      "message": "ring-buffer: Make it generally available\n\nIn hunting down the cause for the hwlat_detector ring buffer spew in\nmy failed -next builds it became obvious that folks are now treating\nring_buffer as something that is generic independent of tracing and thus,\nsuitable for public driver consumption.\n\nGiven that there are only a few minor areas in ring_buffer that have any\nreliance on CONFIG_TRACING or CONFIG_FUNCTION_TRACER, provide stubs for\nthose and make it generally available.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Jon Masters \u003cjcm@jonmasters.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20090625053012.GB19944@linux-sh.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "00e54d087afb3867b0b461aef6c1ff433d0df564",
      "tree": "e6158e5a11ec0979ef1fc0f58a591b91509cb7b7",
      "parents": [
        "9d612beff5089b89a295a2331883a8ce3fff08c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jun 25 14:05:27 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 25 10:28:36 2009 +0200"
      },
      "message": "ftrace: Remove duplicate newline\n\nBefore:\n  # echo \u0027sys_open:traceon:\u0027 \u003e set_ftrace_filter\n  # echo \u0027sys_close:traceoff:5\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter\n  #### all functions enabled ####\n  sys_open:traceon:unlimited\n\n  sys_close:traceoff:count\u003d0\n\nAfter:\n  # cat set_ftrace_filter\n  #### all functions enabled ####\n  sys_open:traceon:unlimited\n  sys_close:traceoff:count\u003d0\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A4313A7.7030105@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c6223048259006759237d826219f0fa4f312fb47",
      "tree": "ee7d50b2d1b5e1d3347a3ec535a8ed563e41a74f",
      "parents": [
        "bd453cd487ac7116a269517779b83c1061debbec",
        "d5bb68adda7cc179e8efadeaa3a283cb470f13a6",
        "3a6a6c16be78472a52f6dd7d88913373b42ad0f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:17:14 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 24 14:17:14 2009 -0700"
      },
      "message": "Merge branches \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/{vfs-2.6,audit-current}\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  another race fix in jfs_check_acl()\n  Get \"no acls for this inode\" right, fix shmem breakage\n  inline functions left without protection of ifdef (acl)\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:\n  audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL\n"
    },
    {
      "commit": "3a6a6c16be78472a52f6dd7d88913373b42ad0f7",
      "tree": "98bb91e983e54f0c026ba3b2c6d66368d06e244a",
      "parents": [
        "c82e6d450fda56cb2d4f68534173d3cd11b32f9f"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Jun 24 16:09:01 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 16:42:05 2009 -0400"
      },
      "message": "audit: inode watches depend on CONFIG_AUDIT not CONFIG_AUDIT_SYSCALL\n\nEven though one cannot make use of the audit watch code without\nCONFIG_AUDIT_SYSCALL the spaghetti nature of the audit code means that\nthe audit rule filtering requires that it at least be compiled.\n\nThus build the audit_watch code when we build auditfilter like it was\nbefore cfcad62c74abfef83762dc05a556d21bdf3980a2\n\nClearly this is a point of potential future cleanup..\n\nReported-by: Frans Pop \u003celendil@planet.nl\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d0725992c8a6fb63a16bc9e8b2a50094cc4db3cd",
      "tree": "55b52c5bcc051c3b8c2fc3122000925541d5707b",
      "parents": [
        "c82e6d450fda56cb2d4f68534173d3cd11b32f9f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 11 23:15:43 2009 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jun 24 21:27:35 2009 +0200"
      },
      "message": "futex: Fix the write access fault problem for real\n\ncommit 64d1304a64 (futex: setup writeable mapping for futex ops which\nmodify user space data) did address only half of the problem of write\naccess faults.\n\nThe patch was made on two wrong assumptions:\n\n1) access_ok(VERIFY_WRITE,...) would actually check write access.\n\n   On x86 it does _NOT_. It\u0027s a pure address range check.\n\n2) a RW mapped region can not go away under us.\n\n   That\u0027s wrong as well. Nobody can prevent another thread to call\n   mprotect(PROT_READ) on that region where the futex resides. If that\n   call hits between the get_user_pages_fast() verification and the\n   actual write access in the atomic region we are toast again.\n\nThe solution is to not rely on access_ok and get_user() for any write\naccess related fault on private and shared futexes. Instead we need to\nfault it in with verification of write access.\n\nThere is no generic non destructive write mechanism which would fault\nthe user page in trough a #PF, but as we already know that we will\nfault we can as well call get_user_pages() directly and avoid the #PF\noverhead.\n\nIf get_user_pages() returns -EFAULT we know that we can not fix it\nanymore and need to bail out to user space.\n\nRemove a bunch of confusing comments on this issue as well.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "f6faac71d502be1c29c81b2f45657662c3b84470",
      "tree": "b320a04b6f3955c60edaa30f47b889a0daf9f4b6",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Tue Jun 23 17:24:40 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 15:02:48 2009 +0200"
      },
      "message": "rcu: Mark Hierarchical RCU no longer experimental\n\nRemoves the warnings about Hierarchical RCU being experimental,\ngiven that it has gone through almost six months of being the\ndefault RCU in mainline for the x86 with very little trouble.\n\nThis makes hierarchical-RCU bootup look less scary.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: akpm@linux-foundation.org\nCc: niv@us.ibm.com\nCc: dvhltc@us.ibm.com\nCc: dipankar@in.ibm.com\nCc: dhowells@redhat.com\nCc: lethal@linux-sh.org\nCc: kernel@wantstofly.org\nCc: cl@linux-foundation.org\nCc: schamp@sgi.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9d612beff5089b89a295a2331883a8ce3fff08c1",
      "tree": "6f742b3997c5aa6096d4a844c08019fe4d669f55",
      "parents": [
        "d82d62444f87e5993af2fa82ed636b2206e052ea"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 17:33:15 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:41:12 2009 +0200"
      },
      "message": "tracing: Fix trace_buf_size boot option\n\nWe should be able to specify [KMG] when setting trace_buf_size\nboot option, as documented in kernel-parameters.txt\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A41F2DB.4020102@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "507e123151149e578c9aae33eb876c49824da5f8",
      "tree": "10b4c36a278553ed3814c0643442e7210a7a1a15",
      "parents": [
        "bfdb4d9f0f611687d71cf6a460efc9e755f4a462"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Jun 23 17:38:15 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:15:09 2009 +0200"
      },
      "message": "timer stats: Optimize by adding quick check to avoid function calls\n\nWhen the kernel is configured with CONFIG_TIMER_STATS but timer\nstats are runtime disabled we still get calls to\n__timer_stats_timer_set_start_info which initializes some\nfields in the corresponding struct timer_list.\n\nSo add some quick checks in the the timer stats setup functions\nto avoid function calls to __timer_stats_timer_set_start_info\nwhen timer stats are disabled.\n\nIn an artificial workload that does nothing but playing ping\npong with a single tcp packet via loopback this decreases cpu\nconsumption by 1 - 1.5%.\n\nThis is part of a modified function trace output on SLES11:\n\n perl-2497  [00] 28630647177732388 [+  125]: sk_reset_timer \u003c-tcp_v4_rcv\n perl-2497  [00] 28630647177732513 [+  125]: mod_timer \u003c-sk_reset_timer\n perl-2497  [00] 28630647177732638 [+  125]: __timer_stats_timer_set_start_info \u003c-mod_timer\n perl-2497  [00] 28630647177732763 [+  125]: __mod_timer \u003c-mod_timer\n perl-2497  [00] 28630647177732888 [+  125]: __timer_stats_timer_set_start_info \u003c-__mod_timer\n perl-2497  [00] 28630647177733013 [+   93]: lock_timer_base \u003c-__mod_timer\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Mustafa Mesanovic \u003cmustafa.mesanovic@de.ibm.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nLKML-Reference: \u003c20090623153811.GA4641@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d82d62444f87e5993af2fa82ed636b2206e052ea",
      "tree": "701f28de7def6c58d80db72a462171cab013b514",
      "parents": [
        "694ce0a544fba37a60025a6803ee6265be8a2a22"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:54:54 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:53 2009 +0200"
      },
      "message": "ftrace: Fix t_hash_start()\n\nWhen the output of set_ftrace_filter is larger than PAGE_SIZE,\nt_hash_start() will be called the 2nd time, and then we start\nfrom the head of a hlist, which is wrong and causes some entries\nto be outputed twice.\n\nThe worse is, if the hlist is large enough, reading set_ftrace_filter\nwon\u0027t stop but in a dead loop.\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A41876E.2060407@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "694ce0a544fba37a60025a6803ee6265be8a2a22",
      "tree": "a6debd92de0dcf7b42dc129402ca793c540091ae",
      "parents": [
        "85951842a1020669f0a9eb0f0d1853b41341f097"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:54:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:53 2009 +0200"
      },
      "message": "ftrace: Don\u0027t manipulate @pos in t_start()\n\nIt\u0027s rather confusing that in t_start(), in some cases @pos is\nincremented, and in some cases it\u0027s decremented and then incremented.\n\nThis patch rewrites t_start() in a much more general way.\n\nThus we fix a bug that if ftrace_filtered \u003d\u003d 1, functions have tracer\nhooks won\u0027t be printed, because the branch is always unreachable:\n\nstatic void *t_start(...)\n{\n\t...\n\tif (!p)\n\t\treturn t_hash_start(m, pos);\n\treturn p;\n}\n\nBefore:\n  # echo \u0027sys_open\u0027 \u003e /mnt/tracing/set_ftrace_filter\n  # echo \u0027sys_write:traceon:4\u0027 \u003e\u003e /mnt/tracing/set_ftrace_filter\n  sys_open\n\nAfter:\n  # echo \u0027sys_open\u0027 \u003e /mnt/tracing/set_ftrace_filter\n  # echo \u0027sys_write:traceon:4\u0027 \u003e\u003e /mnt/tracing/set_ftrace_filter\n  sys_open\n  sys_write:traceon:count\u003d4\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A41874B.4090507@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "85951842a1020669f0a9eb0f0d1853b41341f097",
      "tree": "799bba3e78b7424761901dacf3290ce05b9cb9ed",
      "parents": [
        "f129e965bef40c6153e4fe505f1e408286213424"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:54:00 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:52 2009 +0200"
      },
      "message": "ftrace: Don\u0027t increment @pos in g_start()\n\nIt\u0027s wrong to increment @pos in g_start(). It causes some entries\nlost when reading set_graph_function, if the output of the file\nis larger than PAGE_SIZE.\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A418738.7090401@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f129e965bef40c6153e4fe505f1e408286213424",
      "tree": "bd198daa61a79a52e1a6e06ff338c815b1516405",
      "parents": [
        "2961bf345fd1b736c3db46cad0f69855f67fbe9c"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:53:44 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:51 2009 +0200"
      },
      "message": "tracing: Reset iterator in t_start()\n\nThe iterator is m-\u003eprivate, but it\u0027s not reset to trace_types in\nt_start(). If the output is larger than PAGE_SIZE and t_start()\nis called the 2nd time, things will go wrong.\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A418728.5020506@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2961bf345fd1b736c3db46cad0f69855f67fbe9c",
      "tree": "2032d3b59b4a93445209b5b1f0428159b61837d2",
      "parents": [
        "c8961ec6da22ea010bf4470a8e0fb3fdad0f11c4"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:53:26 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:51 2009 +0200"
      },
      "message": "trace_stat: Don\u0027t increment @pos in seq start()\n\nIt\u0027s wrong to increment @pos in stat_seq_start(). It causes some\nstat entries lost when reading stat file, if the output of the file\nis larger than PAGE_SIZE.\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A418716.90209@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c8961ec6da22ea010bf4470a8e0fb3fdad0f11c4",
      "tree": "799b41a5eae2268010ca2d5b883a6c4fe33a9297",
      "parents": [
        "e1c7e2a6e67fe9db19dd15e71614526a31b5fdb1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:52:58 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:50 2009 +0200"
      },
      "message": "tracing_bprintk: Don\u0027t increment @pos in t_start()\n\nIt\u0027s wrong to increment @pos in t_start(), otherwise we\u0027ll lose\nsome entries when reading printk_formats, if the output is larger\nthan PAGE_SIZE.\n\nReported-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A4186FA.1020106@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e1c7e2a6e67fe9db19dd15e71614526a31b5fdb1",
      "tree": "0b6eb8cf5e699592fc868a44b24e603ad8f3d6af",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Jun 24 09:52:29 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 24 11:02:49 2009 +0200"
      },
      "message": "tracing/events: Don\u0027t increment @pos in s_start()\n\nWhile testing syscall tracepoints posted by Jason, I found 3 entries\nwere missing when reading available_events. The output size of\navailable_events is \u003c 4 pages, which means we lost 1 entry per page.\n\nThe cause is, it\u0027s wrong to increment @pos in s_start().\n\nActually there\u0027s another bug here -- reading avaiable_events/set_events\ncan race with module unload:\n\n  # cat available_events               |\n      s_start()                        |\n      s_stop()                         |\n                                       | # rmmod foo.ko\n      s_start()                        |\n        call \u003d list_entry(m-\u003eprivate)  |\n\n@call might be freed and accessing it will lead to crash.\n\nReviewed-by: Liming Wang \u003climing.wang@windriver.com\u003e\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4A4186DD.6090405@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "916d75761c971b6e630a26bd4ba472e90ac9a4b9",
      "tree": "3a4b18d0d29c1d12f64fefbb2bc5559813a686f7",
      "parents": [
        "9d9609851003ebed15957f0f2ce18492739ee124"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 00:02:38 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 00:02:38 2009 -0400"
      },
      "message": "Fix rule eviction order for AUDIT_DIR\n\nIf syscall removes the root of subtree being watched, we\ndefinitely do not want the rules refering that subtree\nto be destroyed without the syscall in question having\na chance to match them.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9d9609851003ebed15957f0f2ce18492739ee124",
      "tree": "2c116865d2f239b5596b22a3a79eecc82f5e1299",
      "parents": [
        "35fe4d0b1b12286a81938e9c5fdfaf639ac0ce5b"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:37 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Jun 24 00:00:52 2009 -0400"
      },
      "message": "Audit: clean up all op\u003d output to include string quoting\n\nA number of places in the audit system we send an op\u003d followed by a string\nthat includes spaces.  Somehow this works but it\u0027s just wrong.  This patch\nmoves all of those that I could find to be quoted.\n\nExample:\n\nChange From: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003dremove rule\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nChange To: type\u003dCONFIG_CHANGE msg\u003daudit(1244666690.117:31): auid\u003d0 ses\u003d1\nsubj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 op\u003d\"remove rule\"\nkey\u003d\"number2\" list\u003d4 res\u003d0\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "35fe4d0b1b12286a81938e9c5fdfaf639ac0ce5b",
      "tree": "c520706593fd33748944315bb87d789a7f31960e",
      "parents": [
        "cfcad62c74abfef83762dc05a556d21bdf3980a2"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:36 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:51:05 2009 -0400"
      },
      "message": "Audit: move audit_get_nd completely into audit_watch\n\naudit_get_nd() is only used  by audit_watch and could be more cleanly\nimplemented by having the audit watch functions call it when needed rather\nthan making the generic audit rule parsing code deal with those objects.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "cfcad62c74abfef83762dc05a556d21bdf3980a2",
      "tree": "d253dbf8dfa4d31379dcd886cc1b41c69921acdd",
      "parents": [
        "ea7ae60bfe39aeedfb29571c47280bf0067ee5f3"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:36 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:59 2009 -0400"
      },
      "message": "audit: seperate audit inode watches into a subfile\n\nIn preparation for converting audit to use fsnotify instead of inotify we\nseperate the inode watching code into it\u0027s own file.  This is similar to\nhow the audit tree watching code is already seperated into audit_tree.c\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "ea7ae60bfe39aeedfb29571c47280bf0067ee5f3",
      "tree": "dae18e879a4e6d5c2ae53cf89267a6045db49da7",
      "parents": [
        "ee080e6ce93d5993390bccf68c1df5efd9351276"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:35 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:40 2009 -0400"
      },
      "message": "Audit: clean up audit_receive_skb\n\naudit_receive_skb is hard to clearly parse what it is doing to the netlink\nmessage.  Clean the function up so it is easy and clear to see what is going\non.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "ee080e6ce93d5993390bccf68c1df5efd9351276",
      "tree": "6554d820c773f3ace97fdb1ae5defa43cbc83e05",
      "parents": [
        "038cbcf65fd6a30c79e3917690b8c46321a27915"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:35 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:39 2009 -0400"
      },
      "message": "Audit: cleanup netlink mesg handling\n\nThe audit handling of netlink messages is all over the place.  Clean things\nup, use predetermined macros, generally make it more readable.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "038cbcf65fd6a30c79e3917690b8c46321a27915",
      "tree": "bc6fc5fbf9ac6dad6055aa77bb0b1eaf35fdaa37",
      "parents": [
        "e85188f424c8eec7f311deed9a70bec57aeed741"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:35 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:37 2009 -0400"
      },
      "message": "Audit: unify the printk of an skb when auditd not around\n\nRemove code duplication of skb printk when auditd is not around in userspace\nto deal with this message.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "e85188f424c8eec7f311deed9a70bec57aeed741",
      "tree": "3456260b54bc8fd8d336d5e8865104480d5ac0fe",
      "parents": [
        "b87ce6e4187c24b06483c8266822ce5e6b7fa7f3"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:34 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:36 2009 -0400"
      },
      "message": "Audit: dereferencing krule as if it were an audit_watch\n\naudit_update_watch() runs all of the rules for a given watch and duplicates\nthem, attaches a new watch to them, and then when it finishes that process\nand has called free on all of the old rules (ok maybe still inside the rcu\ngrace period) it proceeds to use the last element from list_for_each_entry_safe()\nas if it were a krule rather than being the audit_watch which was anchoring\nthe list to output a message about audit rules changing.\n\nThis patch unfies the audit message from two different places into a helper\nfunction and calls it from the correct location in audit_update_rules().  We\nwill now get an audit message about the config changing for each rule (with\neach rules filterkey) rather than the previous garbage.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "b87ce6e4187c24b06483c8266822ce5e6b7fa7f3",
      "tree": "24b56d53dc03b0a6c8434ad2250c1c40d179d0ce",
      "parents": [
        "35aa901c0b66cb3c2eeee23f13624014825a44a8"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:34 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:34 2009 -0400"
      },
      "message": "Audit: better estimation of execve record length\n\nThe audit execve record splitting code estimates the length of the message\ngenerated.  But it forgot to include the \"\" that wrap each string in its\nestimation.  This means that execve messages with lots of tiny (1-2 byte)\narguments could still cause records greater than 8k to be emitted.  Simply\nfix the estimate.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "35aa901c0b66cb3c2eeee23f13624014825a44a8",
      "tree": "5ec19e8b65c1f3e6417c197288c42c60c852ef48",
      "parents": [
        "4e8a2372f9255a1464ef488ed925455f53fbdaa1"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Jun 11 14:31:33 2009 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jun 23 23:50:33 2009 -0400"
      },
      "message": "Audit: fix audit watch use after free\n\nWhen an audit watch is added to a parent the temporary watch inside the\noriginal krule from userspace is freed.  Yet the original watch is used after\nthe real watch was created in audit_add_rules()\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "f344011ccb85469445369153c3d27c4ee4bc2ac8",
      "tree": "66f041a826d09c690a5e6bb3d091494d52bc8565",
      "parents": [
        "b84fbc9fb1d943e2c5f4efe52ed0e3c93a4bdb6a"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jun 22 13:58:35 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 23 11:42:46 2009 +0200"
      },
      "message": "perf_counter: Optimize perf_counter_alloc()\u0027s inherit case\n\nWe don\u0027t need to add usage counts for swcounter and attr usage\nmodels for inherited counters since the parent counter will\nalways have one, which suffices to generate the needed output.\n\nThis avoids up to 3 global atomic increments per inherited\ncounter.\n\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b84fbc9fb1d943e2c5f4efe52ed0e3c93a4bdb6a",
      "tree": "aaa492fd620de2177c6b8e5bb52348b30c7e49c7",
      "parents": [
        "f29ac756a40d0f1bb07d682ea521e7b666ff06d5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jun 22 13:57:40 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 23 11:42:45 2009 +0200"
      },
      "message": "perf_counter: Push inherit into perf_counter_alloc()\n\nTeach perf_counter_alloc() about inheritance so that we can\noptimize the inherit path in the next patch.\n\nRemove the child_counter-\u003eatrr.inherit \u003d 1 line because the\nonly way to get there is if parent_counter-\u003eattr.inherit \u003d\u003d 1\nand we copy the attrs.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f29ac756a40d0f1bb07d682ea521e7b666ff06d5",
      "tree": "6fabe2f38ae10f824e57fdd5b035ba81b75a71a8",
      "parents": [
        "3d906ef10a539ff336010afab8f6f9c4fe379695"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 19 18:27:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 23 11:42:44 2009 +0200"
      },
      "message": "perf_counter: Optimize perf_swcounter_event()\n\nSimilar to tracepoints, use an enable variable to reduce\noverhead when unused.\n\nOnly look for a counter of a particular event type when we know\nthere is at least one in the system.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bfdb4d9f0f611687d71cf6a460efc9e755f4a462",
      "tree": "d5a2ef0ccaa4da93ccb4275d8da80221788b2e48",
      "parents": [
        "d888a4c76c51092993643f8992bf55b3c28da483"
      ],
      "author": {
        "name": "Arun R Bharadwaj",
        "email": "arun@linux.vnet.ibm.com",
        "time": "Tue Jun 23 10:00:58 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 23 10:49:33 2009 +0200"
      },
      "message": "timers: Fix timer_migration interface which accepts any number as input\n\nPoornima Nayek reported:\n\n| Timer migration interface /proc/sys/kernel/timer_migration in\n| 2.6.30-git9 accepts any numerical value as input.\n|\n| Steps to reproduce:\n| 1. echo -6666666 \u003e /proc/sys/kernel/timer_migration\n| 2. cat /proc/sys/kernel/timer_migration\n| -6666666\n|\n| 1. echo 44444444444444444444444444444444444444444444444444444444444 \u003e /proc/sys/kernel/timer_migration\n| 2. cat /proc/sys/kernel/timer_migration\n| -1357789412\n|\n| Expected behavior: Should \u0027echo: write error: Invalid argument\u0027 while\n| setting any value other then 0 \u0026 1\n\nRestrict valid values to 0 and 1.\n\nReported-by: Poornima Nayak \u003cmpnayak@linux.vnet.ibm.com\u003e\nTested-by: Poornima Nayak \u003cmpnayak@linux.vnet.ibm.com\u003e\nSigned-off-by: Arun R Bharadwaj \u003carun@linux.vnet.ibm.com\u003e\nCc: poornima nayak \u003cmpnayak@linux.vnet.ibm.com\u003e\nCc: Arun Bharadwaj \u003carun@linux.vnet.ibm.com\u003e\nLKML-Reference: \u003c20090623043058.GA3249@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "31950eb66ff47c946fd9c65c2f8c94b6b7ba13fc",
      "tree": "1ab1e09bbe7a0b33bbf19dd725172827bac5bb88",
      "parents": [
        "ac1b7c378ef26fba6694d5f118fe7fc16fee2fe2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 21:18:12 2009 -0700"
      },
      "message": "mm/init: cpu_hotplug_init() must be initialized before SLAB\n\nSLAB uses get/put_online_cpus() which use a mutex which is itself only\ninitialized when cpu_hotplug_init() is called.  Currently we hang suring\nboot in SLAB due to doing that too late.\n\nReported by James Bottomley and Sachin Sant (and possibly others).\nDebugged by Benjamin Herrenschmidt.\n\nThis just removes the dynamic initialization of the data structures, and\nreplaces it with a static one, avoiding this dependency entirely, and\nremoving one unnecessary special initcall.\n\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nTested-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nTested-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2453d6ff6ffc5f0d496b7b14f509a26f99bf115e",
      "tree": "9e4e709bdb932889b0b9cfc5b2b767cfcf750b83",
      "parents": [
        "12e24f34cb0d55efd08c18b2112507d4bf498008",
        "ab33dcff40d7a9a28587e4425621e4cbc4089e03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:30:01 2009 -0700"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq, irq.h: Fix kernel-doc warnings\n  genirq: fix comment to say IRQ_WAKE_THREAD\n"
    },
    {
      "commit": "12e24f34cb0d55efd08c18b2112507d4bf498008",
      "tree": "83b07be17b8ef45f42360a3b9159b3aaae3fbad4",
      "parents": [
        "1eb51c33b21ffa3fceb634d1d6bcd6488c79bc26",
        "eadc84cc01e04f9f74ec2de0c9355be035c7b396"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 11:29:32 2009 -0700"
      },
      "message": "Merge branch \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perfcounters-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (49 commits)\n  perfcounter: Handle some IO return values\n  perf_counter: Push perf_sample_data through the swcounter code\n  perf_counter tools: Define and use our own u64, s64 etc. definitions\n  perf_counter: Close race in perf_lock_task_context()\n  perf_counter, x86: Improve interactions with fast-gup\n  perf_counter: Simplify and fix task migration counting\n  perf_counter tools: Add a data file header\n  perf_counter: Update userspace callchain sampling uses\n  perf_counter: Make callchain samples extensible\n  perf report: Filter to parent set by default\n  perf_counter tools: Handle lost events\n  perf_counter: Add event overlow handling\n  fs: Provide empty .set_page_dirty() aop for anon inodes\n  perf_counter: tools: Makefile tweaks for 64-bit powerpc\n  perf_counter: powerpc: Add processor back-end for MPC7450 family\n  perf_counter: powerpc: Make powerpc perf_counter code safe for 32-bit kernels\n  perf_counter: powerpc: Change how processor-specific back-ends get selected\n  perf_counter: powerpc: Use unsigned long for register and constraint values\n  perf_counter: powerpc: Enable use of software counters on 32-bit powerpc\n  perf_counter tools: Add and use isprint()\n  ...\n"
    },
    {
      "commit": "1eb51c33b21ffa3fceb634d1d6bcd6488c79bc26",
      "tree": "5360e0b439b35a97313ea8250209e7dacff8b9a6",
      "parents": [
        "b0b7065b64fe517b4a50915a1555e8ee98890d64",
        "3104bf03a923c72043a9c5009d9cd56724304916"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:57:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:57:40 2009 -0700"
      },
      "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: Fix out of scope variable access in sched_slice()\n  sched: Hide runqueues from direct refer at source code level\n  sched: Remove unneeded __ref tag\n  sched, x86: Fix cpufreq + sched_clock() TSC scaling\n"
    },
    {
      "commit": "b0b7065b64fe517b4a50915a1555e8ee98890d64",
      "tree": "950e7735585a83f5b4efe7a9473b5b42d5ca4f57",
      "parents": [
        "38df92b8cee936334f686c06df0e5fbb92e252df",
        "d4c4038343510d83727ea922de4435996c26c0c8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 20 10:56:46 2009 -0700"
      },
      "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: (24 commits)\n  tracing/urgent: warn in case of ftrace_start_up inbalance\n  tracing/urgent: fix unbalanced ftrace_start_up\n  function-graph: add stack frame test\n  function-graph: disable when both x86_32 and optimize for size are configured\n  ring-buffer: have benchmark test print to trace buffer\n  ring-buffer: do not grab locks in nmi\n  ring-buffer: add locks around rb_per_cpu_empty\n  ring-buffer: check for less than two in size allocation\n  ring-buffer: remove useless compile check for buffer_page size\n  ring-buffer: remove useless warn on check\n  ring-buffer: use BUF_PAGE_HDR_SIZE in calculating index\n  tracing: update sample event documentation\n  tracing/filters: fix race between filter setting and module unload\n  tracing/filters: free filter_string in destroy_preds()\n  ring-buffer: use commit counters for commit pointer accounting\n  ring-buffer: remove unused variable\n  ring-buffer: have benchmark test handle discarded events\n  ring-buffer: prevent adding write in discarded area\n  tracing/filters: strloc should be unsigned short\n  tracing/filters: operand can be negative\n  ...\n\nFix up kmemcheck-induced conflict in kernel/trace/ring_buffer.c manually\n"
    }
  ],
  "next": "38df92b8cee936334f686c06df0e5fbb92e252df"
}
