)]}'
{
  "log": [
    {
      "commit": "d78ca3cd733d8a2c3dcd88471beb1a15d973eed8",
      "tree": "a27ccf86f5f7df3cc987d0203ed0bff2db46db57",
      "parents": [
        "002345925e6c45861f60db6f4fc6236713fd8847"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "kees.cook@canonical.com",
        "time": "Wed Feb 03 15:37:13 2010 -0800"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 14:20:41 2010 +1100"
      },
      "message": "syslog: use defined constants instead of raw numbers\n\nRight now the syslog \"type\" action are just raw numbers which makes\nthe source difficult to follow.  This patch replaces the raw numbers\nwith defined constants for some level of sanity.\n\nSigned-off-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nAcked-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "002345925e6c45861f60db6f4fc6236713fd8847",
      "tree": "d7849eafe1755116597166bbebf43e2bee86cb76",
      "parents": [
        "0719aaf5ead7555b7b7a4a080ebf2826a871384e"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "kees.cook@canonical.com",
        "time": "Wed Feb 03 15:36:43 2010 -0800"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Feb 04 14:20:12 2010 +1100"
      },
      "message": "syslog: distinguish between /proc/kmsg and syscalls\n\nThis allows the LSM to distinguish between syslog functions originating\nfrom /proc/kmsg access and direct syscalls.  By default, the commoncaps\nwill now no longer require CAP_SYS_ADMIN to read an opened /proc/kmsg\nfile descriptor.  For example the kernel syslog reader can now drop\nprivileges after opening /proc/kmsg, instead of staying privileged with\nCAP_SYS_ADMIN.  MAC systems that implement security_syslog have unchanged\nbehavior.\n\nSigned-off-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nAcked-by: John Johansen \u003cjohn.johansen@canonical.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "2457552d1e6f3183cd93f81c49a8da5fe8bb0e42",
      "tree": "7ca46caa910012d75617700e4083b3657053cb31",
      "parents": [
        "19439d05b88dafc4e55d9ffce84ccc27cf8b2bcc",
        "6ccf80eb15ccaca4d3f1ab5162b9ded5eecd9971"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 18 09:56:22 2010 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Mon Jan 18 09:56:22 2010 +1100"
      },
      "message": "Merge branch \u0027master\u0027 into next\n"
    },
    {
      "commit": "2a8249daf6e2d643bf47a68a7fef2584a0597cb5",
      "tree": "182e640660eac46dc656e4eaa508adb7175ca199",
      "parents": [
        "c6a93d330b53fa587f550aedcdeb93ff23ea7f87",
        "7485d0d3758e8e6491a5c9468114e74dc050785d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:31:30 2010 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futexes: Remove rw parameter from get_futex_key()\n"
    },
    {
      "commit": "6ccc347b699681a0b21c2f7b1a1f85500a58c6b8",
      "tree": "abe33c75ae53d445abde0e5986b96ef696501d38",
      "parents": [
        "eb29a5cc0b601c458bae9df2f6c3696d75c2d383",
        "d1303dd1d6b220cab375f24fa91a5640e54e169e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:27:25 2010 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing/filters: Add comment for match callbacks\n  tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n  tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n  lib: Introduce strnstr()\n  tracing/filters: Fix MATCH_END_ONLY filter matching\n  tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n  ftrace: Fix MATCH_END_ONLY function filter\n  tracing/x86: Derive arch from bits argument in recordmcount.pl\n  ring-buffer: Add rb_list_head() wrapper around new reader page next field\n  ring-buffer: Wrap a list.next reference with rb_list_head()\n"
    },
    {
      "commit": "af2422c42c0ff42b8b93dbb3a5fe65250fb65c40",
      "tree": "cb3eb1488225b1c295044c40b841cde60e499fd4",
      "parents": [
        "cc8ef6eb21e964b1c5eb97b2d0e8ac9893e1bf86"
      ],
      "author": {
        "name": "David John",
        "email": "davidjon@xenontk.org",
        "time": "Fri Jan 15 17:01:23 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:39 2010 -0800"
      },
      "message": "smp_call_function_any(): pass the node value to cpumask_of_node()\n\nThe change in acpi_cpufreq to use smp_call_function_any causes a warning\nwhen it is called since the function erroneously passes the cpu id to\ncpumask_of_node rather than the node that the cpu is on.  Fix this.\n\ncpumask_of_node(3): node \u003e nr_node_ids(1)\nPid: 1, comm: swapper Not tainted 2.6.33-rc3-00097-g2c1f189 #223\nCall Trace:\n [\u003cffffffff81028bb3\u003e] cpumask_of_node+0x23/0x58\n [\u003cffffffff81061f51\u003e] smp_call_function_any+0x65/0xfa\n [\u003cffffffff810160d1\u003e] ? do_drv_read+0x0/0x2f\n [\u003cffffffff81015fba\u003e] get_cur_val+0xb0/0x102\n [\u003cffffffff81016080\u003e] get_cur_freq_on_cpu+0x74/0xc5\n [\u003cffffffff810168a7\u003e] acpi_cpufreq_cpu_init+0x417/0x515\n [\u003cffffffff81562ce9\u003e] ? __down_write+0xb/0xd\n [\u003cffffffff8148055e\u003e] cpufreq_add_dev+0x278/0x922\n\nSigned-off-by: David John \u003cdavidjon@xenontk.org\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5dab600e6a153ceb64832f608069e6c08185411a",
      "tree": "866d05be2255bd4f0c146534741b10c60afe9b79",
      "parents": [
        "d994ffc247f7c4a48b848f10c4c01c9b06411ada"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: document everywhere that size has to be power of two\n\nOn my first try using them I missed that the fifos need to be power of\ntwo, resulting in a runtime bug.  Document that requirement everywhere\n(and fix one grammar bug)\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5b9e2c1063046421ce01dcf5ddd7ec12567f3e1",
      "tree": "09cef2a043af96491497db380abe89af2aee5176",
      "parents": [
        "64ce1037c5434b1d036cd99ecaee6e00496bc2e9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: add kfifo_out_peek\n\nIn some upcoming code it\u0027s useful to peek into a FIFO without permanentely\nremoving data.  This patch implements a new kfifo_out_peek() to do this.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64ce1037c5434b1d036cd99ecaee6e00496bc2e9",
      "tree": "37a8c8f1dccdcdb3d00bf07d36d86fe6ea05f3f9",
      "parents": [
        "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:15 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: sanitize *_user error handling\n\nRight now for kfifo_*_user it\u0027s not easily possible to distingush between\na user copy failing and the FIFO not containing enough data.  The problem\nis that both conditions are multiplexed into the same return code.\n\nAvoid this by moving the \"copy length\" into a separate output parameter\nand only return 0/-EFAULT in the main return value.\n\nI didn\u0027t fully adapt the weird \"record\" variants, those seem\nto be unused anyways and were rather messy (should they be just removed?)\n\nI would appreciate some double checking if I did all the conversions\ncorrectly.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8ecc2951534af10e04ddb5e5ff5c6d217b79f5c2",
      "tree": "44c8400754bc42a072fe7dc117696ebb5699920e",
      "parents": [
        "2427b8e3eaea3719e53bbed7b3375382c3aa6f13"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 15 17:01:12 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 16 12:15:38 2010 -0800"
      },
      "message": "kfifo: use void * pointers for user buffers\n\nThe pointers to user buffers are currently unsigned char *, which requires\na lot of casting in the caller for any non-char typed buffers.  Use void *\ninstead.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: Dmitry Torokhov \u003cdmitry.torokhov@gmail.com\u003e\nCc: Andy Walls \u003cawalls@radix.net\u003e\nCc: Vikram Dhillon \u003cdhillonv10@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1303dd1d6b220cab375f24fa91a5640e54e169e",
      "tree": "6b37f4fe7ef331e18c35919ae2fab0ce9da5e6b9",
      "parents": [
        "16da27a8bc7a0d050686d1b2e9efb53fab9ed226"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:40 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:14 2010 -0500"
      },
      "message": "tracing/filters: Add comment for match callbacks\n\nWe should be clear on 2 things:\n\n- the length parameter of a match callback includes\n  tailing \u0027\\0\u0027.\n\n- the string to be searched might not be NULL-terminated.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8770.7000608@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "16da27a8bc7a0d050686d1b2e9efb53fab9ed226",
      "tree": "def65eba395d9b2a2531f87dc1dd051be7845e92",
      "parents": [
        "b2af211f284eb1bef19fbb85fc8ef551bb1e7460"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:27 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:12 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FULL filter matching for PTR_STRING\n\nMATCH_FULL matching for PTR_STRING is not working correctly:\n\n  # echo \u0027func \u003d\u003d vt\u0027 \u003e events/bkl/lock_kernel/filter\n  # echo 1 \u003e events/bkl/lock_kernel/enable\n  ...\n  # cat trace\n   Xorg-1484  [000]  1973.392586: lock_kernel: ... func\u003dvt_ioctl()\n    gpm-1402  [001]  1974.027740: lock_kernel: ... func\u003dvt_ioctl()\n\nWe should pass to regex.match(..., len) the length (including \u0027\\0\u0027)\nof the source string instead of the length of the pattern string.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8763.5070707@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "b2af211f284eb1bef19fbb85fc8ef551bb1e7460",
      "tree": "251b3848de7478ad9123c92fc7c95a464bd84f78",
      "parents": [
        "d5f1fb53353edc38da326445267c1df0c9676df2"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:54:11 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:11 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_MIDDLE_ONLY filter matching\n\nThe @str might not be NULL-terminated if it\u0027s of type\nDYN_STRING or STATIC_STRING, so we should use strnstr()\ninstead of strstr().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8753.2000102@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a3291c14ecf0a995e30d993b7f2cae031de98727",
      "tree": "46b0ed65d437fdffba57866af1ce51d0d15a7673",
      "parents": [
        "285caad415f459f336247932b4db95a571357a02"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:41 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:07 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_END_ONLY filter matching\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but event filtering incorrectly disallows strings\nlike bar_foo_foo:\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8735.6070604@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "285caad415f459f336247932b4db95a571357a02",
      "tree": "b4372c5336dee9919f26c61a4808ef08993a43a6",
      "parents": [
        "751e9983ee276cb150e8812b1d995f6035a63878"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:21 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:05 2010 -0500"
      },
      "message": "tracing/filters: Fix MATCH_FRONT_ONLY filter matching\n\nMATCH_FRONT_ONLY actually is a full matching:\n\n  # ./perf record -R -f -a -e lock:lock_acquire \\\n\t--filter \u0027name ~rcu_*\u0027 sleep 1\n  # ./perf trace\n  (no output)\n\nWe should pass the length of the pattern string to strncmp().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E8721.5090301@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "751e9983ee276cb150e8812b1d995f6035a63878",
      "tree": "7f9abfa2ea11bcc2ccfa9922af17811d5020fa69",
      "parents": [
        "b82a4045f7962483a78a874343dc6e31b79c96c1"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Jan 14 10:53:02 2010 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 14 22:38:03 2010 -0500"
      },
      "message": "ftrace: Fix MATCH_END_ONLY function filter\n\nFor \u0027*foo\u0027 pattern, we should allow any string ending with\n\u0027foo\u0027, but ftrace filter incorrectly disallows strings\nlike bar_foo_foo:\n\n  # echo \u0027*io\u0027 \u003e set_ftrace_filter\n  # cat set_ftrace_filter | grep \u0027req_bio_endio\u0027\n  # cat available_filter_functions | grep \u0027req_bio_endio\u0027\n  req_bio_endio\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B4E870E.6060607@cn.fujitsu.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "7485d0d3758e8e6491a5c9468114e74dc050785d",
      "tree": "073fb295550c96f075cbf968858bbab7e9fe5061",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Tue Jan 05 16:32:43 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 09:17:36 2010 +0100"
      },
      "message": "futexes: Remove rw parameter from get_futex_key()\n\nCurrently, futexes have two problem:\n\nA) The current futex code doesn\u0027t handle private file mappings properly.\n\nget_futex_key() uses PageAnon() to distinguish file and\nanon, which can cause the following bad scenario:\n\n  1) thread-A call futex(private-mapping, FUTEX_WAIT), it\n     sleeps on file mapping object.\n  2) thread-B writes a variable and it makes it cow.\n  3) thread-B calls futex(private-mapping, FUTEX_WAKE), it\n     wakes up blocked thread on the anonymous page. (but it\u0027s nothing)\n\nB) Current futex code doesn\u0027t handle zero page properly.\n\nRead mode get_user_pages() can return zero page, but current\nfutex code doesn\u0027t handle it at all. Then, zero page makes\ninfinite loop internally.\n\nThe solution is to use write mode get_user_page() always for\npage lookup. It prevents the lookup of both file page of private\nmappings and zero page.\n\nPerformance concerns:\n\nProbaly very little, because glibc always initialize variables\nfor futex before to call futex(). It means glibc users never see\nthe overhead of this patch.\n\nCompatibility concerns:\n\nThis patch has few compatibility issues. After this patch,\nFUTEX_WAIT require writable access to futex variables (read-only\nmappings makes EFAULT). But practically it\u0027s not a problem,\nglibc always initalizes variables for futexes explicitly - nobody\nuses read-only mappings.\n\nReported-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Darren Hart \u003cdvhltc@us.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Ulrich Drepper \u003cdrepper@gmail.com\u003e\nLKML-Reference: \u003c20100105162633.45A2.A69D9226@jp.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b45c6e76bc2c72f6426c14bed64fdcbc9bf37cb0",
      "tree": "5b1d7a869db512f1297c82142adf006c3c6786c0",
      "parents": [
        "bd4f490a079730aadfaf9a728303ea0135c01945"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Fri Jan 08 14:42:52 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:05 2010 -0800"
      },
      "message": "kernel/signal.c: fix kernel information leak with print-fatal-signals\u003d1\n\nWhen print-fatal-signals is enabled it\u0027s possible to dump any memory\nreachable by the kernel to the log by simply jumping to that address from\nuser space.\n\nOr crash the system if there\u0027s some hardware with read side effects.\n\nThe fatal signals handler will dump 16 bytes at the execution address,\nwhich is fully controlled by ring 3.\n\nIn addition when something jumps to a unmapped address there will be up to\n16 additional useless page faults, which might be potentially slow (and at\nleast is not very efficient)\n\nFortunately this option is off by default and only there on i386.\n\nBut fix it by checking for kernel addresses and also stopping when there\u0027s\na page fault.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bd4f490a079730aadfaf9a728303ea0135c01945",
      "tree": "7de1396233a18a8da5e4b204415a8859154c79bc",
      "parents": [
        "272a897904b9a067550f5b8e812036b65180418f"
      ],
      "author": {
        "name": "Dave Anderson",
        "email": "anderson@redhat.com",
        "time": "Fri Jan 08 14:42:50 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:05 2010 -0800"
      },
      "message": "cgroups: fix 2.6.32 regression causing BUG_ON() in cgroup_diput()\n\nThe LTP cgroup test suite generates a \"kernel BUG at kernel/cgroup.c:790!\"\nhere in cgroup_diput():\n\n                 /*\n                  * if we\u0027re getting rid of the cgroup, refcount should ensure\n                  * that there are no pidlists left.\n                  */\n                 BUG_ON(!list_empty(\u0026cgrp-\u003epidlists));\n\nThe cgroup pidlist rework in 2.6.32 generates the BUG_ON, which is caused\nwhen pidlist_array_load() calls cgroup_pidlist_find():\n\n(1) if a matching cgroup_pidlist is found, it down_write\u0027s the mutex of the\n     pre-existing cgroup_pidlist, and increments its use_count.\n(2) if no matching cgroup_pidlist is found, then a new one is allocated, it\n     down_write\u0027s its mutex, and the use_count is set to 0.\n(3) the matching, or new, cgroup_pidlist gets returned back to pidlist_array_load(),\n     which increments its use_count -- regardless whether new or pre-existing --\n     and up_write\u0027s the mutex.\n\nSo if a matching list is ever encountered by cgroup_pidlist_find() during\nthe life of a cgroup directory, it results in an inflated use_count value,\npreventing it from ever getting released by cgroup_release_pid_array().\nThen if the directory is subsequently removed, cgroup_diput() hits the\nBUG_ON() when it finds that the directory\u0027s cgroup is still populated with\na pidlist.\n\nThe patch simply removes the use_count increment when a matching pidlist\nis found by cgroup_pidlist_find(), because it gets bumped by the calling\npidlist_array_load() function while still protected by the list\u0027s mutex.\n\nSigned-off-by: Dave Anderson \u003canderson@redhat.com\u003e\nReviewed-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Ben Blum \u003cbblum@andrew.cmu.edu\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8767ba2796a1c894e6d9524584a26a8224f0543d",
      "tree": "cefe04f3420ae11d46c4badbd1d3b2993da156b7",
      "parents": [
        "42d53b4ff7d61487d18274ebdf1f70c1aef6f122"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Fri Jan 08 14:42:38 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:04 2010 -0800"
      },
      "message": "kmod: fix resource leak in call_usermodehelper_pipe()\n\nFix resource (write-pipe file) leak in call_usermodehelper_pipe().\n\nWhen call_usermodehelper_exec() fails, write-pipe file is opened and\ncall_usermodehelper_pipe() just returns an error.  Since it is hard for\ncaller to determine whether the error occured when opening the pipe or\nexecuting the helper, the caller cannot close the pipe by themselves.\n\nI\u0027ve found this resoruce leak when testing coredump.  You can check how\nthe resource leaks as below;\n\n$ echo \"|nocommand\" \u003e /proc/sys/kernel/core_pattern\n$ ulimit -c unlimited\n$ while [ 1 ]; do ./segv; done \u0026\u003e /dev/null \u0026\n$ cat /proc/meminfo (\u003c- repeat it)\n\nwhere segv.c is;\n//-----\nint main () {\n        char *p \u003d 0;\n        *p \u003d 1;\n}\n//-----\n\nThis patch closes write-pipe file if call_usermodehelper_exec() failed.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e1ff5d72a6393f2ef5dbf74f58bb55a12d63834",
      "tree": "e9a9600a14fa4d1f2b045097c9e9d7d03463f0bf",
      "parents": [
        "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:40:44 2010 -0500"
      },
      "message": "ring-buffer: Add rb_list_head() wrapper around new reader page next field\n\nIf the very unlikely case happens where the writer moves the head by one\nbetween where the head page is read and where the new reader page\nis assigned _and_ the writer then writes and wraps the entire ring buffer\nso that the head page is back to what was originally read as the head page,\nthe page to be swapped will have a corrupted next pointer.\n\nSimple solution is to wrap the assignment of the next pointer with a\nrb_list_head().\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5ded3dc6a3c7549b36a8ac27bbd81b33756a2c29",
      "tree": "e18c745a2b1b147a9222a615e9d0c39e8a6f7938",
      "parents": [
        "c6f7afaeeda5b3c42ea8d7b27e197d223a04675e"
      ],
      "author": {
        "name": "David Sharp",
        "email": "dhsharp@google.com",
        "time": "Wed Jan 06 17:12:07 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jan 06 20:38:25 2010 -0500"
      },
      "message": "ring-buffer: Wrap a list.next reference with rb_list_head()\n\nThis reference at the end of rb_get_reader_page() was causing off-by-one\nwrites to the prev pointer of the page after the reader page when that\npage is the head page, and therefore the reader page has the RB_PAGE_HEAD\nflag in its list.next pointer. This eventually results in a GPF in a\nsubsequent call to rb_set_head_page() (usually from rb_get_reader_page())\nwhen that prev pointer is dereferenced. The dereferenced register would\ncharacteristically have an address that appears shifted left by one byte\n(eg, ffxxxxxxxxxxxxyy instead of ffffxxxxxxxxxxxx) due to being written at\nan address one byte too high.\n\nSigned-off-by: David Sharp \u003cdhsharp@google.com\u003e\nLKML-Reference: \u003c1262826727-9090-1-git-send-email-dhsharp@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "10b465aaf9536ee5a16652fa0700740183d48ec9",
      "tree": "402597ee1ed00b2cfb57f14dba96199134a79b26",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Sat Dec 19 14:43:01 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 06 01:11:29 2010 -0800"
      },
      "message": "modules: Skip empty sections when exporting section notes\n\nCommit 35dead4 \"modules: don\u0027t export section names of empty sections\nvia sysfs\" changed the set of sections that have attributes, but did\nnot change the iteration over these attributes in add_notes_attrs().\nThis can lead to add_notes_attrs() creating attributes with the wrong\nnames or with null name pointers.\n\nIntroduce a sect_empty() function and use it in both add_sect_attrs()\nand add_notes_attrs().\n\nReported-by: Martin Michlmayr \u003ctbm@cyrius.com\u003e\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nTested-by: Martin Michlmayr \u003ctbm@cyrius.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "952363c90c93e967c8e1819131b68cbb6f9c962f",
      "tree": "d68303e8615d56cff385ee1331ab536994e8096f",
      "parents": [
        "2d959e95658a0224b0dd0d787926d5ffc95f9574",
        "05cbaa2853cdfc255fdd04e65a82bfe9208c4e52"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:56:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:56:24 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix NULL deref in inheritance code\n  perf: Pass appropriate frame pointer to dump_trace()\n"
    },
    {
      "commit": "9d6e323c687c7b94c703c9b0900a74e5d262d462",
      "tree": "82b6dfff0fa732cfabde42001482aad144bb3945",
      "parents": [
        "b21c07040304b8716e38a4a0e4ab60f386357e61",
        "4efb5290ae187514bd31af8c2d7755e175245e19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:24 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf kmem: Fix statistics typo\n  kprobes: Fix distinct type warning\n  perf: Rename perf_event_hw_event in design document\n  perf tools: Add missing header files to LIB_H Makefile variable\n  perf record: We should fork only if a program was specified to run\n  perf diff: Fix usage array, it must end with a NULL entry\n"
    },
    {
      "commit": "b21c07040304b8716e38a4a0e4ab60f386357e61",
      "tree": "eb2cf03ec35b9a5090c0adaab659a766e02c3b10",
      "parents": [
        "4e58fb7305449cf8c5a86dd97dfc1812221be77c",
        "fb7ae981cb9fe8665b9da97e8734745e030c151d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 31 11:52:01 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix sign fields in ftrace_define_fields_##call()\n  tracing/syscalls: Fix typo in SYSCALL_DEFINE0\n  tracing/kprobe: Show sign of fields in trace_kprobe format files\n  ksym_tracer: Remove trace_stat\n  ksym_tracer: Fix race when incrementing count\n  ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n  ksym_tracer: Fix to make the tracer work\n  tracing: Kconfig spelling fixes and cleanups\n  tracing: Fix setting tracer specific options\n  Documentation: Update ftrace-design.txt\n  Documentation: Update tracepoint-analysis.txt\n  Documentation: Update mmiotrace.txt\n"
    },
    {
      "commit": "05cbaa2853cdfc255fdd04e65a82bfe9208c4e52",
      "tree": "83a6b8ea45fe181e623aa6c532cb9176400199de",
      "parents": [
        "48b5ba9cc98d676712da29d9931f1c88e5185ff2"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 30 16:00:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 31 13:11:31 2009 +0100"
      },
      "message": "perf: Fix NULL deref in inheritance code\n\nLiming found a NULL deref when a task has a perf context but no\ncounters  when it forks.\n\nThis can occur in two cases, a race during construction where\nthe fork hits after installing the context but before the first\ncounter gets inserted, or more reproducably, a fork after the\nlast counter is closed (which leaves the context around).\n\nReported-by: Wang Liming \u003climing.wang@windriver.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCC: \u003cstable@kernel.org\u003e\nLKML-Reference: \u003c1262185684.7135.222.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fb7ae981cb9fe8665b9da97e8734745e030c151d",
      "tree": "7b127c1bd4c0457c30f57d0f9c6ceacf69ab88c2",
      "parents": [
        "e96dc9674cb597de4fee757ed005c8465072d13f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:38 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:06 2009 -0500"
      },
      "message": "tracing: Fix sign fields in ftrace_define_fields_##call()\n\nAdd is_signed_type() call to trace_define_field() in ftrace macros.\n\nThe code previously just passed in 0 (false), disregarding whether\nor not the field was actually a signed type.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D3A.6020007@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "79b408210885b9f7f0b067b07a09d68f4da3a700",
      "tree": "b1297cf9ce84442abe48e67debf67214bd00ac9b",
      "parents": [
        "53ab668064edaeef99c0ee22799483d45f4c81f6"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Dec 15 15:39:19 2009 +0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Dec 30 10:27:03 2009 -0500"
      },
      "message": "tracing/kprobe: Show sign of fields in trace_kprobe format files\n\nThe format files of trace_kprobe do not show the sign of the fields.\nThe other format files show the field signed type of the fields and\nthis patch makes the trace_kprobe formats consistent with the others.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nLKML-Reference: \u003c4B273D27.5040009@cn.fujitsu.com\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "53ab668064edaeef99c0ee22799483d45f4c81f6",
      "tree": "1aa92f9e5bbddb61cbc3d5683180dc64abe341fc",
      "parents": [
        "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:24:03 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:50 2009 +0100"
      },
      "message": "ksym_tracer: Remove trace_stat\n\ntrace_stat is problematic. Don\u0027t use it, use seqfile instead.\n\nThis fixes a race that reading the stat file is not protected by\nany lock, which can lead to use after free.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF203.40200@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6d9491bf8ba6728cc86aeabbc688d20ec0563b5",
      "tree": "1ca34f9f0608f688069da43688b2a9b8fa163644",
      "parents": [
        "3d13ec2efdb5843ad91e57b60d50b44d922cf063"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:40 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix race when incrementing count\n\nWe are under rcu read section but not holding the write lock, so\ncount++ is not atomic. Use atomic64_t instead.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1EC.9010608@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3d13ec2efdb5843ad91e57b60d50b44d922cf063",
      "tree": "35eb9a0ce4571bded972c28bc00526d9f51819dd",
      "parents": [
        "88f7a890d74137ab0d126a5d65679cd620f1a289"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:23:19 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:49 2009 +0100"
      },
      "message": "ksym_tracer: Fix to allow writing newline to ksym_trace_filter\n\nIt used to work, but now doesn\u0027t:\n\n # echo \u003e ksym_filter\n bash: echo: write error: Invalid argument\n\nIt\u0027s caused by d954fbf0ff6b5fdfb32350e85a2f15d3db976506\n(\"tracing: Fix wrong usage of strstrip in trace_ksyms\").\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF1D7.5040400@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88f7a890d74137ab0d126a5d65679cd620f1a289",
      "tree": "93f6a908ae6eca32dd7b06be5a0cfb856c7877ac",
      "parents": [
        "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Dec 30 14:22:22 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 30 07:50:47 2009 +0100"
      },
      "message": "ksym_tracer: Fix to make the tracer work\n\nksym tracer doesn\u0027t work:\n\n # echo tasklist_lock:rw- \u003e ksym_trace_filter\n -bash: echo: write error: No such device\n\nIt\u0027s because we pass to perf_event_create_kernel_counter()\na cpu number which is not present.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c4B3AF19E.1010201@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40892367bc893f3abf6f5ca8ac2ed1c98ba26a77",
      "tree": "f73c4b14b52247911a89fbcce0bcf9bd2b227913",
      "parents": [
        "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Dec 21 12:01:17 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:37:54 2009 +0100"
      },
      "message": "tracing: Kconfig spelling fixes and cleanups\n\nFix filename reference (ftrace-implementation.txt -\u003e\nftrace-design.txt).\n\nFix spelling, punctuation, grammar.\n\nFix help text indentation and line lengths to reduce need for\nhorizontal scrolling or larger window sizes.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c20091221120117.3fb49cdc.randy.dunlap@oracle.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2ef6661ce62e26a8c0978e521fab646128a144b",
      "tree": "d03139549a1bfd627249a4db2e36b788b62462e3",
      "parents": [
        "0b413e44d64aeac36a096505a40fc2ff470872fa"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Dec 21 13:02:24 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 28 10:25:31 2009 +0100"
      },
      "message": "kprobes: Fix distinct type warning\n\nEvery time I see this:\n\n kernel/kprobes.c: In function \u0027register_kretprobe\u0027:\n kernel/kprobes.c:1038: warning: comparison of distinct pointer types lacks a cast\n\nI\u0027m wondering if something changed in common code and we need to\ndo something for s390. Apparently that\u0027s not the case.\nLet\u0027s get rid of this annoying warning.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nLKML-Reference: \u003c20091221120224.GA4471@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b5e2588d8238b03df66c4e74769fd03ad84f694",
      "tree": "7a7baf0d8309a3473bf265d1354bb756d65a4a02",
      "parents": [
        "6067d7e4f05e5c08617cf95032867d892035e581",
        "443c6f145de813518c36ac6b6e4e08d9445337e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 24 13:01:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 24 13:01:29 2009 -0800"
      },
      "message": "Merge branch \u0027sysctl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc-2.6\n\n* \u0027sysctl\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc-2.6:\n  SYSCTL: Add a mutex to the page_alloc zone order sysctl\n  SYSCTL: Print binary sysctl warnings (nearly) only once\n"
    },
    {
      "commit": "4440095c8268c1a5e11577097d2be429cec036ca",
      "tree": "7e1ca48bcd8fd0b947a7cc0edf31c0af9bbc4ec3",
      "parents": [
        "f42ecb2808db5386f983d593a7c08d3ea3b94a27"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Dec 23 21:00:20 2009 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Wed Dec 23 21:00:20 2009 +0100"
      },
      "message": "SYSCTL: Print binary sysctl warnings (nearly) only once\n\nWhen printing legacy sysctls print the warning message\nfor each of them only once.  This way there is a guarantee\nthe syslog won\u0027t be flooded for any sane program.\n\nThe original attempt at this made the tables non const and stored\nthe flag inline.\n\nLinus suggested using a separate hash table for this, this is based on a\ncode snippet from him.\n\nThe hash implies this is not exact and can sometimes not print a\nnew sysctl due to a hash collision, but in practice this should not\nbe a problem\n\nI used a FNV32 hash over the binary string with a 32byte bitmap. This\ngives relatively little collisions when all the predefined binary sysctls\nare hashed:\n\nsize 256\nbucket\nlength      number\n0:          [25]\n1:          [67]\n2:          [88]\n3:          [47]\n4:          [22]\n5:          [6]\n6:          [1]\n\nThe worst case is a single collision of 6 hash values.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "6432ed648a204d01d160990630178a1569b36852",
      "tree": "f8171068c01318883faeac903e8cc589a9c9f154",
      "parents": [
        "94e5165aa72826b05ffd492f334a1465187e255a",
        "0c69774e6ce94364cfaa8bdeb18061edc414bc5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 23 09:12:57 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 23 09:12:57 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: Revert 738d2be, simplify set_task_cpu()\n"
    },
    {
      "commit": "0c69774e6ce94364cfaa8bdeb18061edc414bc5a",
      "tree": "b83fdb55af2f9b9dddcab4a273739ebe1c810594",
      "parents": [
        "f7b84a6ba7eaeba4e1df8feddca1473a7db369a5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Tue Dec 22 15:43:19 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 23 10:04:10 2009 +0100"
      },
      "message": "sched: Revert 738d2be, simplify set_task_cpu()\n\nEffectively reverts 738d2be4301007f054541c5c4bf7fb6a361c9b3a.\n\nAs demonstrated by Eric, we really need to call __set_task_cpu()\nearly in the fork() path to properly initialize the various task\nstate -- specifically the cgroup state through set_task_rq().\n\n[ we could probably fix this by explicitly calling\n  __set_task_cpu() from   sched_fork(), but lets try that for the\n  next cycle and simply revert to the old behaviour for now. ]\n\nReported-by: Eric Paris \u003ceparis@redhat.com\u003e\nTested-by: Eric Paris \u003ceparis@redhat.com\u003e,\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: efault@gmx.de\nLKML-Reference: \u003c1261492999.4937.36.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe35d4a0289a8d6efcacb57e9a377b845686df10",
      "tree": "05ff26e6658d3ddc6e4885059bbf018b1681bb3b",
      "parents": [
        "9917f7bbe96432012d3ad8075e9fd99390255d0c",
        "28ba0ec64ca0f6ad2b0338ccec0b00a4e64e7a69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:20:48 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:20:48 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  jfs: Fix 32bit build warning\n  Remove obsolete comment in fs.h\n  Sanitize f_flags helpers\n  Fix f_flags/f_mode in case of lookup_instantiate_filp() from open(pathname, 3)\n  anonfd: Allow making anon files read-only\n  fs/compat_ioctl.c: fix build error when !BLOCK\n  pohmelfs needs I_LOCK\n  alloc_file(): simplify handling of mnt_clone_write() errors\n"
    },
    {
      "commit": "86d4880313603810901f639ccb5c88ff13d4ad3c",
      "tree": "c182d890b5c96a1143b70b00b93e3fc4a9263555",
      "parents": [
        "a121f24accac1600bf5b6fb1e12eeabdfed7cb1a"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: add record handling functions\n\nAdd kfifo_in_rec() - puts some record data into the FIFO\n Add kfifo_out_rec() - gets some record data from the FIFO\n Add kfifo_from_user_rec() - puts some data from user space into the FIFO\n Add kfifo_to_user_rec() - gets data from the FIFO and write it to user space\n Add kfifo_peek_rec() - gets the size of the next FIFO record field\n Add kfifo_skip_rec() - skip the next fifo out record\n Add kfifo_avail_rec() - determinate the number of bytes available in a record FIFO\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a121f24accac1600bf5b6fb1e12eeabdfed7cb1a",
      "tree": "24a3bb527e50304677785dbb390dd5ff838c94e8",
      "parents": [
        "37bdfbbfaab47811fcec84dff23c4e8da1a09f9e"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: add kfifo_skip, kfifo_from_user and kfifo_to_user\n\nAdd kfifo_reset_out() for save lockless discard the fifo output\n Add kfifo_skip() to skip a number of output bytes\n Add kfifo_from_user() to copy user space data into the fifo\n Add kfifo_to_user() to copy fifo data to user space\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7acd72eb85f1c7a15e8b5eb554994949241737f1",
      "tree": "76712bb9f38690d8cf9c2f91bef811e4413d1aa3",
      "parents": [
        "e64c026dd09b73faf20707711402fc5ed55a8e70"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: rename kfifo_put... into kfifo_in... and kfifo_get... into kfifo_out...\n\nrename kfifo_put...  into kfifo_in...  to prevent miss use of old non in\nkernel-tree drivers\n\nditto for kfifo_get...  -\u003e kfifo_out...\n\nImprove the prototypes of kfifo_in and kfifo_out to make the kerneldoc\nannotations more readable.\n\nAdd mini \"howto porting to the new API\" in kfifo.h\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e64c026dd09b73faf20707711402fc5ed55a8e70",
      "tree": "4780736e021824f15329a0826eff3cc27d3f9646",
      "parents": [
        "c1e13f25674ed564948ecb7dfe5f83e578892896"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: cleanup namespace\n\nchange name of __kfifo_* functions to kfifo_*, because the prefix __kfifo\nshould be reserved for internal functions only.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1e13f25674ed564948ecb7dfe5f83e578892896",
      "tree": "24fac07b3e2b66dff01c3127b34077de1de4c101",
      "parents": [
        "45465487897a1c6d508b14b904dc5777f7ec7e04"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:56 2009 -0800"
      },
      "message": "kfifo: move out spinlock\n\nMove the pointer to the spinlock out of struct kfifo.  Most users in\ntree do not actually use a spinlock, so the few exceptions now have to\ncall kfifo_{get,put}_locked, which takes an extra argument to a\nspinlock.\n\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45465487897a1c6d508b14b904dc5777f7ec7e04",
      "tree": "935c8dae68dc793ff2f795d57cf027531475cd53",
      "parents": [
        "2ec91eec47f713e3d158ba5b28a24a85a2cf3650"
      ],
      "author": {
        "name": "Stefani Seibold",
        "email": "stefani@seibold.net",
        "time": "Mon Dec 21 14:37:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:17:55 2009 -0800"
      },
      "message": "kfifo: move struct kfifo in place\n\nThis is a new generic kernel FIFO implementation.\n\nThe current kernel fifo API is not very widely used, because it has to\nmany constrains.  Only 17 files in the current 2.6.31-rc5 used it.\nFIFO\u0027s are like list\u0027s a very basic thing and a kfifo API which handles\nthe most use case would save a lot of development time and memory\nresources.\n\nI think this are the reasons why kfifo is not in use:\n\n - The API is to simple, important functions are missing\n - A fifo can be only allocated dynamically\n - There is a requirement of a spinlock whether you need it or not\n - There is no support for data records inside a fifo\n\nSo I decided to extend the kfifo in a more generic way without blowing up\nthe API to much.  The new API has the following benefits:\n\n - Generic usage: For kernel internal use and/or device driver.\n - Provide an API for the most use case.\n - Slim API: The whole API provides 25 functions.\n - Linux style habit.\n - DECLARE_KFIFO, DEFINE_KFIFO and INIT_KFIFO Macros\n - Direct copy_to_user from the fifo and copy_from_user into the fifo.\n - The kfifo itself is an in place member of the using data structure, this save an\n   indirection access and does not waste the kernel allocator.\n - Lockless access: if only one reader and one writer is active on the fifo,\n   which is the common use case, no additional locking is necessary.\n - Remove spinlock - give the user the freedom of choice what kind of locking to use if\n   one is required.\n - Ability to handle records. Three type of records are supported:\n   - Variable length records between 0-255 bytes, with a record size\n     field of 1 bytes.\n   - Variable length records between 0-65535 bytes, with a record size\n     field of 2 bytes.\n   - Fixed size records, which no record size field.\n - Preserve memory resource.\n - Performance!\n - Easy to use!\n\nThis patch:\n\nSince most users want to have the kfifo as part of another object,\nreorganize the code to allow including struct kfifo in another data\nstructure.  This requires changing the kfifo_alloc and kfifo_init\nprototypes so that we pass an existing kfifo pointer into them.  This\npatch changes the implementation and all existing users.\n\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: Stefani Seibold \u003cstefani@seibold.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83f57a11d84460dfe2afdb5a8bc759953428e38b",
      "tree": "b8506a6b61eb23e3d203fb248776c7eab9270c2d",
      "parents": [
        "0e2c8b8f55072a98b99e7bdad55c912084d6a526"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 22 14:10:37 2009 -0800"
      },
      "message": "Revert \"time: Remove xtime_cache\"\n\nThis reverts commit 7bc7d637452383d56ba4368d4336b0dde1bb476d, as\nrequested by John Stultz. Quoting John:\n\n \"Petr Titěra reported an issue where he saw odd atime regressions with\n  2.6.33 where there were a full second worth of nanoseconds in the\n  nanoseconds field.\n\n  He also reviewed the time code and narrowed down the problem: unhandled\n  overflow of the nanosecond field caused by rounding up the\n  sub-nanosecond accumulated time.\n\n  Details:\n\n   * At the end of update_wall_time(), we currently round up the\n  sub-nanosecond portion of accumulated time when storing it into xtime.\n  This was added to avoid time inconsistencies caused when the\n  sub-nanosecond portion was truncated when storing into xtime.\n  Unfortunately we don\u0027t handle the possible second overflow caused by\n  that rounding.\n\n   * Previously the xtime_cache code hid this overflow by normalizing the\n  xtime value when storing into the xtime_cache.\n\n   * We could try to handle the second overflow after the rounding up, but\n  since this affects the timekeeping\u0027s internal state, this would further\n  complicate the next accumulation cycle, causing small errors in ntp\n  steering. As much as I\u0027d like to get rid of it, the xtime_cache code is\n  known to work.\n\n   * The correct fix is really to include the sub-nanosecond portion in the\n  timekeeping accessor function, so we don\u0027t need to round up at during\n  accumulation. This would greatly simplify the accumulation code.\n  Unfortunately, we can\u0027t do this safely until the last three\n  non-GENERIC_TIME arches (sparc32, arm, cris) are converted  (those\n  patches are in -mm) and we kill off the spots where arches set xtime\n  directly. This is all 2.6.34 material, so I think reverting the\n  xtime_cache change is the best approach for now.\n\n  Many thanks to Petr for both reporting and finding the issue!\"\n\nReported-by: Petr Titěra \u003cP.Titera@century.cz\u003e\nRequested-by: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5300990c0370e804e49d9a59d928c5d53fb73487",
      "tree": "08ed922afd172662039c082ec9e9410070f4afe8",
      "parents": [
        "482928d59db668b8d82a48717f78986d8cea72e9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Dec 19 10:15:07 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 22 12:27:34 2009 -0500"
      },
      "message": "Sanitize f_flags helpers\n\n* pull ACC_MODE to fs.h; we have several copies all over the place\n* nightmarish expression calculating f_mode by f_flags deserves a helper\ntoo (OPEN_FMODE(flags))\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "628ff7c1d8d8466a5ad8078bd0206a130f8b8a51",
      "tree": "cc7ab0c90849be38e200fc6ff6a3a09e3caf0405",
      "parents": [
        "ed2617585f39dd12fae38c657bba68b9779ea10d"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rdreier@cisco.com",
        "time": "Fri Dec 18 09:41:24 2009 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 22 12:27:34 2009 -0500"
      },
      "message": "anonfd: Allow making anon files read-only\n\nIt seems a couple places such as arch/ia64/kernel/perfmon.c and\ndrivers/infiniband/core/uverbs_main.c could use anon_inode_getfile()\ninstead of a private pseudo-fs + alloc_file(), if only there were a way\nto get a read-only file.  So provide this by having anon_inode_getfile()\ncreate a read-only file if we pass O_RDONLY in flags.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c757bea93bea4b77ebd181cc6dca60c15e3b1a2c",
      "tree": "f1a4ddfea72acf13864f543648bf3f79924cbdc3",
      "parents": [
        "7e25f44cbf8d95a9748fdfd19c06145f19fd10e3"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Dec 21 22:35:16 2009 -0500"
      },
      "message": "tracing: Fix setting tracer specific options\n\nThe function __set_tracer_option() takes as its last parameter a\n\"neg\" value. If set it should negate the value of the option.\n\nThe trace_options_write() passed the value written to the file\nwhich is what the new value needs to be set as. But since this\nis not the negative, it never sets the value.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "0e2c8b8f55072a98b99e7bdad55c912084d6a526",
      "tree": "80c1ab46950ba15ed04ff6f8a6b8a032d6fbeafa",
      "parents": [
        "f7b84a6ba7eaeba4e1df8feddca1473a7db369a5"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Dec 20 10:50:02 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 21 10:42:29 2009 -0800"
      },
      "message": "resources: fix call to alignf() in allocate_resource()\n\nThe second parameter to alignf() in allocate_resource() must\nreflect what new resource is attempted to be allocated, else\nfunctions like pcibios_align_resource() (at least on x86) or\npcmcia_align() can\u0027t work correctly.\n\nCommit 1e5ad9679016275d422e36b12a98b0927d76f556 broke this by\nsetting the \"new\" resource until we\u0027re about to return success.\nTo keep the resource untouched when allocate_resource() fails,\na \"tmp\" resource is introduced.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\nAcked-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Yinghai Lu \u003cyhlu.kernel@gmail.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "70f1120527797adb31c68bdc6f1b45e182c342c7",
      "tree": "d2b5f85f3c0f7c9a162828362d3e5f587df56e20",
      "parents": [
        "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 17:36:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 23:31:23 2009 +0100"
      },
      "message": "sched: Fix hotplug hang\n\nThe hot-unplug kstopmachine usage does a wakeup after\ndeactivating the cpu, hence we cannot use cpu_active()\nhere but must rely on the good olde online.\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nReported-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nLKML-Reference: \u003c1261326987.4314.24.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3df0fc5b2e9d8092dcaeb5ae0b6753d85c851d66",
      "tree": "078c78047dd9eca67174955a1d1b622da3fe8da8",
      "parents": [
        "dd59f6c76b265ed2ff18b497d6105a9511b1feb1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Sun Dec 20 14:23:57 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 20 19:05:02 2009 +0100"
      },
      "message": "sched: Restore printk sanity\n\nRevert the braindead pr_* crap. (Commit 663997d \"sched: Use\npr_fmt() and pr_\u003clevel\u003e()\")\n\nIt\u0027s dumb and causes stupid \"sched: \" strings all over the place.\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLKML-Reference: \u003c1261315437.4314.6.camel@laptop\u003e\n[ i dont mind the pr_*() patterns that much - but Peter dislikes them with a vengence. ]\n[ - v2: remove spurious diffstat from changelog :-/ ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eca9dfcd0029c8a84b1094bb84a2fb53e4addf6c",
      "tree": "2e5982fef1e737ce5f8936981c7dc7fb50fc655c",
      "parents": [
        "3981e152864fcc1dbbb564e1f4c0ae11a09639d2",
        "b5b60fda1e462a849bc37dfbace2888191be82cc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:48:42 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf session: Make events_stats u64 to avoid overflow on 32-bit arches\n  hw-breakpoints: Fix hardware breakpoints -\u003e perf events dependency\n  perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n  perf events, x86/stacktrace: Fix performance/softlockup by providing a special frame pointer-only stack walker\n  perf events, x86/stacktrace: Make stack walking optional\n  perf events: Remove unused perf_counter.h header file\n  perf probe: Check new event name\n  kprobe-tracer: Check new event/group name\n  perf probe: Check whether debugfs path is correct\n  perf probe: Fix libdwarf include path for Debian\n"
    },
    {
      "commit": "aac3d39693529ca538e37ebdb6ed5d6432a697c7",
      "tree": "bb1b0c9fe0538008aa2c97c6f5d9dfc2a4c34190",
      "parents": [
        "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
        "077614ee1e93245a3b9a4e1213659405dbeb0ba6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:49 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits)\n  sched: Fix broken assertion\n  sched: Assert task state bits at build time\n  sched: Update task_state_arraypwith new states\n  sched: Add missing state chars to TASK_STATE_TO_CHAR_STR\n  sched: Move TASK_STATE_TO_CHAR_STR near the TASK_state bits\n  sched: Teach might_sleep() about preemptible RCU\n  sched: Make warning less noisy\n  sched: Simplify set_task_cpu()\n  sched: Remove the cfs_rq dependency from set_task_cpu()\n  sched: Add pre and post wakeup hooks\n  sched: Move kthread_bind() back to kthread.c\n  sched: Fix select_task_rq() vs hotplug issues\n  sched: Fix sched_exec() balancing\n  sched: Ensure set_task_cpu() is never called on blocked tasks\n  sched: Use TASK_WAKING for fork wakups\n  sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE\n  sched: Fix task_hot() test order\n  sched: Fix set_cpu_active() in cpu_down()\n  sched: Mark boot-cpu active before smp_init()\n  sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n  ...\n"
    },
    {
      "commit": "10e5453ffa0d04a2eda3cda3f55b88cb9c04595f",
      "tree": "def247dc399549bc1359fe9d1faa49c621f8890d",
      "parents": [
        "3cd312c3e887b4bee2d94668a481b3d19c07732c",
        "d4581a239a40319205762b76c01eb6363f277efa"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:34 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sys: Fix missing rcu protection for __task_cred() access\n  signals: Fix more rcu assumptions\n  signal: Fix racy access to __task_cred in kill_pid_info_as_uid()\n"
    },
    {
      "commit": "3cd312c3e887b4bee2d94668a481b3d19c07732c",
      "tree": "c8978186da2155f7752de79a2cd5b59e3e298ce8",
      "parents": [
        "ecd5907a200b18aeddac68b8c734b8ad4c931205",
        "cf1e367ee84e02ac349ad0858eb65e8a6a511c8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:47:18 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timers: Remove duplicate setting of new_base in __mod_timer()\n  clockevents: Prevent clockevent_devices list corruption on cpu hotplug\n"
    },
    {
      "commit": "b4c30aad39805902cf5b855aa8a8b22d728ad057",
      "tree": "77aade9b02f1c7b0d2e92cdee9ce2403121f4a23",
      "parents": [
        "6f5d51148921c242680a7a1d9913384a30ab3cbe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sat Dec 19 16:03:30 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:27:43 2009 -0800"
      },
      "message": "fix more leaks in audit_tree.c tag_chunk()\n\nSeveral leaks in audit_tree didn\u0027t get caught by commit\n318b6d3d7ddbcad3d6867e630711b8a705d873d7, including the leak on normal\nexit in case of multiple rules refering to the same chunk.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f5d51148921c242680a7a1d9913384a30ab3cbe",
      "tree": "fdd33c4390dbd93ca8a77f6427b244937b9cddba",
      "parents": [
        "9b0fd1149747b117e7c3e9917fdea03b774ae3d0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Sat Dec 19 15:59:45 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 19 09:27:43 2009 -0800"
      },
      "message": "fix braindamage in audit_tree.c untag_chunk()\n\n... aka \"Al had badly fscked up when writing that thing and nobody\nnoticed until Eric had fixed leaks that used to mask the breakage\".\n\nThe function essentially creates a copy of old array sans one element\nand replaces the references to elements of original (they are on cyclic\nlists) with those to corresponding elements of new one.  After that the\nold one is fair game for freeing.\n\nFirst of all, there\u0027s a dumb braino: when we get to list_replace_init we\nuse indices for wrong arrays - position in new one with the old array\nand vice versa.\n\nAnother bug is more subtle - termination condition is wrong if the\nelement to be excluded happens to be the last one.  We shouldn\u0027t go\nuntil we fill the new array, we should go until we\u0027d finished the old\none.  Otherwise the element we are trying to kill will remain on the\ncyclic lists...\n\nThat crap used to be masked by several leaks, so it was not quite\ntrivial to hit.  Eric had fixed some of those leaks a while ago and the\nshit had hit the fan...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55db493b65c7b6bb5d7bd3dd3c8a2fe13f5dc09c",
      "tree": "7f9203f43e7c81687c9aaa0213266bc7b2e89e35",
      "parents": [
        "efc8e7f4c83dc85acbf5f54a8b1b24ae75b20aaa",
        "a4636818f8e0991f32d9528f39cf4f3d6a7d30a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "message": "Merge branch \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  cpumask: rename tsk_cpumask to tsk_cpus_allowed\n  cpumask: don\u0027t recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt\n  cpumask: avoid dereferencing struct cpumask\n  cpumask: convert drivers/idle/i7300_idle.c to cpumask_var_t\n  cpumask: use modern cpumask style in drivers/scsi/fcoe/fcoe.c\n  cpumask: avoid deprecated function in mm/slab.c\n  cpumask: use cpu_online in kernel/perf_event.c\n"
    },
    {
      "commit": "efc8e7f4c83dc85acbf5f54a8b1b24ae75b20aaa",
      "tree": "cf7df8a837b719623e13b3ab19e8cfce1e270883",
      "parents": [
        "b5c96f89177b460ef89ecd777d5f2fefd4534d3f",
        "a00ae4d21b2fa9379914f270ffffd8d3bec55430"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:58:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:58:26 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture support\n  NOMMU: Optimise away the {dac_,}mmap_min_addr tests\n  security/min_addr.c: make init_mmap_min_addr() static\n  keys: PTR_ERR return of wrong pointer in keyctl_get_security()\n"
    },
    {
      "commit": "dcc7cd011220d7425a265c9bbf04c5731dacec1b",
      "tree": "4c2244f6e6ce94e2698572e9d2df3baea8449c2a",
      "parents": [
        "bf931a01a2c024a54204b4b02276af6e8d99a2c0",
        "b60e26a2f03d963f8c79ad7920d64abc4d38ecbc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:00:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 16:00:19 2009 -0800"
      },
      "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: fix kconfig for crc32 build error\n  kmemleak: Reduce the false positives by checking for modified objects\n  kmemleak: Show the age of an unreferenced object\n  kmemleak: Release the object lock before calling put_object()\n  kmemleak: Scan the _ftrace_events section in modules\n  kmemleak: Simplify the kmemleak_scan_area() function prototype\n  kmemleak: Do not use off-slab management with SLAB_NOLEAKTRACE\n"
    },
    {
      "commit": "6485536bcf499839a54dcda8a8d47ea0bd29b375",
      "tree": "86c94469801a264a964399ebbd4c57877eb18ff3",
      "parents": [
        "65a80b4c61f5b5f6eb0f5669c8fb120893bfb388"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Thu Dec 17 15:27:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:32 2009 -0800"
      },
      "message": "printk: fix new kernel-doc warnings\n\nFix kernel-doc warnings in printk.c:\n\nWarning(kernel/printk.c:1422): No description found for parameter \u0027dumper\u0027\nWarning(kernel/printk.c:1422): Excess function parameter \u0027dump\u0027 description in \u0027kmsg_dump_register\u0027\nWarning(kernel/printk.c:1451): No description found for parameter \u0027dumper\u0027\nWarning(kernel/printk.c:1451): Excess function parameter \u0027dump\u0027 description in \u0027kmsg_dump_unregister\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cd80bbb07fcd6d4d037fad4297496d3b132ac6b",
      "tree": "322216d34b6d5ba2366f53ba0d677950c4cde766",
      "parents": [
        "0f67b0b0392ccca98459bf40b36c0037793b5f71"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Thu Dec 17 15:27:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:31 2009 -0800"
      },
      "message": "do_wait() optimization: do not place sub-threads on task_struct-\u003echildren list\n\nThanks to Roland who pointed out de_thread() issues.\n\nCurrently we add sub-threads to -\u003ereal_parent-\u003echildren list.  This buys\nnothing but slows down do_wait().\n\nWith this patch -\u003echildren contains only main threads (group leaders).\nThe only complication is that forget_original_parent() should iterate over\nsub-threads by hand, and de_thread() needs another list_replace() when it\nchanges -\u003egroup_leader.\n\nHenceforth do_wait_thread() can never see task_detached() \u0026\u0026 !EXIT_DEAD\ntasks, we can remove this check (and we can unify do_wait_thread() and\nptrace_do_wait()).\n\nThis change can confuse the optimistic search in mm_update_next_owner(),\nbut this is fixable and minor.\n\nPerhaps badness() and oom_kill_process() should be updated, but they\nshould be fixed in any case.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Ratan Nalumasu \u003crnalumasu@gmail.com\u003e\nCc: Vitaly Mayatskikh \u003cvmayatsk@redhat.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e26120cc7c819c97bc07281ca1fb9017cfe9a39",
      "tree": "e8aa119051496d8c4385aae4abd9e069e12e3be2",
      "parents": [
        "b6e3224fb20954f155e41ec5709b2ab70b50ae2d"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "amwang@redhat.com",
        "time": "Thu Dec 17 15:27:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 15:45:30 2009 -0800"
      },
      "message": "kernel/sysctl.c: fix the incomplete part of sysctl_max_map_count-should-be-non-negative.patch\n\nIt is a mistake that we used \u0027proc_dointvec\u0027, it should be\n\u0027proc_dointvec_minmax\u0027, as in the original patch.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a865c0606eb44d5d12cabb429751c83712183de",
      "tree": "726d6eaf3b20f30900304bd0cbb6339b423a071f",
      "parents": [
        "331d9d5958277de27e6ce42247e1cbec54fd1c7e",
        "46e75f66677f5094bb51e91f9473128c4e907c7d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 07:23:42 2009 -0800"
      },
      "message": "Merge branch \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild\n\n* \u0027for-33\u0027 of git://repo.or.cz/linux-kbuild: (29 commits)\n  net: fix for utsrelease.h moving to generated\n  gen_init_cpio: fixed fwrite warning\n  kbuild: fix make clean after mismerge\n  kbuild: generate modules.builtin\n  genksyms: properly consider  EXPORT_UNUSED_SYMBOL{,_GPL}()\n  score: add asm/asm-offsets.h wrapper\n  unifdef: update to upstream revision 1.190\n  kbuild: specify absolute paths for cscope\n  kbuild: create include/generated in silentoldconfig\n  scripts/package: deb-pkg: use fakeroot if available\n  scripts/package: add KBUILD_PKG_ROOTCMD variable\n  scripts/package: tar-pkg: use tar --owner\u003droot\n  Kbuild: clean up marker\n  net: add net_tstamp.h to headers_install\n  kbuild: move utsrelease.h to include/generated\n  kbuild: move autoconf.h to include/generated\n  drop explicit include of autoconf.h\n  kbuild: move compile.h to include/generated\n  kbuild: drop include/asm\n  kbuild: do not check for include/asm-$ARCH\n  ...\n\nFixed non-conflicting clean merge of modpost.c as per comments from\nStephen Rothwell (modpost.c had grown an include of linux/autoconf.h\nthat needed to be changed to generated/autoconf.h)\n"
    },
    {
      "commit": "077614ee1e93245a3b9a4e1213659405dbeb0ba6",
      "tree": "246e441967d7973d9e3addc6bade207db86d2575",
      "parents": [
        "e1781538cf5c870ab696e9b8f0a5c498d3900f2f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 17 13:16:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 13:22:46 2009 +0100"
      },
      "message": "sched: Fix broken assertion\n\nThere\u0027s a preemption race in the set_task_cpu() debug check in\nthat when we get preempted after setting task-\u003estate we\u0027d still\nbe on the rq proper, but fail the test.\n\nCheck for preempted tasks, since those are always on the RQ.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20091217121830.137155561@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d27c23df09b702868d9a3bff86ec6abd22963ac",
      "tree": "ce29a1253087067b3a0e4239d0936eede870ab0b",
      "parents": [
        "06d65bda75341485d32f33da474b0664819ad497"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 17 13:16:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 13:21:36 2009 +0100"
      },
      "message": "perf events: Dont report side-band events on each cpu for per-task-per-cpu events\n\nAcme noticed that his FORK/MMAP numbers were inflated by about\nthe same factor as his cpu-count.\n\nThis led to the discovery of a few more sites that need to\nrespect the event-\u003ecpu filter.\n\nReported-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091217121830.215333434@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61c1917f47f73c968e92d04d15370b1dc3ec4592",
      "tree": "a20445bcaf484d270bd6cb8de5969702110af687",
      "parents": [
        "5b74ed4729ad2b2017453add68104a83206caefb"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Dec 17 05:40:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:56:19 2009 +0100"
      },
      "message": "perf events, x86/stacktrace: Make stack walking optional\n\nThe current print_context_stack helper that does the stack\nwalking job is good for usual stacktraces as it walks through\nall the stack and reports even addresses that look unreliable,\nwhich is nice when we don\u0027t have frame pointers for example.\n\nBut we have users like perf that only require reliable\nstacktraces, and those may want a more adapted stack walker, so\nlets make this function a callback in stacktrace_ops that users\ncan tune for their needs.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1261024834-5336-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "234da7bcdc7aaa935846534c3b726dbc79a9cdd5",
      "tree": "a391afd465d6493a9f1bb274c225bab4d303aad0",
      "parents": [
        "416eb39556a03d1c7e52b0791e9052ccd71db241"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Wed Dec 16 20:21:05 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:46:44 2009 +0100"
      },
      "message": "sched: Teach might_sleep() about preemptible RCU\n\nIn practice, it is harmless to voluntarily sleep in a\nrcu_read_lock() section if we are running under preempt rcu, but\nit is illegal if we build a kernel running non-preemptable rcu.\n\nCurrently, might_sleep() doesn\u0027t notice sleepable operations\nunder rcu_read_lock() sections if we are running under\npreemptable rcu because preempt_count() is left untouched after\nrcu_read_lock() in this case. But we want developers who test\ntheir changes under such config to notice the \"sleeping while\natomic\" issues.\n\nSo we add rcu_read_lock_nesting to prempt_count() in\nmight_sleep() checks.\n\n[ v2: Handle rcu-tiny ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1260991265-8451-1-git-send-regression-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f3cf440470650b3841d325acacd0c5ea9504c68",
      "tree": "a00395723fb479fc6485d1b6b36b97808d0159e6",
      "parents": [
        "96c96612e952f63cc0055db9df7d8b5b1ada02be"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Wed Dec 16 17:24:08 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 09:42:44 2009 +0100"
      },
      "message": "kprobe-tracer: Check new event/group name\n\nCheck new event/group name is same syntax as a C symbol. In other\nwords, checking the name is as like as other tracepoint events.\n\nThis can prevent user to create an event with useless name (e.g.\nfoo|bar, foo*bar).\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: K.Prasad \u003cprasad@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: systemtap \u003csystemtap@sources.redhat.com\u003e\nCc: DLE \u003cdle-develop@lists.sourceforge.net\u003e\nLKML-Reference: \u003c20091216222408.14459.68790.stgit@dhcp-100-2-132.bos.redhat.com\u003e\n[ v2: minor cleanups ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "416eb39556a03d1c7e52b0791e9052ccd71db241",
      "tree": "66390e3d4f53721bc643d24d96d5da339f4c34f8",
      "parents": [
        "738d2be4301007f054541c5c4bf7fb6a361c9b3a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 06:05:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 17 06:05:49 2009 +0100"
      },
      "message": "sched: Make warning less noisy\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.807938893@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62ac12795095dc959649c66ace78708e7ac52477",
      "tree": "8ee766dda801b8990e41b4332697bbe365032626",
      "parents": [
        "cc216b86e51e9ab22265ea9591769c9ee235e1e4"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:26 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:29 2009 +1030"
      },
      "message": "cpumask: avoid dereferencing struct cpumask\n\nstruct cpumask will be undefined soon with CONFIG_CPUMASK_OFFSTACK\u003dy,\nto avoid them being declared on the stack.\n\ncpumask_bits() does what we want here (of course, this code is crap).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTo: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "f6325e30ebd6fc870315b017a5d4a6ab15bf790b",
      "tree": "fd5961e95c8aeef5b4f4517c81bedbf4a774cece",
      "parents": [
        "bea4c899f2b5fad80099aea979780ef19f9b1987"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:08 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:11 2009 +1030"
      },
      "message": "cpumask: use cpu_online in kernel/perf_event.c\n\nAlso, we want to check against nr_cpu_ids, not num_possible_cpus().\nThe latter works, but the correct bounds check is \u003c nr_cpu_ids.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nTo: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "cf1e367ee84e02ac349ad0858eb65e8a6a511c8b",
      "tree": "a20273becfcf64a0230135c89d509466e2230aed",
      "parents": [
        "bb6eddf7676e1c1f3e637aa93c5224488d99036f"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Thu Dec 17 11:15:42 2009 +1100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Dec 17 01:30:49 2009 +0100"
      },
      "message": "timers: Remove duplicate setting of new_base in __mod_timer()\n\nnew_base is set using per_cpu(tvec_bases, cpu) after selecting the\ndesired value of cpu immediately below so this line is a unnecessary.\n\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nLKML-Reference: \u003c20091217001542.GD25317@verge.net.au\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "6e1415467614e854fee660ff6648bd10fa976e95",
      "tree": "2ae2e2f51eff0629bc0e26a97eac85483a7ba56f",
      "parents": [
        "dd880fbe8e4792d1185a5101dc751f49eab0a509"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 15 19:27:45 2009 +0000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Dec 17 09:25:19 2009 +1100"
      },
      "message": "NOMMU: Optimise away the {dac_,}mmap_min_addr tests\n\nIn NOMMU mode clamp dac_mmap_min_addr to zero to cause the tests on it to be\nskipped by the compiler.  We do this as the minimum mmap address doesn\u0027t make\nany sense in NOMMU mode.\n\nmmap_min_addr and round_hint_to_min() can be discarded entirely in NOMMU mode.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "61cf693159d6a968a7014e24905143f71ed8ddcf",
      "tree": "595a4bddf8b005f7345cc123b19f4da1f5d07aa7",
      "parents": [
        "288f02bbb6e9609cbaf1eb7a9cb97ae45ce090b2"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Wed Dec 16 12:28:44 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:36:18 2009 -0800"
      },
      "message": "[sysctl] Fix breakage on systems with older glibc\n\nAs predicted during code review, the sysctl(2) changes made systems with\nold glibc nearly unusable.  About every command gives a:\n\n  warning: process `ls\u0027 used the deprecated sysctl system call with 1.4\n\nwarning in the log.\n\nI see this on a SUSE 10.0 system with glibc 2.3.5.\n\nDon\u0027t warn for this common case.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8aedf8a6ae98d5d4df3254b6afb7e4432d9d8600",
      "tree": "444d19b9172009e81a0ba9e7e5be3e0910bdd978",
      "parents": [
        "bac5e54c29f352d962a2447d22735316b347b9f1",
        "60ab271617cec607380099f3ed8e84916e48323b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:32:47 2009 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (52 commits)\n  perf record: Use per-task-per-cpu events for inherited events\n  perf record: Properly synchronize child creation\n  perf events: Allow per-task-per-cpu counters\n  perf diff: Percent calcs should use double values\n  perf diff: Change the default sort order to \"dso,symbol\"\n  perf diff: Use perf_session__fprintf_hists just like \u0027perf record\u0027\n  perf report: Fix cut\u0027n\u0027paste error recently introduced\n  perf session: Move perf report specific hits out of perf_session__fprintf_hists\n  perf tools: Move hist entries printing routines from perf report\n  perf report: Generalize perf_session__fprintf_hists()\n  perf symbols: Move symbol filtering to event__preprocess_sample()\n  perf symbols: Adopt the strlists for dso, comm\n  perf symbols: Make symbol_conf global\n  perf probe: Fix to show which probe point is not found\n  perf probe: Check symbols in symtab/kallsyms\n  perf probe: Check build-id of vmlinux\n  perf probe: Reject second attempt of adding same-name event\n  perf probe: Support event name for --add option\n  perf probe: Add glob matching support on --del\n  perf probe: Use strlist__for_each macros in probe-event.c\n  ...\n"
    },
    {
      "commit": "da184a8064efe2a78d8542877970f7c6bb62775a",
      "tree": "d10193bb583f60333e243fe46386cab31f591e0c",
      "parents": [
        "525995d77ca08dfc2ba6f8e606f93694271dbd66",
        "e36c54582c6f14adc9e10473e2aec2cc4f0acc03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 12:02:25 2009 -0800"
      },
      "message": "Merge branch \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  tracing: Fix return of trace_dump_stack()\n  ksym_tracer: Fix bad cast\n  tracing/power: Remove two exports\n  tracing: Change event-\u003eprofile_count to be int type\n  tracing: Simplify trace_option_write()\n  tracing: Remove useless trace option\n  tracing: Use seq file for trace_clock\n  tracing: Use seq file for trace_options\n  function-graph: Allow writing the same val to set_graph_function\n  ftrace: Call trace_parser_clear() properly\n  ftrace: Return EINVAL when writing invalid val to set_ftrace_filter\n  tracing: Move a printk out of ftrace_raw_reg_event_foo()\n  tracing: Pull up calls to trace_define_common_fields()\n  tracing: Extract duplicate ftrace_raw_init_event_foo()\n  ftrace.h: Use common pr_info fmt string\n  tracing: Add stack trace to irqsoff tracer\n  tracing: Add trace_dump_stack()\n  ring-buffer: Move resize integrity check under reader lock\n  ring-buffer: Use sync sched protection on ring buffer resizing\n  tracing: Fix wrong usage of strstrip in trace_ksyms\n"
    },
    {
      "commit": "74f3ae743427b87e43b5cb9f4257021ae8ad4267",
      "tree": "378975998960af61558304c97999f3bf62c8ba12",
      "parents": [
        "d8bef0bb219154e655fa139e28400d6ae9aa3727",
        "8d99513c1b76cfd0b2dcf061c5136cb1061e6b37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:47:24 2009 -0800"
      },
      "message": "Merge branch \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027module\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  modpost: fix segfault with short symbol names\n  module: handle ppc64 relocating kcrctabs when CONFIG_RELOCATABLE\u003dy\n  Kbuild: clear marker out of modpost\n  module: make MODULE_SYMBOL_PREFIX into a CONFIG option\n  ARM: unexport symbols used to implement floating point emulation\n  ARM: use unified discard definition in linker script\n  x86: don\u0027t export inline function\n  sparc64: don\u0027t export static inline pci_ functions\n"
    },
    {
      "commit": "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
      "tree": "e3bdfa4ec0d3f9a29a822810b8b9188c7d613cbd",
      "parents": [
        "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
        "2e16cfca6e17ae37ae21feca080a6f2eca9087dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (90 commits)\n  jffs2: Fix long-standing bug with symlink garbage collection.\n  mtd: OneNAND: Fix test of unsigned in onenand_otp_walk()\n  mtd: cfi_cmdset_0002, fix lock imbalance\n  Revert \"mtd: move mxcnd_remove to .exit.text\"\n  mtd: m25p80: add support for Macronix MX25L4005A\n  kmsg_dump: fix build for CONFIG_PRINTK\u003dn\n  mtd: nandsim: add support for 4KiB pages\n  mtd: mtdoops: refactor as a kmsg_dumper\n  mtd: mtdoops: make record size configurable\n  mtd: mtdoops: limit the maximum mtd partition size\n  mtd: mtdoops: keep track of used/unused pages in an array\n  mtd: mtdoops: several minor cleanups\n  core: Add kernel message dumper to call on oopses and panics\n  mtd: add ARM pismo support\n  mtd: pxa3xx_nand: Fix PIO data transfer\n  mtd: nand: fix multi-chip suspend problem\n  mtd: add support for switching old SST chips into QRY mode\n  mtd: fix M29W800D dev_id and uaddr\n  mtd: don\u0027t use PF_MEMALLOC\n  mtd: Add bad block table overrides to Davinci NAND driver\n  ...\n\nFixed up conflicts (mostly trivial) in\n\tdrivers/mtd/devices/m25p80.c\n\tdrivers/mtd/maps/pcmciamtd.c\n\tdrivers/mtd/nand/pxa3xx_nand.c\n\tkernel/printk.c\n"
    },
    {
      "commit": "738d2be4301007f054541c5c4bf7fb6a361c9b3a",
      "tree": "6d37c04fa3b35d5fe820ab2df1088ba596fefe38",
      "parents": [
        "88ec22d3edb72b261f8628226cd543589a6d5e1b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:42 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:59 2009 +0100"
      },
      "message": "sched: Simplify set_task_cpu()\n\nRearrange code a bit now that its a simpler function.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.269101883@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "88ec22d3edb72b261f8628226cd543589a6d5e1b",
      "tree": "ca547c82ab6adce0b9e29afb6ceddf50cd417d44",
      "parents": [
        "efbbd05a595343a413964ad85a2ad359b7b7efbd"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:41 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:58 2009 +0100"
      },
      "message": "sched: Remove the cfs_rq dependency from set_task_cpu()\n\nIn order to remove the cfs_rq dependency from set_task_cpu() we\nneed to ensure the task is cfs_rq invariant for all callsites.\n\nThe simple approach is to substract cfs_rq-\u003emin_vruntime from\nse-\u003evruntime on dequeue, and add cfs_rq-\u003emin_vruntime on\nenqueue.\n\nHowever, this has the downside of breaking FAIR_SLEEPERS since\nwe loose the old vruntime as we only maintain the relative\nposition.\n\nTo solve this, we observe that we only migrate runnable tasks,\nwe do this using deactivate_task(.sleep\u003d0) and\nactivate_task(.wakeup\u003d0), therefore we can restrain the\nmin_vruntime invariance to that state.\n\nThe only other case is wakeup balancing, since we want to\nmaintain the old vruntime we cannot make it relative on dequeue,\nbut since we don\u0027t migrate inactive tasks, we can do so right\nbefore we activate it again.\n\nThis is where we need the new pre-wakeup hook, we need to call\nthis while still holding the old rq-\u003elock. We could fold it into\n-\u003eselect_task_rq(), but since that has multiple callsites and\nwould obfuscate the locking requirements, that seems like a\nfudge.\n\nThis leaves the fork() case, simply make sure that -\u003etask_fork()\nleaves the -\u003evruntime in a relative state.\n\nThis covers all cases where set_task_cpu() gets called, and\nensures it sees a relative vruntime.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.191697025@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "efbbd05a595343a413964ad85a2ad359b7b7efbd",
      "tree": "c1bf0d86134187e127a00067b50b0684c2988860",
      "parents": [
        "881232b70b195768a71cd74ff4b4e8ab9502997b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:40 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:58 2009 +0100"
      },
      "message": "sched: Add pre and post wakeup hooks\n\nAs will be apparent in the next patch, we need a pre wakeup hook\nfor sched_fair task migration, hence rename the post wakeup hook\nand one pre wakeup.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.114746117@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "881232b70b195768a71cd74ff4b4e8ab9502997b",
      "tree": "aeafe0a28a7163af445e4f603ab1075c3608c375",
      "parents": [
        "5da9a0fb673a0ea0a093862f95f6b89b3390c31e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:39 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:57 2009 +0100"
      },
      "message": "sched: Move kthread_bind() back to kthread.c\n\nSince kthread_bind() lost its dependencies on sched.c, move it\nback where it came from.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170518.039524041@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5da9a0fb673a0ea0a093862f95f6b89b3390c31e",
      "tree": "fa4465d5ce050cdc42e63a2518ce2e1b58fa9c30",
      "parents": [
        "3802290628348674985d14914f9bfee7b9084548"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:38 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:57 2009 +0100"
      },
      "message": "sched: Fix select_task_rq() vs hotplug issues\n\nSince select_task_rq() is now responsible for guaranteeing\n-\u003ecpus_allowed and cpu_active_mask, we need to verify this.\n\nselect_task_rq_rt() can blindly return\nsmp_processor_id()/task_cpu() without checking the valid masks,\nselect_task_rq_fair() can do the same in the rare case that all\nSD_flags are disabled.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.961475466@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3802290628348674985d14914f9bfee7b9084548",
      "tree": "b6b513fa5651f570013f3eff86e843a9d52d1dcb",
      "parents": [
        "e2912009fb7b715728311b0d8fe327a1432b3f79"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:37 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:56 2009 +0100"
      },
      "message": "sched: Fix sched_exec() balancing\n\nSince we access -\u003ecpus_allowed without holding rq-\u003elock we need\na retry loop to validate the result, this comes for near free\nwhen we merge sched_migrate_task() into sched_exec() since that\nalready does the needed check.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.884743662@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e2912009fb7b715728311b0d8fe327a1432b3f79",
      "tree": "9918e2f9690d85b7d7f5550d09f0ae6cc3fa4e0f",
      "parents": [
        "06b83b5fbea273672822b6ee93e16781046553ec"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:36 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:56 2009 +0100"
      },
      "message": "sched: Ensure set_task_cpu() is never called on blocked tasks\n\nIn order to clean up the set_task_cpu() rq dependencies we need\nto ensure it is never called on blocked tasks because such usage\ndoes not pair with consistent rq-\u003elock usage.\n\nThis puts the migration burden on ttwu().\n\nFurthermore we need to close a race against changing\n-\u003ecpus_allowed, since select_task_rq() runs with only preemption\ndisabled.\n\nFor sched_fork() this is safe because the child isn\u0027t in the\ntasklist yet, for wakeup we fix this by synchronizing\nset_cpus_allowed_ptr() against TASK_WAKING, which leaves\nsched_exec to be a problem\n\nThis also closes a hole in (6ad4c1888 sched: Fix balance vs\nhotplug race) where -\u003eselect_task_rq() doesn\u0027t validate the\nresult against the sched_domain/root_domain.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.807938893@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "06b83b5fbea273672822b6ee93e16781046553ec",
      "tree": "cd287173f5aacdf69289fe62f397a957c9f678fe",
      "parents": [
        "e4f4288842ee12747e10c354d72be7d424c0b627"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:35 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:55 2009 +0100"
      },
      "message": "sched: Use TASK_WAKING for fork wakups\n\nFor later convenience use TASK_WAKING for fresh tasks.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.732561278@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4f4288842ee12747e10c354d72be7d424c0b627",
      "tree": "e9b066cc886e4b28db60b2626b682986f34a3bda",
      "parents": [
        "e6c8fba7771563b2f3dfb96a78f36ec17e15bdf0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:34 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:55 2009 +0100"
      },
      "message": "sched: Select_task_rq_fair() must honour SD_LOAD_BALANCE\n\nWe should skip !SD_LOAD_BALANCE domains.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.653578430@chello.nl\u003e\nCC: stable@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6c8fba7771563b2f3dfb96a78f36ec17e15bdf0",
      "tree": "232d6ea7b028d3a98ea5eaa9ceffb21aff19db35",
      "parents": [
        "9ee349ad6d326df3633d43f54202427295999c47"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 18:04:33 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:54 2009 +0100"
      },
      "message": "sched: Fix task_hot() test order\n\nMake sure not to access sched_fair fields before verifying it is\nindeed a sched_fair task.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCC: stable@kernel.org\nLKML-Reference: \u003c20091216170517.577998058@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ee349ad6d326df3633d43f54202427295999c47",
      "tree": "06f4795cb1b3f493b2421b65af0fd870875c8168",
      "parents": [
        "933b0618d8b2a59c7a0742e43836544e02f1e9bd"
      ],
      "author": {
        "name": "Xiaotian Feng",
        "email": "dfeng@redhat.com",
        "time": "Wed Dec 16 18:04:32 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 19:01:53 2009 +0100"
      },
      "message": "sched: Fix set_cpu_active() in cpu_down()\n\nSachin found cpu hotplug test failures on powerpc, which made\nthe kernel hang on his POWER box.\n\nThe problem is that we fail to re-activate a cpu when a\nhot-unplug fails. Fix this by moving the de-activation into\n_cpu_down after doing the initial checks.\n\nRemove the synchronize_sched() calls and rely on those implied\nby rebuilding the sched domains using the new mask.\n\nReported-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nSigned-off-by: Xiaotian Feng \u003cdfeng@redhat.com\u003e\nTested-by: Sachin Sant \u003csachinp@in.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091216170517.500272612@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee1156c11a1121e118b0a7f2dec240f0d421b1fd",
      "tree": "b8771cc5a9758af9d7410fc519227c036c222130",
      "parents": [
        "b9f8fcd55bbdb037e5332dbdb7b494f0b70861ac",
        "8bea8672edfca7ec5f661cafb218f1205863b343"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:33:49 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:33:49 2009 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into sched/urgent\n\nConflicts:\n\tkernel/sched_idletask.c\n\nMerge reason: resolve the conflicts, pick up latest changes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f4c4176f21533e22bcc292030da72bcfa105f5b8",
      "tree": "9e4376f5ff4dc3fb0f333faca94f219570df9af8",
      "parents": [
        "9b33827de63539c7c3314ddf890fb216e4acf3d8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 16 17:55:54 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 16 18:30:11 2009 +0100"
      },
      "message": "perf events: Allow per-task-per-cpu counters\n\nIn order to allow for per-task-per-cpu counters, useful for\nscalability when profiling task hierarchies, we allow installing\nevents with event-\u003ecpu !\u003d -1 in task contexts.\n\n__perf_event_sched_in() already skips events where -\u003ecpu\nmis-matches the current cpu, fix up __perf_install_in_context()\nand __perf_event_enable() to also respect this filter.\n\nThis does lead to vary hard to interpret enabled/running times\nfor such counters, but I don\u0027t see a simple solution for that.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20091216165904.831451147@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "06a7f711246b081afc21fff859f1003f1f2a0fbc",
      "tree": "aece49693ad751923ce71387201d3c3e6214e335",
      "parents": [
        "1f2c19f8c959c1d0ccd3e33b1f480593b66d95dd"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "kexec: premit reduction of the reserved memory size\n\nImplement shrinking the reserved memory for crash kernel, if it is more\nthan enough.\n\nFor example, if you have already reserved 128M, now you just want 100M,\nyou can do:\n\n# echo $((100*1024*1024)) \u003e /sys/kernel/kexec_crash_size\n\nNote, you can only do this before loading the crash kernel.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "417e315247ebc199d357855bb08d2a5264400565",
      "tree": "84383762d1abaebaa00928bbfc23851742d9cf9b",
      "parents": [
        "7be6d991bca63bbcdc5bc3b09789f367a3486537"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: reduce code size by using a pointer to iterate over array\n\nIt decreases code size by 16 bytes on my gcc 4.4.1 on Core 2:\n  text    data     bss     dec     hex filename\n  4314    2216       8    6538    198a kernel/pid.o-BEFORE\n  4298    2216       8    6522    197a kernel/pid.o-AFTER\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7be6d991bca63bbcdc5bc3b09789f367a3486537",
      "tree": "79168c345c424ce7b80bfba382c9dc469bdcc70a",
      "parents": [
        "698ba7b5a3a7be772922340fade365c675b8243f"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: tighten pidmap spinlock critical section by removing kfree()\n\nAvoid calling kfree() under pidmap spinlock, calling it afterwards.\n\nNormally kfree() is fast, but sometimes it can be slow, so avoid\ncalling it under the spinlock if we can do it.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1be53963b0519bd3681749a9bed8b83aeb005cca",
      "tree": "0bc6497a8039021f781f1c902f59e6f71f772793",
      "parents": [
        "ad09750b51150ca87531b8790a379214a974c167"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: check -\u003egroup_stop_count after tracehook_get_signal()\n\nMove the call to do_signal_stop() down, after tracehook call.  This makes\n-\u003egroup_stop_count condition visible to tracers before do_signal_stop()\nwill participate in this group-stop.\n\nCurrently the patch has no effect, tracehook_get_signal() always returns 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad09750b51150ca87531b8790a379214a974c167",
      "tree": "785520da252e18a058642c7bc95dda35100e4565",
      "parents": [
        "7486e5d9fc773cb67c29381567bed5236fc9573c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: kill force_sig_specific()\n\nKill force_sig_specific(), this trivial wrapper has no callers.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7486e5d9fc773cb67c29381567bed5236fc9573c",
      "tree": "848f10295391c27ca16c8c58812f5e7a81856280",
      "parents": [
        "dd34200adc01c5217ef09b55905b5c2312d65535"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: cosmetic, collect_signal: use SI_USER\n\nTrivial, s/0/SI_USER/ in collect_signal() for grep.\n\nThis is a bit confusing, we don\u0027t know the source of this signal.\nBut we don\u0027t care, and \"info-\u003esi_code \u003d 0\" is imho worse.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "dd34200adc01c5217ef09b55905b5c2312d65535"
}
