)]}'
{
  "log": [
    {
      "commit": "a706d4fc9e56d8e46393533e0cdca2d35fa5c7e5",
      "tree": "9fcffea752514702a78a8f6177d995964761559d",
      "parents": [
        "83b8450317a1441aef5d110cbc4102d53df9ec02",
        "c5905afb0ee6550b42c49213da1c22d67316c194"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 19:59:45 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Feb 28 19:59:47 2012 +0100"
      },
      "message": "Merge branch \u0027perf/jump-labels\u0027 into perf/core\n\nMerge reason: After much naming discussion, there seems to be consensus\n              now - queue it up for v3.4.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c5905afb0ee6550b42c49213da1c22d67316c194",
      "tree": "253fdb322e6e5b257ffda3b9b66bce90a473a6f7",
      "parents": [
        "1cfa60dc7d7c7cc774a44eee47ff135a644a1f31"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 08:31:31 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 24 10:05:59 2012 +0100"
      },
      "message": "static keys: Introduce \u0027struct static_key\u0027, static_key_true()/false() and static_key_slow_[inc|dec]()\n\nSo here\u0027s a boot tested patch on top of Jason\u0027s series that does\nall the cleanups I talked about and turns jump labels into a\nmore intuitive to use facility. It should also address the\nvarious misconceptions and confusions that surround jump labels.\n\nTypical usage scenarios:\n\n        #include \u003clinux/static_key.h\u003e\n\n        struct static_key key \u003d STATIC_KEY_INIT_TRUE;\n\n        if (static_key_false(\u0026key))\n                do unlikely code\n        else\n                do likely code\n\nOr:\n\n        if (static_key_true(\u0026key))\n                do likely code\n        else\n                do unlikely code\n\nThe static key is modified via:\n\n        static_key_slow_inc(\u0026key);\n        ...\n        static_key_slow_dec(\u0026key);\n\nThe \u0027slow\u0027 prefix makes it abundantly clear that this is an\nexpensive operation.\n\nI\u0027ve updated all in-kernel code to use this everywhere. Note\nthat I (intentionally) have not pushed through the rename\nblindly through to the lowest levels: the actual jump-label\npatching arch facility should be named like that, so we want to\ndecouple jump labels from the static-key facility a bit.\n\nOn non-jump-label enabled architectures static keys default to\nlikely()/unlikely() branches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jason Baron \u003cjbaron@redhat.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: a.p.zijlstra@chello.nl\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120222085809.GA26397@elte.hu\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a746e3cc984b0aa5b620dd07c1a433283b1835cf",
      "tree": "8e0db62a42101636e04097e28830420fa9906fc4",
      "parents": [
        "fadf0464b83f91ba021a358c0238a0810c0d2a0b"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Feb 21 15:02:57 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 07:59:40 2012 +0100"
      },
      "message": "jump label: Fix compiler warning\n\nWhile cross-compiling on sparc64, I found:\n\nkernel/jump_label.c: In function \u0027jump_label_update\u0027:\nkernel/jump_label.c:447:40: warning: cast from pointer to\ninteger of different size [-Wpointer-to-int-cast]\n\nFix by casting to \u0027unsigned long\u0027.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: rostedt@goodmis.org\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: a.p.zijlstra@chello.nl\nLink: http://lkml.kernel.org/r/08026cbc6df80619cae833ef1ebbbc43efab69ab.1329851692.git.jbaron@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fadf0464b83f91ba021a358c0238a0810c0d2a0b",
      "tree": "9c02e2959d590b3db212c10452fa45c26324485d",
      "parents": [
        "09bda4432a8a4d4db2b2b94697abc8d732a9ff73"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Feb 21 15:02:53 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 07:59:39 2012 +0100"
      },
      "message": "jump label: Add a WARN() if jump label key count goes negative\n\nThe count on a jump label key should never go negative. Add a\nWARN() to check for this condition.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nCc: rostedt@goodmis.org\nCc: mathieu.desnoyers@efficios.com\nCc: davem@davemloft.net\nCc: ddaney.cavm@gmail.com\nCc: a.p.zijlstra@chello.nl\nLink: http://lkml.kernel.org/r/3c68556121be4d1920417a3fe367da1ec38246b4.1329851692.git.jbaron@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5500fa51199aee770ce53718853732600543619e",
      "tree": "1c2ad241de8177670234cfed07acb30dba802b01",
      "parents": [
        "02aa3162edaa166a01d193f80ccde890be8b55da"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:54 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:30 2012 -0500"
      },
      "message": "ftrace, perf: Add filter support for function trace event\n\nAdding support to filter function trace event via perf\ninterface. It is now possible to use filter interface\nin the perf tool like:\n\n  perf record -e ftrace:function --filter\u003d\"(ip \u003d\u003d mm_*)\" ls\n\nThe filter syntax is restricted to the the \u0027ip\u0027 field only,\nand following operators are accepted \u0027\u003d\u003d\u0027 \u0027!\u003d\u0027 \u0027||\u0027, ending\nup with the filter strings like:\n\n  ip \u003d\u003d f1[, ]f2 ... || ip !\u003d f3[, ]f4 ...\n\nwith comma \u0027,\u0027 or space \u0027 \u0027 as a function separator. If the\nspace \u0027 \u0027 is used as a separator, the right side of the\nassignment needs to be enclosed in double quotes \u0027\"\u0027, e.g.:\n\n  perf record -e ftrace:function --filter \u0027(ip \u003d\u003d do_execve,sys_*,ext*)\u0027 ls\n  perf record -e ftrace:function --filter \u0027(ip \u003d\u003d \"do_execve,sys_*,ext*\")\u0027 ls\n  perf record -e ftrace:function --filter \u0027(ip \u003d\u003d \"do_execve sys_* ext*\")\u0027 ls\n\nThe \u0027\u003d\u003d\u0027 operator adds trace filter with same effect as would\nbe added via set_ftrace_filter file.\n\nThe \u0027!\u003d\u0027 operator adds trace filter with same effect as would\nbe added via set_ftrace_notrace file.\n\nThe right side of the \u0027!\u003d\u0027, \u0027\u003d\u003d\u0027 operators is list of functions\nor regexp. to be added to filter separated by space.\n\nThe \u0027||\u0027 operator is used for connecting multiple filter definitions\ntogether. It is possible to have more than one \u0027\u003d\u003d\u0027 and \u0027!\u003d\u0027\noperators within one filter string.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-8-git-send-email-jolsa@redhat.com\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "02aa3162edaa166a01d193f80ccde890be8b55da",
      "tree": "50f111c12472e5573b966d7fb076ba4b22c86669",
      "parents": [
        "ced39002f5ea736b716ae233fb68b26d59783912"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:53 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:29 2012 -0500"
      },
      "message": "ftrace: Allow to specify filter field type for ftrace events\n\nAdding FILTER_TRACE_FN event field type for function tracepoint\nevent, so it can be properly recognized within filtering code.\n\nCurrently all fields of ftrace subsystem events share the common\nfield type FILTER_OTHER. Since the function trace fields need\nspecial care within the filtering code we need to recognize it\nproperly, hence adding the FILTER_TRACE_FN event type.\n\nAdding filter parameter to the FTRACE_ENTRY macro, to specify the\nfilter field type for the event.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-7-git-send-email-jolsa@redhat.com\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ced39002f5ea736b716ae233fb68b26d59783912",
      "tree": "4942ffe3b9e26d5122a5febb885d0b541e3aea33",
      "parents": [
        "e59a0bff3ecf389951e3c9378ddfd00f6448bfaa"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:52 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:27 2012 -0500"
      },
      "message": "ftrace, perf: Add support to use function tracepoint in perf\n\nAdding perf registration support for the ftrace function event,\nso it is now possible to register it via perf interface.\n\nThe perf_event struct statically contains ftrace_ops as a handle\nfor function tracer. The function tracer is registered/unregistered\nin open/close actions.\n\nTo be efficient, we enable/disable ftrace_ops each time the traced\nprocess is scheduled in/out (via TRACE_REG_PERF_(ADD|DELL) handlers).\nThis way tracing is enabled only when the process is running.\nIntentionally using this way instead of the event\u0027s hw state\nPERF_HES_STOPPED, which would not disable the ftrace_ops.\n\nIt is now possible to use function trace within perf commands\nlike:\n\n  perf record -e ftrace:function ls\n  perf stat -e ftrace:function ls\n\nAllowed only for root.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-6-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e59a0bff3ecf389951e3c9378ddfd00f6448bfaa",
      "tree": "315214953499b428a6a26d08fe3b5038e4ec5e1e",
      "parents": [
        "489c75c3b333dfda4c8d2b7ad1b00e5da024bfa7"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:51 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:26 2012 -0500"
      },
      "message": "ftrace: Add FTRACE_ENTRY_REG macro to allow event registration\n\nAdding FTRACE_ENTRY_REG macro so particular ftrace entries\ncould specify registration function and thus become accesible\nvia perf.\n\nThis will be used in upcomming patch for function trace.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-5-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "489c75c3b333dfda4c8d2b7ad1b00e5da024bfa7",
      "tree": "beb0b36b48dfbbe389ea14e36be75b4837ad0cf1",
      "parents": [
        "ceec0b6fc7cd43b38a40c2d40223f9cd0616f0cd"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:50 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:25 2012 -0500"
      },
      "message": "ftrace, perf: Add add/del tracepoint perf registration actions\n\nAdding TRACE_REG_PERF_ADD and TRACE_REG_PERF_DEL to handle\nperf event schedule in/out actions.\n\nThe add action is invoked for when the perf event is scheduled in,\nwhile the del action is invoked when the event is scheduled out.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-4-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ceec0b6fc7cd43b38a40c2d40223f9cd0616f0cd",
      "tree": "31e7deb76a5827883251dc578300bdc35ef62538",
      "parents": [
        "e248491ac283b516958ca9ab62c8e74b6718bca8"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:49 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:24 2012 -0500"
      },
      "message": "ftrace, perf: Add open/close tracepoint perf registration actions\n\nAdding TRACE_REG_PERF_OPEN and TRACE_REG_PERF_CLOSE to differentiate\nregister/unregister from open/close actions.\n\nThe register/unregister actions are invoked for the first/last\ntracepoint user when opening/closing the event.\n\nThe open/close actions are invoked for each tracepoint user when\nopening/closing the event.\n\nLink: http://lkml.kernel.org/r/1329317514-8131-3-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e248491ac283b516958ca9ab62c8e74b6718bca8",
      "tree": "77e5a6589cf55ebeabe01a321d792e216162efe6",
      "parents": [
        "5b34926114e39e12005031269613d2b13194aeba"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Wed Feb 15 15:51:48 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:23 2012 -0500"
      },
      "message": "ftrace: Add enable/disable ftrace_ops control interface\n\nAdding a way to temporarily enable/disable ftrace_ops. The change\nfollows the same way as \u0027global\u0027 ftrace_ops are done.\n\nIntroducing 2 global ftrace_ops - control_ops and ftrace_control_list\nwhich take over all ftrace_ops registered with FTRACE_OPS_FL_CONTROL\nflag. In addition new per cpu flag called \u0027disabled\u0027 is also added to\nftrace_ops to provide the control information for each cpu.\n\nWhen ftrace_ops with FTRACE_OPS_FL_CONTROL is registered, it is\nset as disabled for all cpus.\n\nThe ftrace_control_list contains all the registered \u0027control\u0027 ftrace_ops.\nThe control_ops provides function which iterates ftrace_control_list\nand does the check for \u0027disabled\u0027 flag on current cpu.\n\nAdding 3 inline functions:\n  ftrace_function_local_disable/ftrace_function_local_enable\n  - enable/disable the ftrace_ops on current cpu\n  ftrace_function_local_disabled\n  - get disabled ftrace_ops::disabled value for current cpu\n\nLink: http://lkml.kernel.org/r/1329317514-8131-2-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "5b34926114e39e12005031269613d2b13194aeba",
      "tree": "40c0fd479d6e048ceec060d05e141de0a941b7b5",
      "parents": [
        "e404b321dbb2d6e438522b7dce9c1d0c6a8c5275"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Mon Feb 20 20:37:32 2012 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Feb 21 11:08:13 2012 -0500"
      },
      "message": "tracing: Don\u0027t use p-\u003elen field to determine output in __print_*() functions\n\nIf more than one __print_*() function is used in a tracepoint\n(__print_flags(), __print_symbols(), etc), then the temp seq buffer will\nnot be zero on entry. Using the temp seq buffer\u0027s length to know if\ndata has been printed or not in the current function is incorrect and\nmay produce incorrect results.\n\nCurrently, no in-tree tracepoint causes this bug, but new ones may\nbe created.\n\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "e404b321dbb2d6e438522b7dce9c1d0c6a8c5275",
      "tree": "1eff30273eb7089686e762ea2e1f025493c44c32",
      "parents": [
        "09bda4432a8a4d4db2b2b94697abc8d732a9ff73"
      ],
      "author": {
        "name": "Andrey Vagin",
        "email": "avagin@openvz.org",
        "time": "Sun Feb 19 14:16:07 2012 +0300"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 20 20:33:31 2012 -0500"
      },
      "message": "tracing: Don\u0027t print an extra separator of flags\n\nIf __print_flags() is used after another __print_*() function, the\ntemp seq_file buffer will not be empty on entry, and the delimiter will\nbe printed even though there\u0027s just one field. We get something like:\n\n\t|S\n\ninstead of just:\n\n\tS\n\nThis is because the length of the temp seq buffer is used to determine\nif the delimiter is printed or not. But this algorithm fails when\nthe seq buffer is not empty on entry, and the delimiter will be printed\nbecause it thinks that a previous field was already printed.\n\nLink: http://lkml.kernel.org/r/1329650167-480655-1-git-send-email-avagin@openvz.org\n\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "09bda4432a8a4d4db2b2b94697abc8d732a9ff73",
      "tree": "8449aac6af302967dcbabdfb315bf691491a4241",
      "parents": [
        "d1e169da9e20efc0762da6ec160dd7740d0103f5",
        "47b0edcb599ea6eb9ef16d3a08932a0e01485293"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 17 12:55:07 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 17 12:55:07 2012 +0100"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/core\n"
    },
    {
      "commit": "47b0edcb599ea6eb9ef16d3a08932a0e01485293",
      "tree": "c72965c718a4e50a845c1e0ec898fc2d86825104",
      "parents": [
        "95100358491abaa2e9a5483811370059bbca4645"
      ],
      "author": {
        "name": "Thomas Meyer",
        "email": "thomas@m3y3r.de",
        "time": "Tue Nov 29 22:08:00 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 13 13:48:11 2012 -0500"
      },
      "message": "tracing/trivial: Use kcalloc instead of kzalloc to allocate array\n\nThe advantage of kcalloc is, that will prevent integer overflows which could\nresult from the multiplication of number of elements and size and it is also\na bit nicer to read.\n\nThe semantic patch that makes this change is available\nin https://lkml.org/lkml/2011/11/25/107\n\nLink: http://lkml.kernel.org/r/1322600880.1534.347.camel@localhost.localdomain\n\nSigned-off-by: Thomas Meyer \u003cthomas@m3y3r.de\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "95100358491abaa2e9a5483811370059bbca4645",
      "tree": "4fc32c4bf2ef4416b4a914f5426f96ba58f29ec1",
      "parents": [
        "cdfb0d30e943f36c8a074a26c3d168a05bdbb372"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Nov 24 20:03:08 2011 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 13 13:46:05 2012 -0500"
      },
      "message": "printk/tracing: Add console output tracing\n\nAdd a printk.console trace point to record any printk\nmessages into the trace, regardless of the current\nconsole loglevel. This can help correlate (existing)\nprintk debugging with other tracing.\n\nLink: http://lkml.kernel.org/r/1322161388.5366.54.camel@jlt3.sipsolutions.net\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "1e42e83fde5537266c1d1e7fd8c010b3028d50fc",
      "tree": "6ca9af6a41021c2b1fb423bf85b1b99aa79e2e81",
      "parents": [
        "76027ea863fc02698da536b4970784eed3caa635"
      ],
      "author": {
        "name": "Geunsik Lim",
        "email": "geunsik.lim@samsung.com",
        "time": "Wed Feb 08 19:05:36 2012 +0900"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Feb 13 09:14:47 2012 -0500"
      },
      "message": "ftrace: sched_switch plugin is deprecated\n\nActually, sched_switch function tracer is merged into wakeup/wakeup_rt\nUpdate \u0027mini-HOWTO\u0027 for ftrace(Kernel function tracer).\nIf we want to trace \"sched:sched_switch\" to trace sched_switch func,\nWe may utilize event option.(e.g: trace-cmd list -e | grep sched)\nThis patch is based on Linux-3.3.rc2-SMP-PREEMPT\n\nLink: http://lkml.kernel.org/r/1328695537-15081-1-git-send-email-geunsik.lim@gmail.com\n\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Geunsik Lim \u003cgeunsik.lim@samsung.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "86f5e6a7b192721995ece919985ac75222402351",
      "tree": "eaa50c5e7f1603d7f343dad06706ccfcebd57e76",
      "parents": [
        "5f329089431aac08bf759fa2bcb34077a6aa1f4e"
      ],
      "author": {
        "name": "Fernando Luis Vázquez Cao",
        "email": "fernando@oss.ntt.co.jp",
        "time": "Thu Feb 09 17:42:22 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Feb 11 15:11:33 2012 +0100"
      },
      "message": "watchdog: Fix code/comments mismatches\n\nReflect the change in the soft and hard lockup thresholds and\ntheir relation to the frequency of the hrtimer and NMI events in\nthe code comments. While at it, remove references to files that\ndo not exist anymore.\n\nSigned-off-by: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nLink: http://lkml.kernel.org/r/1328827342-6253-3-git-send-email-dzickus@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5ddf146f70a44ed4133dea4d377b172605a1cfa5",
      "tree": "058b6f58b5ab756f9fe798983e7c7bbf75450509",
      "parents": [
        "781ba9d2ed9df07dbb413fb5ee80ef7d353841c9",
        "a4a03fc7ef89020baca4f19174e6a43767c6d78a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 06 19:10:52 2012 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 06 19:11:02 2012 -0200"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nSo that we can get the perf bench exec stack fixes and then apply the\nremaining fix for the files added after what is in perf/urgent.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "f069686e4bdc60a637d210ea3eea25fcdb82df88",
      "tree": "5a8f9fcafb2edaaf785c0b7f22d176b4cc87ea02",
      "parents": [
        "ac483c446b67870444c9eeaf8325d3d2af9b91bc"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Jan 25 20:18:55 2012 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Feb 03 09:48:19 2012 -0500"
      },
      "message": "tracing/softirq: Move __raise_softirq_irqoff() out of header\n\nThe __raise_softirq_irqoff() contains a tracepoint. As tracepoints in headers\ncan cause issues, and not to mention, bloats the kernel when they are\nin a static inline, it is best to move the function that contains the\ntracepoint out of the header and into softirq.c.\n\nLink: http://lkml.kernel.org/r/20120118120711.GB14863@elte.hu\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ac483c446b67870444c9eeaf8325d3d2af9b91bc",
      "tree": "e2765af4acf86ce986856b2963036138ae077d58",
      "parents": [
        "623ec991ce0e8cd5791bad656c162fa837635907"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Mon Jan 02 10:04:14 2012 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Feb 03 09:48:18 2012 -0500"
      },
      "message": "ftrace: Change filter/notrace set functions to return exit code\n\nCurrently the ftrace_set_filter and ftrace_set_notrace functions\ndo not return any return code. So there\u0027s no way for ftrace_ops\nuser to tell wether the filter was correctly applied.\n\nThe set_ftrace_filter interface returns error in case the filter\ndid not match:\n\n  # echo krava \u003e set_ftrace_filter\n  bash: echo: write error: Invalid argument\n\nChanging both ftrace_set_filter and ftrace_set_notrace functions\nto return zero if the filter was applied correctly or -E* values\nin case of error.\n\nLink: http://lkml.kernel.org/r/1325495060-6402-2-git-send-email-jolsa@redhat.com\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8cdb878dcb359fd1137e9abdee9322f5e9bcfdf8",
      "tree": "146afc01f3c1d7cbc944328484d077032bc53bfd",
      "parents": [
        "24b36da33c64368775f4ef9386d44dce1d2bc8cf"
      ],
      "author": {
        "name": "Christopher Yeoh",
        "email": "cyeoh@au1.ibm.com",
        "time": "Thu Feb 02 11:34:09 2012 +1030"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 02 12:55:17 2012 -0800"
      },
      "message": "Fix race in process_vm_rw_core\n\nThis fixes the race in process_vm_core found by Oleg (see\n\n  http://article.gmane.org/gmane.linux.kernel/1235667/\n\nfor details).\n\nThis has been updated since I last sent it as the creation of the new\nmm_access() function did almost exactly the same thing as parts of the\nprevious version of this patch did.\n\nIn order to use mm_access() even when /proc isn\u0027t enabled, we move it to\nkernel/fork.c where other related process mm access functions already\nare.\n\nSigned-off-by: Chris Yeoh \u003cyeohc@au1.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f2fde927243bde5fd106da692efef34be12f81c",
      "tree": "28e69ca8fa227b1ba53e3bf4ddd42340499e7fe7",
      "parents": [
        "bd3ce7d57c380af110c86d19e256115d0e7053ca",
        "b0f4c4b32c8e3aa0d44fc4dd6c40a9a9a8d66b63",
        "45179fec946dd554f74e950d2278dabd5ad23fd3",
        "cb297a3e433dbdcf7ad81e0564e7b804c941ff0d",
        "e6d36a653becc7bbc643c399a77882e02bf552cb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 02 11:11:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 02 11:11:13 2012 -0800"
      },
      "message": "Merge branches \u0027core-urgent-for-linus\u0027, \u0027perf-urgent-for-linus\u0027, \u0027sched-urgent-for-linus\u0027 and \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  bugs, x86: Fix printk levels for panic, softlockups and stack dumps\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf top: Fix number of samples displayed\n  perf tools: Fix strlen() bug in perf_event__synthesize_event_type()\n  perf tools: Fix broken build by defining _GNU_SOURCE in Makefile\n  x86/dumpstack: Remove unneeded check in dump_trace()\n  perf: Fix broken interrupt rate throttling\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/rt: Fix task stack corruption under __ARCH_WANT_INTERRUPTS_ON_CTXSW\n  sched: Fix ancient race in do_exit()\n  sched/nohz: Fix nohz cpu idle load balancing state with cpu hotplug\n  sched/s390: Fix compile error in sched/core.c\n  sched: Fix rq-\u003enr_uninterruptible update race\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/reboot: Remove VersaLogic Menlow reboot quirk\n  x86/reboot: Skip DMI checks if reboot set by user\n  x86: Properly parenthesize cmpxchg() macro arguments\n"
    },
    {
      "commit": "bb1693f89ae7f0b30c90d9b26a4f827faed1144a",
      "tree": "e02fc59d76d79493bffa190e492775baa134bff6",
      "parents": [
        "efb3040d481a1594592b1defb4526c406c7a4751",
        "45179fec946dd554f74e950d2278dabd5ad23fd3"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 31 13:02:35 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 31 13:02:37 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nWe cherry-picked 3 commits into perf/urgent, merge them back to allow\nconflict-free work on those files.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "181e9bdef37bfcaa41f3ab6c948a2a0d60a268b5",
      "tree": "66e69f83b63e8517a47e0eb0e7ae730d8a9a109b",
      "parents": [
        "0a9626575400879d1d5e6bc8768188b938d7c501"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:35:52 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Jan 29 20:35:52 2012 +0100"
      },
      "message": "PM / Hibernate: Fix s2disk regression related to freezing workqueues\n\nCommit 2aede851ddf08666f68ffc17be446420e9d2a056\n\n  PM / Hibernate: Freeze kernel threads after preallocating memory\n\nintroduced a mechanism by which kernel threads were frozen after\nthe preallocation of hibernate image memory to avoid problems with\nfrozen kernel threads not responding to memory freeing requests.\nHowever, it overlooked the s2disk code path in which the\nSNAPSHOT_CREATE_IMAGE ioctl was run directly after SNAPSHOT_FREE,\nwhich caused freeze_workqueues_begin() to BUG(), because it saw\nthat worqueues had been already frozen.\n\nAlthough in principle this issue might be addressed by removing\nthe relevant BUG_ON() from freeze_workqueues_begin(), that would\nreintroduce the very problem that commit 2aede851ddf08666f68ffc17be4\nattempted to avoid into that particular code path.  For this reason,\nto fix the issue at hand, introduce thaw_kernel_threads() and make\nthe SNAPSHOT_FREE ioctl execute it.\n\nSpecial thanks to Srivatsa S. Bhat for detailed analysis of the\nproblem.\n\nReported-and-tested-by: Jiri Slaby \u003cjslaby@suse.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "cb297a3e433dbdcf7ad81e0564e7b804c941ff0d",
      "tree": "1b6dde74b50fa074e7eec8bd6ef5adacff9b6ce1",
      "parents": [
        "b5740f4b2cb3503b436925eb2242bc3d75cd3dfe"
      ],
      "author": {
        "name": "Chanho Min",
        "email": "chanho0207@gmail.com",
        "time": "Thu Jan 05 20:00:19 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:49:41 2012 +0100"
      },
      "message": "sched/rt: Fix task stack corruption under __ARCH_WANT_INTERRUPTS_ON_CTXSW\n\nThis issue happens under the following conditions:\n\n 1. preemption is off\n 2. __ARCH_WANT_INTERRUPTS_ON_CTXSW is defined\n 3. RT scheduling class\n 4. SMP system\n\nSequence is as follows:\n\n 1.suppose current task is A. start schedule()\n 2.task A is enqueued pushable task at the entry of schedule()\n   __schedule\n    prev \u003d rq-\u003ecurr;\n    ...\n    put_prev_task\n     put_prev_task_rt\n      enqueue_pushable_task\n 4.pick the task B as next task.\n   next \u003d pick_next_task(rq);\n 3.rq-\u003ecurr set to task B and context_switch is started.\n   rq-\u003ecurr \u003d next;\n 4.At the entry of context_swtich, release this cpu\u0027s rq-\u003elock.\n   context_switch\n    prepare_task_switch\n     prepare_lock_switch\n      raw_spin_unlock_irq(\u0026rq-\u003elock);\n 5.Shortly after rq-\u003elock is released, interrupt is occurred and start IRQ context\n 6.try_to_wake_up() which called by ISR acquires rq-\u003elock\n    try_to_wake_up\n     ttwu_remote\n      rq \u003d __task_rq_lock(p)\n      ttwu_do_wakeup(rq, p, wake_flags);\n        task_woken_rt\n 7.push_rt_task picks the task A which is enqueued before.\n   task_woken_rt\n    push_rt_tasks(rq)\n     next_task \u003d pick_next_pushable_task(rq)\n 8.At find_lock_lowest_rq(), If double_lock_balance() returns 0,\n   lowest_rq can be the remote rq.\n  (But,If preemption is on, double_lock_balance always return 1 and it\n   does\u0027t happen.)\n   push_rt_task\n    find_lock_lowest_rq\n     if (double_lock_balance(rq, lowest_rq))..\n 9.find_lock_lowest_rq return the available rq. task A is migrated to\n   the remote cpu/rq.\n   push_rt_task\n    ...\n    deactivate_task(rq, next_task, 0);\n    set_task_cpu(next_task, lowest_rq-\u003ecpu);\n    activate_task(lowest_rq, next_task, 0);\n 10. But, task A is on irq context at this cpu.\n     So, task A is scheduled by two cpus at the same time until restore from IRQ.\n     Task A\u0027s stack is corrupted.\n\nTo fix it, don\u0027t migrate an RT task if it\u0027s still running.\n\nSigned-off-by: Chanho Min \u003cchanho.min@lge.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLink: http://lkml.kernel.org/r/CAOAMb1BHA\u003d5fm7KTewYyke6u-8DP0iUuJMpgQw54vNeXFsGpoQ@mail.gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44a683971119bafb5bc30778f92ee773680ebb6f",
      "tree": "58648459f29d45c447bd2352e81844d4d9aa3a15",
      "parents": [
        "801493c2e249a7314e9e8e54ad60d613d0a86f14",
        "08aa0d1f376e9b966568316bd2019b3c1274d885"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:07:57 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:08:09 2012 +0100"
      },
      "message": "Merge branch \u0027perf/fast\u0027 into perf/core\n\nMerge reason: Lets ready it for v3.4\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e050e3f0a71bf7dc2c148b35caff0234decc8198",
      "tree": "df3069475c20d0ab238735a7a1837db9ae080610",
      "parents": [
        "74ea15d909b31158f9b63190a95b52bc05586d4b"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Thu Jan 26 17:03:19 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:06:39 2012 +0100"
      },
      "message": "perf: Fix broken interrupt rate throttling\n\nThis patch fixes the sampling interrupt throttling mechanism.\n\nIt was broken in v3.2. Events were not being unthrottled. The\nunthrottling mechanism required that events be checked at each\ntimer tick.\n\nThis patch solves this problem and also separates:\n\n  - unthrottling\n  - multiplexing\n  - frequency-mode period adjustments\n\nNot all of them need to be executed at each timer tick.\n\nThis third version of the patch is based on my original patch +\nPeterZ proposal (https://lkml.org/lkml/2012/1/7/87).\n\nAt each timer tick, for each context:\n\n  - if the current CPU has throttled events, we unthrottle events\n\n  - if context has frequency-based events, we adjust sampling periods\n\n  - if we have reached the jiffies interval, we multiplex (rotate)\n\nWe decoupled rotation (multiplexing) from frequency-mode sampling\nperiod adjustments.  They should not necessarily happen at the same\nrate. Multiplexing is subject to jiffies_interval (currently at 1\nbut could be higher once the tunable is exposed via sysfs).\n\nWe have grouped frequency-mode adjustment and unthrottling into the\nsame routine to minimize code duplication. When throttled while in\nfrequency mode, we scan the events only once.\n\nWe have fixed the threshold enforcement code in __perf_event_overflow().\nThere was a bug whereby it would allow more than the authorized rate\nbecause an increment of hwc-\u003einterrupts was not executed at the right\nplace.\n\nThe patch was tested with low sampling limit (2000) and fixed periods,\nfrequency mode, overcommitted PMU.\n\nOn a 2.1GHz AMD CPU:\n\n $ cat /proc/sys/kernel/perf_event_max_sample_rate\n 2000\n\nWe set a rate of 3000 samples/sec (2.1GHz/3000 \u003d 700000):\n\n $ perf record -e cycles,cycles -c 700000  noploop 10\n $ perf report -D | tail -21\n\n Aggregated stats:\n           TOTAL events:      80086\n            MMAP events:         88\n            COMM events:          2\n            EXIT events:          4\n        THROTTLE events:      19996\n      UNTHROTTLE events:      19996\n          SAMPLE events:      40000\n\n cycles stats:\n           TOTAL events:      40006\n            MMAP events:          5\n            COMM events:          1\n            EXIT events:          4\n        THROTTLE events:       9998\n      UNTHROTTLE events:       9998\n          SAMPLE events:      20000\n\n cycles stats:\n           TOTAL events:      39996\n        THROTTLE events:       9998\n      UNTHROTTLE events:       9998\n          SAMPLE events:      20000\n\nFor 10s, the cap is 2x2000x10 \u003d 40000 samples.\nWe get exactly that: 20000 samples/event.\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nCc: \u003cstable@kernel.org\u003e # v3.2+\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20120126160319.GA5655@quad\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "801493c2e249a7314e9e8e54ad60d613d0a86f14",
      "tree": "c8f77ce14e76abec848366812a0aad0fad4f539c",
      "parents": [
        "939ddcfa60dabfaed390987bf0103a6654c0fe30",
        "74ea15d909b31158f9b63190a95b52bc05586d4b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:01:41 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:01:43 2012 +0100"
      },
      "message": "Merge branch \u0027linus\u0027 into perf/core\n\nMerge reason: pick up fixes that are upstream, we need them\n              because we\u0027ll apply dependent patches.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5740f4b2cb3503b436925eb2242bc3d75cd3dfe",
      "tree": "c7e00c7be916f5fdc01109257752fc408b2b2d97",
      "parents": [
        "71325960d16cd68ea0e22a8da15b2495b0f363f7"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jan 17 17:40:31 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 11:55:36 2012 +0100"
      },
      "message": "sched: Fix ancient race in do_exit()\n\ntry_to_wake_up() has a problem which may change status from TASK_DEAD to\nTASK_RUNNING in race condition with SMI or guest environment of virtual\nmachine. As a result, exited task is scheduled() again and panic occurs.\n\nHere is the sequence how it occurs:\n\n ----------------------------------+-----------------------------\n                                   |\n            CPU A                  |             CPU B\n ----------------------------------+-----------------------------\n\nTASK A calls exit()....\n\ndo_exit()\n\n  exit_mm()\n    down_read(mm-\u003emmap_sem);\n\n    rwsem_down_failed_common()\n\n      set TASK_UNINTERRUPTIBLE\n      set waiter.task \u003c\u003d task A\n      list_add to sem-\u003ewait_list\n           :\n      raw_spin_unlock_irq()\n      (I/O interruption occured)\n\n                                      __rwsem_do_wake(mmap_sem)\n\n                                        list_del(\u0026waiter-\u003elist);\n                                        waiter-\u003etask \u003d NULL\n                                        wake_up_process(task A)\n                                          try_to_wake_up()\n                                             (task is still\n                                               TASK_UNINTERRUPTIBLE)\n                                              p-\u003eon_rq is still 1.)\n\n                                              ttwu_do_wakeup()\n                                                 (*A)\n                                                   :\n     (I/O interruption handler finished)\n\n      if (!waiter.task)\n          schedule() is not called\n          due to waiter.task is NULL.\n\n      tsk-\u003estate \u003d TASK_RUNNING\n\n          :\n                                              check_preempt_curr();\n                                                  :\n  task-\u003estate \u003d TASK_DEAD\n                                              (*B)\n                                        \u003c---    set TASK_RUNNING (*C)\n\n     schedule()\n     (exit task is running again)\n     BUG_ON() is called!\n --------------------------------------------------------\n\nThe execution time between (*A) and (*B) is usually very short,\nbecause the interruption is disabled, and setting TASK_RUNNING at (*C)\nmust be executed before setting TASK_DEAD.\n\nHOWEVER, if SMI is interrupted between (*A) and (*B),\n(*C) is able to execute AFTER setting TASK_DEAD!\nThen, exited task is scheduled again, and BUG_ON() is called....\n\nIf the system works on guest system of virtual machine, the time\nbetween (*A) and (*B) may be also long due to scheduling of hypervisor,\nand same phenomenon can occur.\n\nBy this patch, do_exit() waits for releasing task-\u003epi_lock which is used\nin try_to_wake_up(). It guarantees the task becomes TASK_DEAD after\nwaking up.\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/20120117174031.3118.E1E9C6FF@jp.fujitsu.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b57cea5e332841ed3e11586c88d3940ea4eacbe7",
      "tree": "cd12fd5c2fe293c98a09e8526f2dc5966059a149",
      "parents": [
        "2437dcbf555bff04e4ee8b8dba4587f946c1cd3d",
        "46cd6a7f680d14f6f80ede9f04aeb70fa83bd266"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 26 12:45:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 26 12:45:57 2012 -0800"
      },
      "message": "Merge branch \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  perf: Call perf_cgroup_event_time() directly\n  perf: Don\u0027t call release_callchain_buffers() if allocation fails\n"
    },
    {
      "commit": "2437dcbf555bff04e4ee8b8dba4587f946c1cd3d",
      "tree": "f04f3ed779c25caa933744d2d5965ca4e297f05d",
      "parents": [
        "0dbfe8ddaaab9fe5bc8672c064d3ede6cd66201a",
        "b64b223aed5f8aeeb6c046f1b050a8f976b87de0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 26 12:45:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 26 12:45:41 2012 -0800"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  rcu: Add missing __cpuinit annotation in rcutorture code\n  sched: Add \"const\" to is_idle_task() parameter\n  rcu: Make rcutorture bool parameters really bool (core code)\n  memblock: Fix alloc failure due to dumb underflow protection in memblock_find_in_range_node()\n"
    },
    {
      "commit": "b0f4c4b32c8e3aa0d44fc4dd6c40a9a9a8d66b63",
      "tree": "7387d97d5b69c587ae67a46de025468d474e0eb4",
      "parents": [
        "b64b223aed5f8aeeb6c046f1b050a8f976b87de0"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Thu Jan 26 08:55:34 2012 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 21:28:45 2012 +0100"
      },
      "message": "bugs, x86: Fix printk levels for panic, softlockups and stack dumps\n\nrsyslog will display KERN_EMERG messages on a connected\nterminal.  However, these messages are useless/undecipherable\nfor a general user.\n\nFor example, after a softlockup we get:\n\n Message from syslogd@intel-s3e37-04 at Jan 25 14:18:06 ...\n kernel:Stack:\n\n Message from syslogd@intel-s3e37-04 at Jan 25 14:18:06 ...\n kernel:Call Trace:\n\n Message from syslogd@intel-s3e37-04 at Jan 25 14:18:06 ...\n kernel:Code: ff ff a8 08 75 25 31 d2 48 8d 86 38 e0 ff ff 48 89\n d1 0f 01 c8 0f ae f0 48 8b 86 38 e0 ff ff a8 08 75 08 b1 01 4c 89 e0 0f 01 c9 \u003ce8\u003e ea 69 dd ff 4c 29 e8 48 89 c7 e8 0f bc da ff 49 89 c4 49 89\n\nThis happens because the printk levels for these messages are\nincorrect. Only an informational message should be displayed on\na terminal.\n\nI modified the printk levels for various messages in the kernel\nand tested the output by using the drivers/misc/lkdtm.c kernel\nmodules (ie, softlockups, panics, hard lockups, etc.) and\nconfirmed that the console output was still the same and that\nthe output to the terminals was correct.\n\nFor example, in the case of a softlockup we now see the much\nmore informative:\n\n Message from syslogd@intel-s3e37-04 at Jan 25 10:18:06 ...\n BUG: soft lockup - CPU4 stuck for 60s!\n\ninstead of the above confusing messages.\n\nAFAICT, the messages no longer have to be KERN_EMERG.  In the\nmost important case of a panic we set console_verbose().  As for\nthe other less severe cases the correct data is output to the\nconsole and /var/log/messages.\n\nSuccessfully tested by me using the drivers/misc/lkdtm.c module.\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nCc: dzickus@redhat.com\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nLink: http://lkml.kernel.org/r/1327586134-11926-1-git-send-email-prarit@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "71325960d16cd68ea0e22a8da15b2495b0f363f7",
      "tree": "38be96d9232b302780476899f8536e690c693ffb",
      "parents": [
        "db7e527da41560f597ccdc4417cefa6b7657c0c0"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Jan 19 18:28:57 2012 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:13 2012 +0100"
      },
      "message": "sched/nohz: Fix nohz cpu idle load balancing state with cpu hotplug\n\nWith the recent nohz scheduler changes, rq\u0027s nohz flag\n\u0027NOHZ_TICK_STOPPED\u0027 and its associated state doesn\u0027t get cleared\nimmediately after the cpu exits idle. This gets cleared as part\nof the next tick seen on that cpu.\n\nFor the cpu offline support, we need to clear this state\nmanually. Fix it by registering a cpu notifier, which clears the\nnohz idle load balance state for this rq explicitly during the\nCPU_DYING notification.\n\nThere won\u0027t be any nohz updates for that cpu, after the\nCPU_DYING notification. But lets be extra paranoid and skip\nupdating the nohz state in the select_nohz_load_balancer() if\nthe cpu is not in active state anymore.\n\nReported-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nReviewed-and-tested-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nTested-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1327026538.16150.40.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "db7e527da41560f597ccdc4417cefa6b7657c0c0",
      "tree": "f5aff59ae2c16cf4fe25f2bfa2bf76048e10fac3",
      "parents": [
        "4ca9b72b71f10147bd21969c1805f5b2c4ca7b7b"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Wed Jan 11 08:58:16 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:11 2012 +0100"
      },
      "message": "sched/s390: Fix compile error in sched/core.c\n\nCommit 029632fbb7b7c9d85063cc9eb470de6c54873df3 (\"sched: Make\nseparate sched*.c translation units\") removed the include of\nasm/mutex.h from sched.c.\n\nThis breaks the combination of:\n\n CONFIG_MUTEX_SPIN_ON_OWNER\u003dyes\n CONFIG_HAVE_ARCH_MUTEX_CPU_RELAX\u003dyes\n\nlike s390 without mutex debugging:\n\n  CC      kernel/sched/core.o\n  kernel/sched/core.c: In function ‘mutex_spin_on_owner’:\n  kernel/sched/core.c:3287: error: implicit declaration of function ‘arch_mutex_cpu_relax’\n\nLets re-add the include to kernel/sched/core.c\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1326268696-30904-1-git-send-email-borntraeger@de.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ca9b72b71f10147bd21969c1805f5b2c4ca7b7b",
      "tree": "05d6072a28029ffca57ba6c7d30036698348b59a",
      "parents": [
        "87f71ae2dd7471c1b4c94100be1f218e91dc64c3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jan 25 11:50:51 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:09 2012 +0100"
      },
      "message": "sched: Fix rq-\u003enr_uninterruptible update race\n\nKOSAKI Motohiro noticed the following race:\n\n \u003e CPU0                    CPU1\n \u003e --------------------------------------------------------\n \u003e deactivate_task()\n \u003e                         task-\u003estate \u003d TASK_UNINTERRUPTIBLE;\n \u003e activate_task()\n \u003e    rq-\u003enr_uninterruptible--;\n \u003e\n \u003e                         schedule()\n \u003e                           deactivate_task()\n \u003e                             rq-\u003enr_uninterruptible++;\n \u003e\n\nKosaki-San\u0027s scenario is possible when CPU0 runs\n__sched_setscheduler() against CPU1\u0027s current @task.\n\n__sched_setscheduler() does a dequeue/enqueue in order to move\nthe task to its new queue (position) to reflect the newly provided\nscheduling parameters. However it should be completely invariant to\nnr_uninterruptible accounting, sched_setscheduler() doesn\u0027t affect\nreadyness to run, merely policy on when to run.\n\nSo convert the inappropriate activate/deactivate_task usage to\nenqueue/dequeue_task, which avoids the nr_uninterruptible accounting.\n\nAlso convert the two other sites: __migrate_task() and\nnormalize_task() that still use activate/deactivate_task. These sites\naren\u0027t really a problem since __migrate_task() will only be called on\nnon-running task (and therefore are immume to the described problem)\nand normalize_task() isn\u0027t ever used on regular systems.\n\nAlso remove the comments from activate/deactivate_task since they\u0027re\nmisleading at best.\n\nReported-by: KOSAKI Motohiro \u003ckosaki.motohiro@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1327486224.2614.45.camel@laptop\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96070c83b295b31912ad92d3ffb66baec2b86d50",
      "tree": "9ee346398552b40df1a7c7a80cb366bfd6a07181",
      "parents": [
        "87f71ae2dd7471c1b4c94100be1f218e91dc64c3",
        "163566f60bfe6a8176650155e2d98649b0dfabf8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 11:09:19 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 11:09:19 2012 +0100"
      },
      "message": "Merge branch \u0027sigtrace\u0027 of git://github.com/utrace/linux into perf/core\n"
    },
    {
      "commit": "701b259f446be2f3625fb852bceb93afe76e206d",
      "tree": "93f15bcd00bd59c38b4e59fed9af7ddf6b06c8b3",
      "parents": [
        "d2346963bfcbb9a8ee783ca3c3b3bdd7448ec9d5",
        "efc3dbc37412c027e363736b4f4c74ee5e8ecffc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 24 15:51:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 24 15:51:40 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nDavem says:\n\n1) Fix JIT code generation on x86-64 for divide by zero, from Eric Dumazet.\n\n2) tg3 header length computation correction from Eric Dumazet.\n\n3) More build and reference counting fixes for socket memory cgroup\n   code from Glauber Costa.\n\n4) module.h snuck back into a core header after all the hard work we\n   did to remove that, from Paul Gortmaker and Jesper Dangaard Brouer.\n\n5) Fix PHY naming regression and add some new PCI IDs in stmmac, from\n   Alessandro Rubini.\n\n6) Netlink message generation fix in new team driver, should only advertise\n   the entries that changed during events, from Jiri Pirko.\n\n7) SRIOV VF registration and unregistration fixes, and also add a\n   missing PCI ID, from Roopa Prabhu.\n\n8) Fix infinite loop in tx queue flush code of brcmsmac, from Stanislaw Gruszka.\n\n9) ftgmac100/ftmac100 build fix, missing interrupt.h include.\n\n10) Memory leak fix in net/hyperv do_set_mutlicast() handling, from Wei Yongjun.\n\n11) Off by one fix in netem packet scheduler, from Vijay Subramanian.\n\n12) TCP loss detection fix from Yuchung Cheng.\n\n13) TCP reset packet MD5 calculation uses wrong address, fix from Shawn Lu.\n\n14) skge carrier assertion and DMA mapping fixes from Stephen Hemminger.\n\n15) Congestion recovery undo performed at the wrong spot in BIC and CUBIC\n    congestion control modules, fix from Neal Cardwell.\n\n16) Ethtool ETHTOOL_GSSET_INFO is unnecessarily restrictive, from Michał Mirosław.\n\n17) Fix triggerable race in ipv6 sysctl handling, from Francesco Ruggeri.\n\n18) Statistics bug fixes in mlx4 from Eugenia Emantayev.\n\n19) rds locking bug fix during info dumps, from your\u0027s truly.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (67 commits)\n  rds: Make rds_sock_lock BH rather than IRQ safe.\n  netprio_cgroup.h: dont include module.h from other includes\n  net: flow_dissector.c missing include linux/export.h\n  team: send only changed options/ports via netlink\n  net/hyperv: fix possible memory leak in do_set_multicast()\n  drivers/net: dsa/mv88e6xxx.c files need linux/module.h\n  stmmac: added PCI identifiers\n  llc: Fix race condition in llc_ui_recvmsg\n  stmmac: fix phy naming inconsistency\n  dsa: Add reporting of silicon revision for Marvell 88E6123/88E6161/88E6165 switches.\n  tg3: fix ipv6 header length computation\n  skge: add byte queue limit support\n  mv643xx_eth: Add Rx Discard and Rx Overrun statistics\n  bnx2x: fix compilation error with SOE in fw_dump\n  bnx2x: handle CHIP_REVISION during init_one\n  bnx2x: allow user to change ring size in ISCSI SD mode\n  bnx2x: fix Big-Endianess in ethtool -t\n  bnx2x: fixed ethtool statistics for MF modes\n  bnx2x: credit-leakage fixup on vlan_mac_del_all\n  macvlan: fix a possible use after free\n  ...\n"
    },
    {
      "commit": "ac1e3d4f5c1097422c6e72aeae322033e9a8c803",
      "tree": "adcebdad5f515a8453bfe48940822f57a6904c9d",
      "parents": [
        "eaed435a7b870a38d89dbdb535c7842d618d3214",
        "e4c89a508f4385a0cd8681c2749a2cd2fa476e40"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 15:11:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 15:11:27 2012 -0800"
      },
      "message": "Merge tag \u0027pm-fixes-for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\nPower management fixes for 3.3\n\nTwo fixes for regressions introduced during the merge window, one fix for\na long-standing obscure issue in the computation of hibernate image size\nand two small PM documentation fixes.\n\n* tag \u0027pm-fixes-for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / Sleep: Fix read_unlock_usermodehelper() call.\n  PM / Hibernate: Rewrite unlock_system_sleep() to fix s2disk regression\n  PM / Hibernate: Correct additional pages number calculation\n  PM / Documentation: Fix minor issue in freezing_of_tasks.txt\n  PM / Documentation: Fix spelling mistake in basic-pm-debugging.txt\n"
    },
    {
      "commit": "a99cbf6b43a7b3b15f6139b2d9ac4ecceccd3c99",
      "tree": "d92277ec77dbaf6f04a1ab4fe31a974c1ce51f76",
      "parents": [
        "4f57d865f1d863346ac50db9c25859e73a86499c",
        "b4d20859362fde976bb2fa53eb51b798cdba1afc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 10:08:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 10:08:08 2012 -0800"
      },
      "message": "Merge branch \u0027kernel-doc\u0027 from Randy Dunlap\n\nThe usual kernel-doc fixups from Randy.  Some of them David acked as\nmerged in his tree, this is the random left-overs.\n\n* kernel-doc:\n  docbook: fix sched source file names in device-drivers book\n  docbook: change iomap source filename in deviceiobook\n  docbook: don\u0027t use serial_core.h in device-drivers book\n  kernel-doc: fix kernel-doc warnings in sched\n  kernel-doc: fix new warnings in cfg80211.h\n  kernel-doc: fix new warning in usb.h\n  kernel-doc: fix new warnings in device.h\n  kernel-doc: fix new warnings in debugfs\n  kernel-doc: fix new warning in regulator core\n  kernel-doc: fix new warnings in pci\n  kernel-doc: fix new warnings in driver-core\n  kernel-doc: fix new warnings in auditsc.c\n  scripts/kernel-doc: fix fatal error caused by cfg80211.h\n"
    },
    {
      "commit": "fa757281a08799fd6c0f7ec6f111d1cd66afc97b",
      "tree": "664f8728e55e3d37ca8eb3c6c9087d2da9860463",
      "parents": [
        "2f6c76aa5f0fb53059730c628ac59ef62a14ed7a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:03:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:44:54 2012 -0800"
      },
      "message": "kernel-doc: fix kernel-doc warnings in sched\n\nFix new kernel-doc notation warnings:\n\nWarning(include/linux/sched.h:2094): No description found for parameter \u0027p\u0027\nWarning(include/linux/sched.h:2094): Excess function parameter \u0027tsk\u0027 description in \u0027is_idle_task\u0027\nWarning(kernel/sched/cpupri.c:139): No description found for parameter \u0027newpri\u0027\nWarning(kernel/sched/cpupri.c:139): Excess function parameter \u0027pri\u0027 description in \u0027cpupri_set\u0027\nWarning(kernel/sched/cpupri.c:208): Excess function parameter \u0027bootmem\u0027 description in \u0027cpupri_init\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc:\tIngo Molnar \u003cmingo@elte.hu\u003e\nCc:\tPeter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42ae610c1a820ddecb80943d4ccfc936f7772535",
      "tree": "547550121b439c3e7d0f53b263117f275d938b53",
      "parents": [
        "70c95b00b87f85ce5a15b7899aaa862eacd2364a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:02:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:44:53 2012 -0800"
      },
      "message": "kernel-doc: fix new warnings in auditsc.c\n\nFix new kernel-doc warnings in auditsc.c:\n\nWarning(kernel/auditsc.c:1875): No description found for parameter \u0027success\u0027\nWarning(kernel/auditsc.c:1875): No description found for parameter \u0027return_code\u0027\nWarning(kernel/auditsc.c:1875): Excess function parameter \u0027pt_regs\u0027 description in \u0027__audit_syscall_exit\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d496aab567e7e52b3e974c9192a5de6e77dce32c",
      "tree": "aa323c702bbf24567e4b7a244a135346f6aaeb5b",
      "parents": [
        "2a4e64b8f6bcbf23ddd375b78342051ae8862284"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Fri Jan 20 14:34:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:38:48 2012 -0800"
      },
      "message": "kprobes: initialize before using a hlist\n\nCommit ef53d9c5e (\"kprobes: improve kretprobe scalability with hashed\nlocking\") introduced a bug where we can potentially leak\nkretprobe_instances since we initialize a hlist head after having used\nit.\n\nInitialize the hlist head before using it.\n\nReported by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Srinivasa D S \u003csrinivasa@in.ibm.com\u003e\nCc: \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0e90b31f4ba77027a7c21cbfc66404df0851ca21",
      "tree": "10dc6c443e2f058869d3953a90e6d48fb53f83ae",
      "parents": [
        "8cfd14ad1eb52e44cb1fe7b47a68126e45e04026"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Fri Jan 20 04:57:16 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 22 15:08:46 2012 -0500"
      },
      "message": "net: introduce res_counter_charge_nofail() for socket allocations\n\nThere is a case in __sk_mem_schedule(), where an allocation\nis beyond the maximum, but yet we are allowed to proceed.\nIt happens under the following condition:\n\n\tsk-\u003esk_wmem_queued + size \u003e\u003d sk-\u003esk_sndbuf\n\nThe network code won\u0027t revert the allocation in this case,\nmeaning that at some point later it\u0027ll try to do it. Since\nthis is never communicated to the underlying res_counter\ncode, there is an inbalance in res_counter uncharge operation.\n\nI see two ways of fixing this:\n\n1) storing the information about those allocations somewhere\n   in memcg, and then deducting from that first, before\n   we start draining the res_counter,\n2) providing a slightly different allocation function for\n   the res_counter, that matches the original behavior of\n   the network code more closely.\n\nI decided to go for #2 here, believing it to be more elegant,\nsince #1 would require us to do basically that, but in a more\nobscure way.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCC: Tejun Heo \u003ctj@kernel.org\u003e\nCC: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCC: Laurent Chavey \u003cchavey@google.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "46cd6a7f680d14f6f80ede9f04aeb70fa83bd266",
      "tree": "57d32e7f7399af2c3c869ec685e2050f6cf08d70",
      "parents": [
        "fd45c15f13e754f3c106427e857310f3e0813951"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Fri Jan 20 10:12:46 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 21 09:33:42 2012 +0100"
      },
      "message": "perf: Call perf_cgroup_event_time() directly\n\nThe perf_event_time() will call perf_cgroup_event_time()\nif @event is a cgroup event. Just do it directly and avoid\nthe extra check..\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nLink: http://lkml.kernel.org/r/1327021966-27688-2-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fd45c15f13e754f3c106427e857310f3e0813951",
      "tree": "18c02a2b1037b773813b2f20fc4d826d7645ad96",
      "parents": [
        "dcd6c92267155e70a94b3927bce681ce74b80d1f"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Fri Jan 20 10:12:45 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 21 09:33:41 2012 +0100"
      },
      "message": "perf: Don\u0027t call release_callchain_buffers() if allocation fails\n\nWhen alloc_callchain_buffers() fails, it frees all of\nentries before return. In addition, calling the\nrelease_callchain_buffers() will cause a NULL pointer\ndereference since callchain_cpu_entries is not set.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nLink: http://lkml.kernel.org/r/1327021966-27688-1-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "567e47935a7cddd8e823c73bb8ee0b2805cd4940",
      "tree": "0d1ee0eb233b7f84084f779d32ef1fb2d5be755a",
      "parents": [
        "99d1edc5c5ef5ee80982b354d57cef106cb8423c",
        "f7e6746ebae984ea67b0a1a1e23c7e6698240631",
        "6eadf1075c6f923fece419e38cf05bff559aefcd",
        "4f2f81a5621de47d42476d0b929be2e0d565df84"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 19 14:53:06 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 19 14:53:06 2012 -0800"
      },
      "message": "Merge branches \u0027sched-urgent-for-linus\u0027, \u0027perf-urgent-for-linus\u0027 and \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/accounting, proc: Fix /proc/stat interrupts sum\n\n* \u0027perf-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  tracepoints/module: Fix disabling tracepoints with taint CRAP or OOT\n  x86/kprobes: Add arch/x86/tools/insn_sanity to .gitignore\n  x86/kprobes: Fix typo transferred from Intel manual\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, syscall: Need __ARCH_WANT_SYS_IPC for 32 bits\n  x86, tsc: Fix SMI induced variation in quick_pit_calibrate()\n  x86, opcode: ANDN and Group 17 in x86-opcode-map.txt\n  x86/kconfig: Move the ZONE_DMA entry under a menu\n  x86/UV2: Add accounting for BAU strong nacks\n  x86/UV2: Ack BAU interrupt earlier\n  x86/UV2: Remove stale no-resources test for UV2 BAU\n  x86/UV2: Work around BAU bug\n  x86/UV2: Fix BAU destination timeout initialization\n  x86/UV2: Fix new UV2 hardware by using native UV2 broadcast mode\n  x86: Get rid of dubious one-bit signed bitfield\n"
    },
    {
      "commit": "160cb5a97daef0cb894685d84c9d4700bb7cccb4",
      "tree": "91b8fd151fad423572a686ee94295a84754c0347",
      "parents": [
        "5eb6f9ad96967be4e0da55521a253e11b534bd3f"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Thu Jan 19 23:23:10 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Jan 19 23:23:10 2012 +0100"
      },
      "message": "PM / Hibernate: Correct additional pages number calculation\n\nThe struct bm_block is allocated by chain_alloc(),\nso it\u0027d better counting it in LINKED_PAGE_DATA_SIZE.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "f429ee3b808118591d1f3cdf3c0d0793911a5677",
      "tree": "96d848f5f677d96758ecd2aee5eb6931b75bf218",
      "parents": [
        "22b4eb5e3174efb49791c62823d0cccc35394c36",
        "c158a35c8a681cf68d36f22f058f9f5466386c71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 16:06:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 16:41:31 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit: (29 commits)\n  audit: no leading space in audit_log_d_path prefix\n  audit: treat s_id as an untrusted string\n  audit: fix signedness bug in audit_log_execve_info()\n  audit: comparison on interprocess fields\n  audit: implement all object interfield comparisons\n  audit: allow interfield comparison between gid and ogid\n  audit: complex interfield comparison helper\n  audit: allow interfield comparison in audit rules\n  Kernel: Audit Support For The ARM Platform\n  audit: do not call audit_getname on error\n  audit: only allow tasks to set their loginuid if it is -1\n  audit: remove task argument to audit_set_loginuid\n  audit: allow audit matching on inode gid\n  audit: allow matching on obj_uid\n  audit: remove audit_finish_fork as it can\u0027t be called\n  audit: reject entry,always rules\n  audit: inline audit_free to simplify the look of generic code\n  audit: drop audit_set_macxattr as it doesn\u0027t do anything\n  audit: inline checks for not needing to collect aux records\n  audit: drop some potentially inadvisable likely notations\n  ...\n\nUse evil merge to fix up grammar mistakes in Kconfig file.\n\nBad speling and horrible grammar (and copious swearing) is to be\nexpected, but let\u0027s keep it to commit messages and comments, rather than\nexpose it to users in config help texts or printouts.\n"
    },
    {
      "commit": "c158a35c8a681cf68d36f22f058f9f5466386c71",
      "tree": "54a7fe4d21a30848539b2bf94c885f0a0b123717",
      "parents": [
        "41fdc3054e23e3229edea27053522fe052d02ec2"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Fri Jan 06 14:07:10 2012 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:04 2012 -0500"
      },
      "message": "audit: no leading space in audit_log_d_path prefix\n\naudit_log_d_path() injects an additional space before the prefix,\nwhich serves no purpose and doesn\u0027t mix well with other audit_log*()\nfunctions that do not sneak extra characters into the log.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "5afb8a3f96573f7ea018abb768f5b6ebe1a6c1a4",
      "tree": "da5f2278624eeb9dd09c91f3e9cfb6718a4b44ac",
      "parents": [
        "10d68360871657204885371cdf2594412675d2f9"
      ],
      "author": {
        "name": "Xi Wang",
        "email": "xi.wang@gmail.com",
        "time": "Tue Dec 20 18:39:41 2011 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:03 2012 -0500"
      },
      "message": "audit: fix signedness bug in audit_log_execve_info()\n\nIn the loop, a size_t \"len\" is used to hold the return value of\naudit_log_single_execve_arg(), which returns -1 on error.  In that\ncase the error handling (len \u003c\u003d 0) will be bypassed since \"len\" is\nunsigned, and the loop continues with (p +\u003d len) being wrapped.\nChange the type of \"len\" to signed int to fix the error handling.\n\n\tsize_t len;\n\t...\n\tfor (...) {\n\t\tlen \u003d audit_log_single_execve_arg(...);\n\t\tif (len \u003c\u003d 0)\n\t\t\tbreak;\n\t\tp +\u003d len;\n\t}\n\nSigned-off-by: Xi Wang \u003cxi.wang@gmail.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "10d68360871657204885371cdf2594412675d2f9",
      "tree": "85a4fa8d3b0dc0a7bc525475325f955f75d3881d",
      "parents": [
        "4a6633ed08af5ba67790b4d1adcdeb8ceb55677e"
      ],
      "author": {
        "name": "Peter Moody",
        "email": "pmoody@google.com",
        "time": "Wed Jan 04 15:24:31 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:03 2012 -0500"
      },
      "message": "audit: comparison on interprocess fields\n\nThis allows audit to specify rules in which we compare two fields of a\nprocess.  Such as is the running process uid !\u003d to the running process\neuid?\n\nSigned-off-by: Peter Moody \u003cpmoody@google.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "4a6633ed08af5ba67790b4d1adcdeb8ceb55677e",
      "tree": "8b658f732f742d3d3a40f84b39ce4aa42f70d538",
      "parents": [
        "c9fe685f7a17a0ee8bf3fbe51e40b1c8b8e65896"
      ],
      "author": {
        "name": "Peter Moody",
        "email": "pmoody@google.com",
        "time": "Tue Dec 13 16:17:51 2011 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:02 2012 -0500"
      },
      "message": "audit: implement all object interfield comparisons\n\nThis completes the matrix of interfield comparisons between uid/gid\ninformation for the current task and the uid/gid information for inodes.\naka I can audit based on differences between the euid of the process and\nthe uid of fs objects.\n\nSigned-off-by: Peter Moody \u003cpmoody@google.com\u003e\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "c9fe685f7a17a0ee8bf3fbe51e40b1c8b8e65896",
      "tree": "510a09bc02c5dccb7ef83c88f2a00546b17e2c17",
      "parents": [
        "b34b039324bf081554ee8678f9b8c5d937e5206c"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:02 2012 -0500"
      },
      "message": "audit: allow interfield comparison between gid and ogid\n\nAllow audit rules to compare the gid of the running task to the gid of the\ninode in question.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "b34b039324bf081554ee8678f9b8c5d937e5206c",
      "tree": "ff454dfed0580753defbeb87652bcf19faaf7800",
      "parents": [
        "02d86a568c6d2d335256864451ac8ce781bc5652"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:02 2012 -0500"
      },
      "message": "audit: complex interfield comparison helper\n\nRather than code the same loop over and over implement a helper function which\nuses some pointer magic to make it generic enough to be used numerous places\nas we implement more audit interfield comparisons\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "02d86a568c6d2d335256864451ac8ce781bc5652",
      "tree": "3ef085bd96cc79733cff28993379dbbd4b855813",
      "parents": [
        "29ef73b7a823b77a7cd0bdd7d7cded3fb6c2587b"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:01 2012 -0500"
      },
      "message": "audit: allow interfield comparison in audit rules\n\nWe wish to be able to audit when a uid\u003d500 task accesses a file which is\nuid\u003d0.  Or vice versa.  This patch introduces a new audit filter type\nAUDIT_FIELD_COMPARE which takes as an \u0027enum\u0027 which indicates which fields\nshould be compared.  At this point we only define the task-\u003euid vs\ninode-\u003euid, but other comparisons can be added.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "4043cde8ecf7f7d880eb1133c201a3d392fd68c3",
      "tree": "d740c60e6b56565a7e996c3d0308e66f7c8651f8",
      "parents": [
        "633b45454503489209b0d9a45f9e3cd1b852c614"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:01 2012 -0500"
      },
      "message": "audit: do not call audit_getname on error\n\nJust a code cleanup really.  We don\u0027t need to make a function call just for\nit to return on error.  This also makes the VFS function even easier to follow\nand removes a conditional on a hot path.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "633b45454503489209b0d9a45f9e3cd1b852c614",
      "tree": "591363d3be6b773f872b979727d4ac1a9691ec82",
      "parents": [
        "0a300be6d5be8f66cd96609334710c268d0bfdce"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:00 2012 -0500"
      },
      "message": "audit: only allow tasks to set their loginuid if it is -1\n\nAt the moment we allow tasks to set their loginuid if they have\nCAP_AUDIT_CONTROL.  In reality we want tasks to set the loginuid when they\nlog in and it be impossible to ever reset.  We had to make it mutable even\nafter it was once set (with the CAP) because on update and admin might have\nto restart sshd.  Now sshd would get his loginuid and the next user which\nlogged in using ssh would not be able to set his loginuid.\n\nSystemd has changed how userspace works and allowed us to make the kernel\nwork the way it should.  With systemd users (even admins) are not supposed\nto restart services directly.  The system will restart the service for\nthem.  Thus since systemd is going to loginuid\u003d\u003d-1, sshd would get -1, and\nsshd would be allowed to set a new loginuid without special permissions.\n\nIf an admin in this system were to manually start an sshd he is inserting\nhimself into the system chain of trust and thus, logically, it\u0027s his\nloginuid that should be used!  Since we have old systems I make this a\nKconfig option.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "0a300be6d5be8f66cd96609334710c268d0bfdce",
      "tree": "253d0d1e0aa28a6bdf883bb92e4b62fafe263563",
      "parents": [
        "54d3218b31aee5bc9c859ae60fbde933d922448b"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:08 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:17:00 2012 -0500"
      },
      "message": "audit: remove task argument to audit_set_loginuid\n\nThe function always deals with current.  Don\u0027t expose an option\npretending one can use it for something.  You can\u0027t.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "54d3218b31aee5bc9c859ae60fbde933d922448b",
      "tree": "ebc383920713c283133d885191d0c19cb049afd2",
      "parents": [
        "efaffd6e4417860c67576ac760dd6e8bbd15f006"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:59 2012 -0500"
      },
      "message": "audit: allow audit matching on inode gid\n\nMuch like the ability to filter audit on the uid of an inode collected, we\nshould be able to filter on the gid of the inode.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "efaffd6e4417860c67576ac760dd6e8bbd15f006",
      "tree": "a59ee886b609bbf761fb75744e5e468264c67ab5",
      "parents": [
        "6422e78de6880c66a82af512d9bd0c85eb62e661"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:59 2012 -0500"
      },
      "message": "audit: allow matching on obj_uid\n\nAllow syscall exit filter matching based on the uid of the owner of an\ninode used in a syscall.  aka:\n\nauditctl -a always,exit -S open -F obj_uid\u003d0 -F perm\u003dwa\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "6422e78de6880c66a82af512d9bd0c85eb62e661",
      "tree": "9cce4d385a6508056be7645fd3511ab019b346f4",
      "parents": [
        "7ff68e53ece8c175d2951bb8a30b3cce8f9c5579"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:59 2012 -0500"
      },
      "message": "audit: remove audit_finish_fork as it can\u0027t be called\n\nAudit entry,always rules are not allowed and are automatically changed in\nexit,always rules in userspace.  The kernel refuses to load such rules.\n\nThus a task in the middle of a syscall (and thus in audit_finish_fork())\ncan only be in one of two states: AUDIT_BUILD_CONTEXT or AUDIT_DISABLED.\nSince the current task cannot be in AUDIT_RECORD_CONTEXT we aren\u0027t every\ngoing to actually use the code in audit_finish_fork() since it will\nreturn without doing anything.  Thus drop the code.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "7ff68e53ece8c175d2951bb8a30b3cce8f9c5579",
      "tree": "cde525e879e2e2434b0e3b23248588f015f5df04",
      "parents": [
        "a4ff8dba7d8ce5ceb43fb27df66292251cc73bdc"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:58 2012 -0500"
      },
      "message": "audit: reject entry,always rules\n\nWe deprecated entry,always rules a long time ago.  Reject those rules as\ninvalid.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "a4ff8dba7d8ce5ceb43fb27df66292251cc73bdc",
      "tree": "2c89a0a7a7dad853a2c2ec70417ef2f3f5a04fd4",
      "parents": [
        "38cdce53daa0408a61fe6d86fe48f31515c9b840"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:58 2012 -0500"
      },
      "message": "audit: inline audit_free to simplify the look of generic code\n\nmake the conditional a static inline instead of doing it in generic code.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "07c49417877f8658a6aa0ad9b4e21e4fd4df11b6",
      "tree": "59a64b96c9f35b8559db4c46b5a43d2d9510c190",
      "parents": [
        "56179a6ec65a56e0279a58e35cb450d38f061b94"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:07 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:57 2012 -0500"
      },
      "message": "audit: inline checks for not needing to collect aux records\n\nA number of audit hooks make function calls before they determine that\nauxilary records do not need to be collected.  Do those checks as static\ninlines since the most common case is going to be that records are not\nneeded and we can skip the function call overhead.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "56179a6ec65a56e0279a58e35cb450d38f061b94",
      "tree": "7dc8b775719d7c731f1d2c279d5e5a105309adfb",
      "parents": [
        "997f5b6444f4608692ec807fb802fd9767c80e76"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:57 2012 -0500"
      },
      "message": "audit: drop some potentially inadvisable likely notations\n\nThe audit code makes heavy use of likely() and unlikely() macros, but they\ndon\u0027t always make sense.  Drop any that seem questionable and let the\ncomputer do it\u0027s thing.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "997f5b6444f4608692ec807fb802fd9767c80e76",
      "tree": "3f523cd7aa1a8ab836ad2d494752364dde5b5eac",
      "parents": [
        "b05d8447e7821695bc2fa3359431f7a664232743"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:57 2012 -0500"
      },
      "message": "audit: remove AUDIT_SETUP_CONTEXT as it isn\u0027t used\n\nAudit contexts have 3 states.  Disabled, which doesn\u0027t collect anything,\nbuild, which collects info but might not emit it, and record, which\ncollects and emits.  There is a 4th state, setup, which isn\u0027t used.  Get\nrid of it.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "b05d8447e7821695bc2fa3359431f7a664232743",
      "tree": "da90e558279c6407aa2e08d36bea5d9a21cd959c",
      "parents": [
        "f031cd25568a390dc2c9c3a4015054183753449a"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:56 2012 -0500"
      },
      "message": "audit: inline audit_syscall_entry to reduce burden on archs\n\nEvery arch calls:\n\nif (unlikely(current-\u003eaudit_context))\n\taudit_syscall_entry()\n\nwhich requires knowledge about audit (the existance of audit_context) in\nthe arch code.  Just do it all in static inline in audit.h so that arch\u0027s\ncan remain blissfully ignorant.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "d7e7528bcd456f5c36ad4a202ccfb43c5aa98bc4",
      "tree": "ef49503b1dc52c52102e728dbd979c9309d5756b",
      "parents": [
        "85e7bac33b8d5edafc4e219c7dfdb3d48e0b4e31"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:06 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:56 2012 -0500"
      },
      "message": "Audit: push audit success and retcode into arch ptrace.h\n\nThe audit system previously expected arches calling to audit_syscall_exit to\nsupply as arguments if the syscall was a success and what the return code was.\nAudit also provides a helper AUDITSC_RESULT which was supposed to simplify things\nby converting from negative retcodes to an audit internal magic value stating\nsuccess or failure.  This helper was wrong and could indicate that a valid\npointer returned to userspace was a failed syscall.  The fix is to fix the\nlayering foolishness.  We now pass audit_syscall_exit a struct pt_reg and it\nin turns calls back into arch code to collect the return value and to\ndetermine if the syscall was a success or failure.  We also define a generic\nis_syscall_success() macro which determines success/failure based on if the\nvalue is \u003c -MAX_ERRNO.  This works for arches like x86 which do not use a\nseparate mechanism to indicate syscall failure.\n\nWe make both the is_syscall_success() and regs_return_value() static inlines\ninstead of macros.  The reason is because the audit function must take a void*\nfor the regs.  (uml calls theirs struct uml_pt_regs instead of just struct\npt_regs so audit_syscall_exit can\u0027t take a struct pt_regs).  Since the audit\nfunction takes a void* we need to use static inlines to cast it back to the\narch correct structure to dereference it.\n\nThe other major change is that on some arches, like ia64, MIPS and ppc, we\nchange regs_return_value() to give us the negative value on syscall failure.\nTHE only other user of this macro, kretprobe_example.c, won\u0027t notice and it\nmakes the value signed consistently for the audit functions across all archs.\n\nIn arch/sh/kernel/ptrace_64.c I see that we were using regs[9] in the old\naudit code as the return value.  But the ptrace_64.h code defined the macro\nregs_return_value() as regs[3].  I have no idea which one is correct, but this\npatch now uses the regs_return_value() function, so it now uses regs[3].\n\nFor powerpc we previously used regs-\u003eresult but now use the\nregs_return_value() function which uses regs-\u003egprs[3].  regs-\u003egprs[3] is\nalways positive so the regs_return_value(), much like ia64 makes it negative\nbefore calling the audit code when appropriate.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e [for x86 portion]\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e [for ia64]\nAcked-by: Richard Weinberger \u003crichard@nod.at\u003e [for uml]\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [for sparc]\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e [for mips]\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e [for ppc]\n"
    },
    {
      "commit": "85e7bac33b8d5edafc4e219c7dfdb3d48e0b4e31",
      "tree": "6a1f178de829d2219a65a8563e12f2c8029d4b13",
      "parents": [
        "16c174bd95cb07c9d0ad3fcd8c70f9cea7214c9d"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:05 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:55 2012 -0500"
      },
      "message": "seccomp: audit abnormal end to a process due to seccomp\n\nThe audit system likes to collect information about processes that end\nabnormally (SIGSEGV) as this may me useful intrusion detection information.\nThis patch adds audit support to collect information when seccomp forces a\ntask to exit because of misbehavior in a similar way.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "16c174bd95cb07c9d0ad3fcd8c70f9cea7214c9d",
      "tree": "3264c533da56cc81988331fd0d3f42f3d2ba3183",
      "parents": [
        "3035c51e8ac0512686ceb9f2bd1d13bdc6e4fb29"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:05 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:55 2012 -0500"
      },
      "message": "audit: check current inode and containing object when filtering on major and minor\n\nThe audit system has the ability to filter on the major and minor number of\nthe device containing the inode being operated upon.  Lets say that\n/dev/sda1 has major,minor 8,1 and that we mount /dev/sda1 on /boot.  Now lets\nsay we add a watch with a filter on 8,1.  If we proceed to open an inode\ninside /boot, such as /vboot/vmlinuz, we will match the major,minor filter.\n\nLets instead assume that one were to use a tool like debugfs and were to\nopen /dev/sda1 directly and to modify it\u0027s contents.  We might hope that\nthis would also be logged, but it isn\u0027t.  The rules will check the\nmajor,minor of the device containing /dev/sda1.  In other words the rule\nwould match on the major/minor of the tmpfs mounted at /dev.\n\nI believe these rules should trigger on either device.  The man page is\ndevoid of useful information about the intended semantics.  It only seems\nlogical that if you want to know everything that happened on a major,minor\nthat would include things that happened to the device itself...\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "3035c51e8ac0512686ceb9f2bd1d13bdc6e4fb29",
      "tree": "7c26ee810b6d6678f960cf1bb5880055ac4c793f",
      "parents": [
        "5195d8e217a78697152d64fc09a16e063a022465"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:05 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:54 2012 -0500"
      },
      "message": "audit: drop the meaningless and format breaking word \u0027user\u0027\n\nuserspace audit messages look like so:\n\ntype\u003dUSER msg\u003daudit(1271170549.415:24710): user pid\u003d14722 uid\u003d0 auid\u003d500 ses\u003d1 subj\u003dunconfined_u:unconfined_r:auditctl_t:s0-s0:c0.c1023 msg\u003d\u0027\u0027\n\nThat third field just says \u0027user\u0027.  That\u0027s useless and doesn\u0027t follow the\nkey\u003dvalue pair we are trying to enforce.  We already know it came from the\nuser based on the record type.  Kill that word.  Die.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "5195d8e217a78697152d64fc09a16e063a022465",
      "tree": "6d8d980037d95740d0f64ba9491c0e5a38f31ea3",
      "parents": [
        "5ef30ee53b187786e64bdc1f8109e39d17f2ce58"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:05 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:54 2012 -0500"
      },
      "message": "audit: dynamically allocate audit_names when not enough space is in the names array\n\nThis patch does 2 things.  First it reduces the number of audit_names\nallocated in every audit context from 20 to 5.  5 should be enough for all\n\u0027normal\u0027 syscalls (rename being the worst).  Some syscalls can still touch\nmore the 5 inodes such as mount.  When rpc filesystem is mounted it will\ncreate inodes and those can exceed 5.  To handle that problem this patch will\ndynamically allocate audit_names if it needs more than 5.  This should\ndecrease the typicall memory usage while still supporting all the possible\nkernel operations.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "5ef30ee53b187786e64bdc1f8109e39d17f2ce58",
      "tree": "05c5f2aebedfdaf1dc81afa0a50271a1a581a069",
      "parents": [
        "9fc5c3e3237e02a94f41cd1d2b4291593d29791d"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Tue Jan 03 14:23:05 2012 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Jan 17 16:16:54 2012 -0500"
      },
      "message": "audit: make filetype matching consistent with other filters\n\nEvery other filter that matches part of the inodes list collected by audit\nwill match against any of the inodes on that list.  The filetype matching\nhowever had a strange way of doing things.  It allowed userspace to\nindicated if it should match on the first of the second name collected by\nthe kernel.  Name collection ordering seems like a kernel internal and\nmaking userspace rules get that right just seems like a bad idea.  As it\nturns out the userspace audit writers had no idea it was doing this and\nthus never overloaded the value field.  The kernel always checked the first\nname collected which for the tested rules was always correct.\n\nThis patch just makes the filetype matching like the major, minor, inode,\nand LSM rules in that it will match against any of the names collected.  It\nalso changes the rule validation to reject the old unused rule types.\n\nNoone knew it was there.  Noone used it.  Why keep around the extra code?\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\n"
    },
    {
      "commit": "951880e634a79884236a575b896abf55c39ae0bf",
      "tree": "b23ec5a95cd72083227ed5b7396e2f8799f4a58c",
      "parents": [
        "c2bc3a316a7281f67e36b34dac2802cbe36a9128"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 10:19:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 17 10:19:41 2012 -0800"
      },
      "message": "Revert \"capabitlies: ns_capable can use the cap helpers rather than lsm call\"\n\nThis reverts commit d2a7009f0bb03fa22ad08dd25472efa0568126b9.\n\nJ. R. Okajima explains:\n\n \"After this commit, I am afraid access(2) on NFS may not work\n  correctly.  The scenario based upon my guess.\n   - access(2) overrides the credentials.\n   - calls inode_permission() -- ... -- generic_permission() --\n      ns_capable().\n   - while the old ns_capable() calls security_capable(current_cred()),\n     the new ns_capable() calls has_ns_capability(current) --\n     security_capable(__task_cred(t)).\n\n  current_cred() returns current-\u003ecred which is effective (overridden)\n  credentials, but __task_cred(current) returns current-\u003ereal_cred (the\n  NFSD\u0027s credential).  And the overridden credentials by access(2) lost.\"\n\nRequested-by: J. R. Okajima \u003chooanon05@yahoo.co.jp\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b64b223aed5f8aeeb6c046f1b050a8f976b87de0",
      "tree": "f4ce305aaae5fa04f55ad04a3b9ee501158decde",
      "parents": [
        "5d53cb27d849c899136c048ec84c940ac449494b",
        "4410030646be072b82ec1892ad5cc7d91af384d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 17 09:44:17 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 17 09:44:17 2012 +0100"
      },
      "message": "Merge branch \u0027rcu/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/urgent\n"
    },
    {
      "commit": "97740400bc76b64781d01f8cdfbcf750582006ef",
      "tree": "85900329fbce72011339ab2348dcf13dde2a64fd",
      "parents": [
        "408e057870c8680a50963b08f9f7efaa151a74ec",
        "ee34a37049114303011e154478c63b977bcff24c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 15:02:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 16 15:02:30 2012 -0800"
      },
      "message": "Merge branch \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm\n\n* \u0027pm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:\n  PM / Hibernate: Drop the check of swap space size for compressed image\n  PM / shmobile: fix A3SP suspend method\n  PM / Domains: Skip governor functions for CONFIG_PM_RUNTIME unset\n  PM / Domains: Fix build for CONFIG_PM_SLEEP unset\n  PM: Make sysrq-o be available for CONFIG_PM unset\n"
    },
    {
      "commit": "4410030646be072b82ec1892ad5cc7d91af384d8",
      "tree": "fdab426550a40c974120ec67342a3b07c2e2636c",
      "parents": [
        "7061ca3b6c99fc78115560b9a10227c8c5fafc45"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Dec 27 15:04:26 2011 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 16 09:44:05 2012 -0800"
      },
      "message": "rcu: Add missing __cpuinit annotation in rcutorture code\n\n\"rcu: Add rcutorture CPU-hotplug capability\" adds cpu hotplug operations\nto the rcutorture code but produces a false positive warning about section\nmismatches:\n\nWARNING: vmlinux.o(.text+0x1e420c): Section mismatch in reference from the\n\t function rcu_torture_onoff() to the function .cpuinit.text:cpu_up()\n\t The function rcu_torture_onoff() references\n\t the function __cpuinit cpu_up().\n\t This is often because rcu_torture_onoff lacks a __cpuinit\n\t annotation or the annotation of cpu_up is wrong.\n\nThis commit therefore adds a __cpuinit annotation so the warning goes away.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "d8e8ed95cda1dfd6813588333d36552935eba4a1",
      "tree": "c8b8b33fbc772b50ec5827ccf5874b315cccd07b",
      "parents": [
        "51aa78271be9bf97df4ab19c3146e1f08e592c7e"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 15 13:43:24 2011 +1030"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 16 09:43:56 2012 -0800"
      },
      "message": "rcu: Make rcutorture bool parameters really bool (core code)\n\nmodule_param(bool) used to counter-intuitively take an int.  In\nfddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy\ntrick.\n\nIt\u0027s time to remove the int/unsigned int option.  For this version\nit\u0027ll simply give a warning, but it\u0027ll break next kernel version.\nThis commit makes this change to rcutorture.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "51aa78271be9bf97df4ab19c3146e1f08e592c7e",
      "tree": "c09112e5c57178e20c29e8858a6d7c336cf8fb1c",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610",
        "a513f6bab0939800dcf1e7c075e733420cf967c5"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 16 09:41:09 2012 -0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Jan 16 09:41:18 2012 -0800"
      },
      "message": "Merge branch \u0027rcu/fixes-for-v3.2\u0027 into rcu/urgent\n\nMerge reason: Add these commits so that fixes on this branch do not\n\tconflict with already-mainlined code.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "c10076c4304083af15a41f6bc5e657e781c1f9a6",
      "tree": "0a9fd7219177cc3d3cb9afe89fb3931c2fc1defd",
      "parents": [
        "2e885057b7f75035f0b85e02f737891482815a81"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Jan 13 21:40:59 2012 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jan 16 11:35:57 2012 -0500"
      },
      "message": "tracepoints/module: Fix disabling tracepoints with taint CRAP or OOT\n\nTracepoints are disabled for tainted modules, which is usually because the\nmodule is either proprietary or was forced, and we don\u0027t want either of them\nusing kernel tracepoints.\n\nBut, a module can also be tainted by being in the staging directory or\ncompiled out of tree. Either is fine for use with tracepoints, no need\nto punish them.  I found this out when I noticed that my sample trace event\nmodule, when done out of tree, stopped working.\n\nCc: stable@vger.kernel.org # 3.2\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: Ben Hutchings \u003cben@decadent.org.uk\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "53999bf34d55981328f8ba9def558d3e104d6e36",
      "tree": "4ca98169e5c96c1ec8e04d15fce75c60a8b9578d",
      "parents": [
        "122804ecb59493fbb4d31b3ba9ac59faaf45276f"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Sun Jan 15 19:32:55 2012 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 16:21:07 2012 -0800"
      },
      "message": "error: implicit declaration of function \u0027module_flags_taint\u0027\n\nRecent changes to kernel/module.c caused the following compile\nerror:\n\n  kernel/module.c: In function ‘show_taint’:\n  kernel/module.c:1024:2: error: implicit declaration of function ‘module_flags_taint’ [-Werror\u003dimplicit-function-declaration]\n  cc1: some warnings being treated as errors\n\nCorrect this error by moving the definition of module_flags_taint\noutside of the #ifdef CONFIG_MODULE_UNLOAD section.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b3c9dd182ed3bdcdaf0e42625a35924b0497afdc",
      "tree": "ad48ad4d923fee147c736318d0fad35b3755f4f5",
      "parents": [
        "83c2f912b43c3a7babbb6cb7ae2a5276c1ed2a3e",
        "5d381efb3d1f1ef10535a31ca0dd9b22fe1e1922"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 12:24:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 12:24:45 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.3/core\u0027 of git://git.kernel.dk/linux-block\n\n* \u0027for-3.3/core\u0027 of git://git.kernel.dk/linux-block: (37 commits)\n  Revert \"block: recursive merge requests\"\n  block: Stop using macro stubs for the bio data integrity calls\n  blockdev: convert some macros to static inlines\n  fs: remove unneeded plug in mpage_readpages()\n  block: Add BLKROTATIONAL ioctl\n  block: Introduce blk_set_stacking_limits function\n  block: remove WARN_ON_ONCE() in exit_io_context()\n  block: an exiting task should be allowed to create io_context\n  block: ioc_cgroup_changed() needs to be exported\n  block: recursive merge requests\n  block, cfq: fix empty queue crash caused by request merge\n  block, cfq: move icq creation and rq-\u003eelv.icq association to block core\n  block, cfq: restructure io_cq creation path for io_context interface cleanup\n  block, cfq: move io_cq exit/release to blk-ioc.c\n  block, cfq: move icq cache management to block core\n  block, cfq: move io_cq lookup to blk-ioc.c\n  block, cfq: move cfqd-\u003eicq_list to request_queue and add request-\u003eelv.icq\n  block, cfq: reorganize cfq_io_context into generic and cfq specific parts\n  block: remove elevator_queue-\u003eops\n  block: reorder elevator switch sequence\n  ...\n\nFix up conflicts in:\n - block/blk-cgroup.c\n\tSwitch from can_attach_task to can_attach\n - block/cfq-iosched.c\n\tconflict with now removed cic index changes (we now use q-\u003eid instead)\n"
    },
    {
      "commit": "83c2f912b43c3a7babbb6cb7ae2a5276c1ed2a3e",
      "tree": "eaa7f50dea154d9f19721db69c7adde64d48848f",
      "parents": [
        "f0ed5b9a28536b8be2f578a9450cfa42ab31ccf8",
        "172d1b0b73256551f100fc00c69e356d047103f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 11:26:35 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 15 11:26:35 2012 -0800"
      },
      "message": "Merge branch \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027perf-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (39 commits)\n  perf tools: Fix compile error on x86_64 Ubuntu\n  perf report: Fix --stdio output alignment when --showcpuutilization used\n  perf annotate: Get rid of field_sep check\n  perf annotate: Fix usage string\n  perf kmem: Fix a memory leak\n  perf kmem: Add missing closedir() calls\n  perf top: Add error message for EMFILE\n  perf test: Change type of \u0027-v\u0027 option to INCR\n  perf script: Add missing closedir() calls\n  tracing: Fix compile error when static ftrace is enabled\n  recordmcount: Fix handling of elf64 big-endian objects.\n  perf tools: Add const.h to MANIFEST to make perf-tar-src-pkg work again\n  perf tools: Add support for guest/host-only profiling\n  perf kvm: Do guest-only counting by default\n  perf top: Don\u0027t update total_period on process_sample\n  perf hists: Stop using \u0027self\u0027 for struct hist_entry\n  perf hists: Rename total_session to total_period\n  x86: Add counter when debug stack is used with interrupts enabled\n  x86: Allow NMIs to hit breakpoints in i386\n  x86: Keep current stack in NMI breakpoints\n  ...\n"
    },
    {
      "commit": "c49c41a4134679cecb77362e7f6b59acb6320aa7",
      "tree": "45e690c036ca5846a48c8be67945d1d841b2d96d",
      "parents": [
        "892d208bcf79e4e1058707786a7b6d486697cd78",
        "f423e5ba76e7e4a6fcb4836b4f072d1fdebba8b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security\n\n* \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security:\n  capabilities: remove __cap_full_set definition\n  security: remove the security_netlink_recv hook as it is equivalent to capable()\n  ptrace: do not audit capability check when outputing /proc/pid/stat\n  capabilities: remove task_ns_* functions\n  capabitlies: ns_capable can use the cap helpers rather than lsm call\n  capabilities: style only - move capable below ns_capable\n  capabilites: introduce new has_ns_capabilities_noaudit\n  capabilities: call has_ns_capability from has_capability\n  capabilities: remove all _real_ interfaces\n  capabilities: introduce security_capable_noaudit\n  capabilities: reverse arguments to security_capable\n  capabilities: remove the task from capable LSM hook entirely\n  selinux: sparse fix: fix several warnings in the security server cod\n  selinux: sparse fix: fix warnings in netlink code\n  selinux: sparse fix: eliminate warnings for selinuxfs\n  selinux: sparse fix: declare selinux_disable() in security.h\n  selinux: sparse fix: move selinux_complete_init\n  selinux: sparse fix: make selinux_secmark_refcount static\n  SELinux: Fix RCU deref check warning in sel_netport_insert()\n\nManually fix up a semantic mis-merge wrt security_netlink_recv():\n\n - the interface was removed in commit fd7784615248 (\"security: remove\n   the security_netlink_recv hook as it is equivalent to capable()\")\n\n - a new user of it appeared in commit a38f7907b926 (\"crypto: Add\n   userspace configuration API\")\n\ncausing no automatic merge conflict, but Eric Paris pointed out the\nissue.\n"
    },
    {
      "commit": "0a80939b3e6af4b0dc93bf88ec02fd7e90a16f1b",
      "tree": "a112335f2b2b2a51e90531c6c67e8a3b54dcf0ef",
      "parents": [
        "0b48d42235caf627121f440b57d376f48a9af8b6",
        "72db395ffadb1d33233fd123c2bf87ba0198c6c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 12:32:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 12:32:16 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://github.com/rustyrussell/linux\n\nAutogenerated GPG tag for Rusty D1ADB8F1: 15EE 8D6C AB0E 7F0C F999  BFCB D920 0E6C D1AD B8F1\n\n* tag \u0027for-linus\u0027 of git://github.com/rustyrussell/linux:\n  module_param: check that bool parameters really are bool.\n  intelfbdrv.c: bailearly is an int module_param\n  paride/pcd: fix bool verbose module parameter.\n  module_param: make bool parameters really bool (drivers \u0026 misc)\n  module_param: make bool parameters really bool (arch)\n  module_param: make bool parameters really bool (core code)\n  kernel/async: remove redundant declaration.\n  printk: fix unnecessary module_param_name.\n  lirc_parallel: fix module parameter description.\n  module_param: avoid bool abuse, add bint for special cases.\n  module_param: check type correctness for module_param_array\n  modpost: use linker section to generate table.\n  modpost: use a table rather than a giant if/else statement.\n  modules: sysfs - export: taint, coresize, initsize\n  kernel/params: replace DEBUGP with pr_debug\n  module: replace DEBUGP with pr_debug\n  module: struct module_ref should contains long fields\n  module: Fix performance regression on modules with large symbol tables\n  module: Add comments describing how the \"strmap\" logic works\n\nFix up conflicts in scripts/mod/file2alias.c due to the new linker-\ngenerated table approach to adding __mod_*_device_table entries.  The\nARM sa11x0 mcp bus needed to be converted to that too.\n"
    },
    {
      "commit": "ee34a37049114303011e154478c63b977bcff24c",
      "tree": "b33342752535473f07742206395049233579d12b",
      "parents": [
        "a029db43986e23677498ab4d84bb61b05de83484"
      ],
      "author": {
        "name": "Barry Song",
        "email": "Baohua.Song@csr.com",
        "time": "Mon Jan 09 12:56:23 2012 +0800"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:41:37 2012 +0100"
      },
      "message": "PM / Hibernate: Drop the check of swap space size for compressed image\n\nFor compressed image, the space required is not known until\nwe finish compressing and writing all pages.\nThis patch drops the check, and if swap space is not enough\nfinally, system can still restore to normal after writing\nswap fails for compressed images.\n\nSigned-off-by: Barry Song \u003cBaohua.Song@csr.com\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "dae5cbc2440b1d21a15715d0f1fb20f632dd38ee",
      "tree": "7cfb0b0cddcaff333bef271c54406bbdc505a75b",
      "parents": [
        "96e80a7851b44f3decaac0625665cd64e550b71d"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:33:03 2012 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 14 00:33:03 2012 +0100"
      },
      "message": "PM: Make sysrq-o be available for CONFIG_PM unset\n\nAfter commit 1eb208aea3179dd2fc0cdeea45ef869d75b4fe70, \"PM: Make\nCONFIG_PM depend on (CONFIG_PM_SLEEP || CONFIG_PM_RUNTIME)\", the\nfiles under kernel/power are not built unless CONFIG_PM_SLEEP or\nCONFIG_PM_RUNTIME is set.  In particular, this causes\nkernel/power/poweroff.c to be omitted, even though it should be\ncompiled, because CONFIG_MAGIC_SYSRQ is set.\n\nFix the problem by causing kernel/power/Makefile to be processed\nfor CONFIG_PM unset too.\n\nReported-and-tested-by: Phil Oester \u003ckernel@linuxace.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "163566f60bfe6a8176650155e2d98649b0dfabf8",
      "tree": "3c1c8de6abf5af1e3234fc09e2b2aae93ad2b267",
      "parents": [
        "6c303d3ab39f0dc69546f179c424ee1124f50906"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Nov 22 21:37:41 2011 +0100"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jan 13 18:49:02 2012 +0100"
      },
      "message": "tracing: send_sigqueue() needs trace_signal_generate() too\n\nAdd trace_signal_generate() into send_sigqueue().\n\nsend_sigqueue() is very similar to __send_signal(), just it uses\nthe preallocated info. It should do the same wrt tracing.\n\nReported-by: Seiji Aguchi \u003csaguchi@redhat.com\u003e\nReviewed-by: Seiji Aguchi \u003cseiji.aguchi@hds.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "6c303d3ab39f0dc69546f179c424ee1124f50906",
      "tree": "40fd551256229f2ac1f931c3f9e650ba67deefc7",
      "parents": [
        "099469502f62fbe0d7e4f0b83a2f22538367f734"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Nov 22 21:13:48 2011 +0100"
      },
      "committer": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Fri Jan 13 18:48:50 2012 +0100"
      },
      "message": "tracing: let trace_signal_generate() report more info, kill overflow_fail/lose_info\n\n__send_signal()-\u003etrace_signal_generate() doesn\u0027t report enough info.\nThe users want to know was the signal actually delivered or not, and\nthey also need the shared/private info.\n\nThe patch moves trace_signal_generate() at the end of __send_signal()\nand adds the 2 additional arguments.\n\nThis also allows us to kill trace_signal_overflow_fail/lose_info, we\ncan simply add the appropriate TRACE_SIGNAL_ \"result\" codes.\n\nReported-by: Seiji Aguchi \u003csaguchi@redhat.com\u003e\nReviewed-by: Seiji Aguchi \u003cseiji.aguchi@hds.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\n"
    },
    {
      "commit": "028ee4be34a09a6d48bdf30ab991ae933a7bc036",
      "tree": "455783226ceb65aee100f86afed529d4bbde1c8b",
      "parents": [
        "b3f7f573a20081910e34e99cbc91831f4f02f1ff"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Thu Jan 12 17:20:55 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:13 2012 -0800"
      },
      "message": "c/r: prctl: add PR_SET_MM codes to set up mm_struct entries\n\nWhen we restore a task we need to set up text, data and data heap sizes\nfrom userspace to the values a task had at checkpoint time.  This patch\nadds auxilary prctl codes for that.\n\nWhile most of them have a statistical nature (their values are involved\ninto calculation of /proc/\u003cpid\u003e/statm output) the start_brk and brk values\nare used to compute an allowed size of program data segment expansion.\nWhich means an arbitrary changes of this values might be dangerous\noperation.  So to restrict access the following requirements applied to\nprctl calls:\n\n - The process has to have CAP_SYS_ADMIN capability granted.\n - For all opcodes except start_brk/brk members an appropriate\n   VMA area must exist and should fit certain VMA flags,\n   such as:\n   - code segment must be executable but not writable;\n   - data segment must not be executable.\n\nstart_brk/brk values must not intersect with data segment and must not\nexceed RLIMIT_DATA resource limit.\n\nStill the main guard is CAP_SYS_ADMIN capability check.\n\nNote the kernel should be compiled with CONFIG_CHECKPOINT_RESTORE support\notherwise these prctl calls will return -EINVAL.\n\n[akpm@linux-foundation.org: cache current-\u003emm in a local, saving 200 bytes text]\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nReviewed-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@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": "6e6f0a1f0fa6bba1493c296eb30d1e176e1f8530",
      "tree": "c1bbacbc93e5b6f7759d509d7cf6207ad5b3ee65",
      "parents": [
        "b8f566b04d3cddd192cfd2418ae6d54ac6353792"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Thu Jan 12 17:20:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "panic: don\u0027t print redundant backtraces on oops\n\nWhen an oops causes a panic and panic prints another backtrace it\u0027s pretty\ncommon to have the original oops data be scrolled away on a 80x50 screen.\n\nThe second backtrace is quite redundant and not needed anyways.\n\nSo don\u0027t print the panic backtrace when oops_in_progress is true.\n\n[akpm@linux-foundation.org: add comment]\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: Michael Holzheu \u003cholzheu@linux.vnet.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": "b8f566b04d3cddd192cfd2418ae6d54ac6353792",
      "tree": "32a5bf86548cd43feff4822d800b6a99e157b5d7",
      "parents": [
        "f5138e42211d4e8bfbd6ac5b3816348da1533433"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Thu Jan 12 17:20:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "sysctl: add the kernel.ns_last_pid control\n\nThe sysctl works on the current task\u0027s pid namespace, getting and setting\nits last_pid field.\n\nWriting is allowed for CAP_SYS_ADMIN-capable tasks thus making it possible\nto create a task with desired pid value.  This ability is required badly\nfor the checkpoint/restore in userspace.\n\nThis approach suits all the parties for now.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@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": "93e13a360ba331915220f82f6e9543df961ffa1f",
      "tree": "470c120ee5d3de69f46e62ec85452bee14e8d67c",
      "parents": [
        "bec013c40bc89671d8d457944fdf7d2b8e79d651"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Thu Jan 12 17:20:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "kdump: fix crash_kexec()/smp_send_stop() race in panic()\n\nWhen two CPUs call panic at the same time there is a possible race\ncondition that can stop kdump.  The first CPU calls crash_kexec() and the\nsecond CPU calls smp_send_stop() in panic() before crash_kexec() finished\non the first CPU.  So the second CPU stops the first CPU and therefore\nkdump fails:\n\n1st CPU:\n  panic()-\u003ecrash_kexec()-\u003emutex_trylock(\u0026kexec_mutex)-\u003e do kdump\n\n2nd CPU:\n  panic()-\u003ecrash_kexec()-\u003ekexec_mutex already held by 1st CPU\n       -\u003esmp_send_stop()-\u003e stop 1st CPU (stop kdump)\n\nThis patch fixes the problem by introducing a spinlock in panic that\nallows only one CPU to process crash_kexec() and the subsequent panic\ncode.\n\nAll other CPUs call the weak function panic_smp_self_stop() that stops the\nCPU itself.  This function can be overloaded by architecture code.  For\nexample \"tile\" can use their lower-power \"nap\" instruction for that.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bec013c40bc89671d8d457944fdf7d2b8e79d651",
      "tree": "f48220571120805a319f0df876c1cc465586978e",
      "parents": [
        "6480e5a0923756b500634d9777ec4189492fbbfe"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Thu Jan 12 17:20:15 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "kdump: crashk_res init check for /sys/kernel/kexec_crash_size\n\nCurrently it is possible to set the crash_size via the sysfs\n/sys/kernel/kexec_crash_size even if no crash kernel memory has been\ndefined with the \"crashkernel\" parameter.  In this case \"crashk_res\" is\nnot initialized and crashk_res.start \u003d crashk_res.end \u003d 0.  Unfortunately\nresource_size(\u0026crashk_res) returns 1 in this case.  This breaks the s390\nimplementation of crash_(un)map_reserved_pages().\n\nTo fix the problem the correct \"old_size\" is now calculated in\ncrash_shrink_memory().  \"old_size is set to \"0\" if crashk_res is not\ninitialized.  With this change crash_shrink_memory() will do nothing, when\n\"crashk_res\" is not initialized.  It will return \"0\" for \"echo 0 \u003e\n/sys/kernel/kexec_crash_size\" and -EINVAL for \"echo [not zero] \u003e\n/sys/kernel/kexec_crash_size\".\n\nIn addition to that this patch also simplifies the \"ret \u003d -EINVAL\" vs.\n\"ret \u003d 0\" logic as suggested by Simon Horman.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nReviewed-by: Dave Young \u003cdyoung@redhat.com\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nReviewed-by: Simon Horman \u003chorms@verge.net.au\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6480e5a0923756b500634d9777ec4189492fbbfe",
      "tree": "0b1d26ce39f9b7cd28a9e82627ee837734f7c3ab",
      "parents": [
        "a3dd3323058d281abd584b15ad4c5b65064d7a61"
      ],
      "author": {
        "name": "Michael Holzheu",
        "email": "holzheu@linux.vnet.ibm.com",
        "time": "Thu Jan 12 17:20:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "kdump: add missing RAM resource in crash_shrink_memory()\n\nWhen shrinking crashkernel memory using /sys/kernel/kexec_crash_size for\nthe newly added memory no RAM resource is created at the moment.\n\nExample:\n\n  $ cat /proc/iomem\n  00000000-bfffffff : System RAM\n    00000000-005b7ac3 : Kernel code\n    005b7ac4-009743bf : Kernel data\n    009bb000-00a85c33 : Kernel bss\n  c0000000-cfffffff : Crash kernel\n  d0000000-ffffffff : System RAM\n\n  $ echo 0 \u003e /sys/kernel/kexec_crash_size\n  $ cat /proc/iomem\n  00000000-bfffffff : System RAM\n    00000000-005b7ac3 : Kernel code\n    005b7ac4-009743bf : Kernel data\n    009bb000-00a85c33 : Kernel bss\n                                   \u003c\u003c-- here is System RAM missing\n  d0000000-ffffffff : System RAM\n\nOne result of this bug is that the memory chunk can never be set offline\nusing memory hotplug.  With this patch I insert a new \"System RAM\"\nresource for the released memory.  Then the upper example looks like the\nfollowing:\n\n  $ echo 0 \u003e /sys/kernel/kexec_crash_size\n  $ cat /proc/iomem\n  00000000-bfffffff : System RAM\n    00000000-005b7ac3 : Kernel code\n    005b7ac4-009743bf : Kernel data\n    009bb000-00a85c33 : Kernel bss\n  c0000000-cfffffff : System RAM   \u003c\u003c-- new rescoure\n  d0000000-ffffffff : System RAM\n\nAnd now I can set chunk c0000000-cfffffff offline.\n\nSigned-off-by: Michael Holzheu \u003cholzheu@linux.vnet.ibm.com\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.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": "a3dd3323058d281abd584b15ad4c5b65064d7a61",
      "tree": "98c65337f9960db2d0ca55687314bb821f3e7c1f",
      "parents": [
        "9512938b885304f72c847379611d6018064af840"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Thu Jan 12 17:20:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:11 2012 -0800"
      },
      "message": "kexec: remove KMSG_DUMP_KEXEC\n\nKMSG_DUMP_KEXEC is useless because we already save kernel messages inside\n/proc/vmcore, and it is unsafe to allow modules to do other stuffs in a\ncrash dump scenario.\n\n[akpm@linux-foundation.org: fix powerpc build]\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nReported-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nAcked-by: Jarod Wilson \u003cjarod@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9402c95f34a66e81eba473a2f7267bbae5a1dee2",
      "tree": "c46628e702d625a737fedbd9de88138a94c93d1f",
      "parents": [
        "80bf007f20b16272f210e0803f739f5606cff59d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Jan 12 17:17:17 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:03 2012 -0800"
      },
      "message": "treewide: remove useless NORET_TYPE macro and uses\n\nIt\u0027s a very old and now unused prototype marking so just delete it.\n\nNeaten panic pointer argument style to keep checkpatch quiet.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@gmail.com\u003e\nCc: Hans-Christian Egtvedt \u003cegtvedt@samfundet.no\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "efeb156e7275c5b6c6e0f96aceb3c6abf98fc392",
      "tree": "651970d08c18d8934bcdcc7f01d3c9876fc2ef6a",
      "parents": [
        "a2ef990ab5a6705a356d146dd773a3b359787497"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Thu Jan 12 17:17:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 12 20:13:02 2012 -0800"
      },
      "message": "kprobes: silence DEBUG_STRICT_USER_COPY_CHECKS\u003dy warning\n\nEnabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning:\n\n  In file included from arch/x86/include/asm/uaccess.h:573,\n                   from kernel/kprobes.c:55:\n  In function \u0027copy_from_user\u0027,\n      inlined from \u0027write_enabled_file_bool\u0027 at\n      kernel/kprobes.c:2191:\n  arch/x86/include/asm/uaccess_64.h:65:\n  warning: call to \u0027copy_from_user_overflow\u0027 declared with attribute warning: copy_from_user() buffer size is not provably correct\n\npresumably due to buf_size being signed causing GCC to fail to see that\nbuf_size can\u0027t become negative.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2329abfa344a9a824bc4c71f2415528777265510",
      "tree": "7779fadc6ceba76071e3f5db0ec6a1dee41a0dfd",
      "parents": [
        "6d6a55ec0877393f467067d44b9a2a8c2e4a82d2"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 13 09:32:18 2012 +1030"
      },
      "message": "module_param: make bool parameters really bool (core code)\n\nmodule_param(bool) used to counter-intuitively take an int.  In\nfddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy\ntrick.\n\nIt\u0027s time to remove the int/unsigned int option.  For this version\nit\u0027ll simply give a warning, but it\u0027ll break next kernel version.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    }
  ],
  "next": "6d6a55ec0877393f467067d44b9a2a8c2e4a82d2"
}
