)]}'
{
  "log": [
    {
      "commit": "75c0371a2d385ecbd6e1f854d9dce20889f06736",
      "tree": "34a9988cfb3077c88a44b904f466d129b01caae9",
      "parents": [
        "4f42c288e66a3395e94158badbd182b2dae8eccb"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Mar 20 15:39:41 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 20 15:39:41 2008 -0700"
      },
      "message": "audit: netlink socket can be auto-bound to pid other than current-\u003epid (v2)\n\nFrom:\tPavel Emelyanov \u003cxemul@openvz.org\u003e\n\nThis patch is based on the one from Thomas.\n\nThe kauditd_thread() calls the netlink_unicast() and passes \nthe audit_pid to it. The audit_pid, in turn, is received from \nthe user space and the tool (I\u0027ve checked the audit v1.6.9) \nuses getpid() to pass one in the kernel. Besides, this tool \ndoesn\u0027t bind the netlink socket to this id, but simply creates \nit allowing the kernel to auto-bind one.\n\nThat\u0027s the preamble.\n\nThe problem is that netlink_autobind() _does_not_ guarantees\nthat the socket will be auto-bound to the current pid. Instead\nit uses the current pid as a hint to start looking for a free\nid. So, in case of conflict, the audit messages can be sent\nto a wrong socket. This can happen (it\u0027s unlikely, but can be)\nin case some task opens more than one netlink sockets and then\nthe audit one starts - in this case the audit\u0027s pid can be busy\nand its socket will be bound to another id.\n\nThe proposal is to introduce an audit_nlk_pid in audit subsys,\nthat will point to the netlink socket to send packets to. It\nwill most often be equal to audit_pid. The socket id can be \ngot from the skb\u0027s netlink CB right in the audit_receive_msg.\nThe audit_nlk_pid reset to 0 is not required, since all the\ndecisions are taken based on audit_pid value only.\n\nLater, if the audit tools will bind the socket themselves, the\nkernel will have to provide a way to setup the audit_nlk_pid\nas well.\n\nA good side effect of this patch is that audit_pid can later \nbe converted to struct pid, as it is not longer safe to use \npid_t-s in the presence of pid namespaces. But audit code still \nuses the tgid from task_struct in the audit_signal_info and in\nthe audit_filter_syscall.\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6a6029b8cefe0ca7e82f27f3904dbedba3de4e06",
      "tree": "a58e0590105f89be306daf01fc83473d7a3e0104",
      "parents": [
        "e22ecef1d2658ba54ed7d3fdb5d60829fb434c23"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 14 22:17:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:50 2008 +0100"
      },
      "message": "sched: simplify sched_slice()\n\nUse the existing calc_delta_mine() calculation for sched_slice(). This\nsaves a divide and simplifies the code because we share it with the\nother /cfs_rq-\u003eload users.\n\nIt also improves code size:\n\n      text    data     bss     dec     hex filename\n     42659    2740     144   45543    b1e7 sched.o.before\n     42093    2740     144   44977    afb1 sched.o.after\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "e22ecef1d2658ba54ed7d3fdb5d60829fb434c23",
      "tree": "49069e160107578ec8212d969b599e03d7a62fae",
      "parents": [
        "aa2ac25229cd4d0280f6174c42712744ad61b140"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 14 22:16:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:50 2008 +0100"
      },
      "message": "sched: fix fair sleepers\n\nFair sleepers need to scale their latency target down by runqueue\nweight. Otherwise busy systems will gain ever larger sleep bonus.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "aa2ac25229cd4d0280f6174c42712744ad61b140",
      "tree": "e4450de1bb2cd4cd56d6abf64feb862c1d542653",
      "parents": [
        "27d117266097101dcf79c4576903cdcdd0eabffc"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Mar 14 21:12:12 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:50 2008 +0100"
      },
      "message": "sched: fix overload performance: buddy wakeups\n\nCurrently we schedule to the leftmost task in the runqueue. When the\nruntimes are very short because of some server/client ping-pong,\nespecially in over-saturated workloads, this will cycle through all\ntasks trashing the cache.\n\nReduce cache trashing by keeping dependent tasks together by running\nnewly woken tasks first. However, by not running the leftmost task first\nwe could starve tasks because the wakee can gain unlimited runtime.\n\nTherefore we only run the wakee if its within a small\n(wakeup_granularity) window of the leftmost task. This preserves\nfairness, but does alternate server/client task groups.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "27d117266097101dcf79c4576903cdcdd0eabffc",
      "tree": "854e6e824b03385d71d8d7f2feb9311572bb86f2",
      "parents": [
        "e89996ae3f9e88d4fd75751a15c10b19d197e702"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 14 22:20:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:50 2008 +0100"
      },
      "message": "sched: fix calc_delta_mine()\n\nlw-\u003eweight can be 0 for a short time during bootup.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "e89996ae3f9e88d4fd75751a15c10b19d197e702",
      "tree": "b4b754697995e3ebff4e987b46167263e86ff0d8",
      "parents": [
        "3fe69747dab906cd6a8523230276a9820d6a514f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 14 23:48:28 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:49 2008 +0100"
      },
      "message": "sched: fix update_load_add()/sub()\n\nClear the cached inverse value when updating load. This is needed for\ncalc_delta_mine() to work correctly when using the rq load.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "3fe69747dab906cd6a8523230276a9820d6a514f",
      "tree": "bab43c856bd5c23a43fe641be3d1a0e85d3dd604",
      "parents": [
        "0e1f34833bd9170ccc93ab759e48e695917fa48f"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Mar 14 20:55:51 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:49 2008 +0100"
      },
      "message": "sched: min_vruntime fix\n\nCurrent min_vruntime tracking is incorrect and will cause serious\nproblems when we don\u0027t run the leftmost task for some reason.\n\nmin_vruntime does two things; 1) it\u0027s used to determine a forward\ndirection when the u64 vruntime wraps, 2) it\u0027s used to track the\nleftmost vruntime to position newly enqueued tasks from.\n\nThe current logic advances min_vruntime whenever the current task\u0027s\nvruntime advance. Because the current task may pass the leftmost task\nstill waiting we\u0027re failing the second goal. This causes new tasks to be\nplaced too far ahead and thus penalizes their runtime.\n\nFix this by making min_vruntime the min_vruntime of the waiting tasks by\ntracking it in enqueue/dequeue, and compare against current\u0027s vruntime\nto obtain the absolute minimum when placing new tasks.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0e1f34833bd9170ccc93ab759e48e695917fa48f",
      "tree": "2ca4b89dd755f2d82dbd34466a8cd6d8b5b4a0af",
      "parents": [
        "4faa8496650f9417189dacce8f933e8ec61dc032"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Mon Mar 10 11:01:20 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Mar 15 03:02:49 2008 +0100"
      },
      "message": "sched: fix race in schedule()\n\nFix a hard to trigger crash seen in the -rt kernel that also affects\nthe vanilla scheduler.\n\nThere is a race condition between schedule() and some dequeue/enqueue\nfunctions; rt_mutex_setprio(), __setscheduler() and sched_move_task().\n\nWhen scheduling to idle, idle_balance() is called to pull tasks from\nother busy processor. It might drop the rq lock. It means that those 3\nfunctions encounter on_rq\u003d0 and running\u003d1. The current task should be\nput when running.\n\nHere is a possible scenario:\n\n   CPU0                               CPU1\n    |                              schedule()\n    |                              -\u003edeactivate_task()\n    |                              -\u003eidle_balance()\n    |                              --\u003eload_balance_newidle()\nrt_mutex_setprio()                     |\n    |                              ---\u003edouble_lock_balance()\n    *get lock                          *rel lock\n    * on_rq\u003d0, ruuning\u003d1               |\n    * sched_class is changed           |\n    *rel lock                          *get lock\n    :                                  |\n                                       :\n                                   -\u003eput_prev_task_rt()\n                                   -\u003epick_next_task_fair()\n                                       \u003d\u003e panic\n\nThe current process of CPU1(P1) is scheduling. Deactivated P1, and the\nscheduler looks for another process on other CPU\u0027s runqueue because CPU1\nwill be idle. idle_balance(), load_balance_newidle() and\ndouble_lock_balance() are called and double_lock_balance() could drop\nthe rq lock. On the other hand, CPU0 is trying to boost the priority of\nP1. The result of boosting only P1\u0027s prio and sched_class are changed to\nRT. The sched entities of P1 and P1\u0027s group are never put. It makes\ncfs_rq invalid, because the cfs_rq has curr and no leaf, but\npick_next_task_fair() is called, then the kernel panics.\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "29ea5171cbd08a7ef37e543cbf02447033f0e289",
      "tree": "80d6c7f8e002117283dd1c1db4d3a915833652c7",
      "parents": [
        "b4de123a0bc4a3f0c90899864d51299628729952",
        "53471121a8aad3f0b590bfce7c95a1f5f52150f3"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Mar 13 01:59:53 2008 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Mar 13 01:59:53 2008 -0400"
      },
      "message": "Merge branches \u0027release\u0027 and \u0027doc\u0027 into release\n"
    },
    {
      "commit": "53471121a8aad3f0b590bfce7c95a1f5f52150f3",
      "tree": "badfd31e8602fab32d9b5e693c6558e32e298e7d",
      "parents": [
        "a09a20b526fde0611b49b76521e3c546a47216a5"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Mar 12 18:10:51 2008 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Mar 12 18:10:51 2008 -0400"
      },
      "message": "documentation:  Move power-related files to Documentation/power/\n\nMove 00-INDEX entries to power/00-INDEX (and add entry for\npm_qos_interface.txt).\n\nUpdate references to moved filenames.\n\nFix some trailing whitespace.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a82f7119fd940c1505fc9fdf93d835fa52bc075d",
      "tree": "e8fc2aaa6dc73da9dc2626aa6d239bdcf8c9d44d",
      "parents": [
        "baadac8b10c5ac15ce3d26b68fa266c8889b163f"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Mar 12 00:34:57 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Mar 11 23:15:55 2008 -0400"
      },
      "message": "Hibernation: Fix mark_nosave_pages()\n\nThere is a problem in the hibernation code that triggers on some NUMA\nsystems on which pfn_valid() returns \u0027true\u0027 for some PFNs that don\u0027t\nbelong to any zone.  Namely, there is a BUG_ON() in\nmemory_bm_find_bit() that triggers for PFNs not belonging to any\nzone and passing the pfn_valid() test.  On the affected systems it\ntriggers when we mark PFNs reported by the platform as not saveable,\nbecause the PFNs in question belong to a region mapped directly using\niorepam() (i.e. the ACPI data area) and they pass the pfn_valid()\ntest.\n\nModify memory_bm_find_bit() so that it returns an error if given PFN\ndoesn\u0027t belong to any zone instead of crashing the kernel and ignore\nthe result returned by it in mark_nosave_pages(), while marking the\n\"nosave\" memory regions.\n\nThis doesn\u0027t affect the hibernation functionality, as we won\u0027t touch\nthe PFNs in question anyway.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9966 .\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "08f503b0c089968b2542659a89dfd50c5c59bb0b",
      "tree": "0a88cc425c2c213a2e6384f4df0739e2e8485e8f",
      "parents": [
        "1f94ef598e8d29b92b9fc85d43c832e03721d3cb"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon Mar 10 17:59:11 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 11 14:02:58 2008 +0100"
      },
      "message": "keep rd-\u003eonline and cpu_online_map in sync\n\nIt is possible to allow the root-domain cache of online cpus to\nbecome out of sync with the global cpu_online_map.  This is because we\ncurrently trigger removal of cpus too early in the notifier chain.\nOther DOWN_PREPARE handlers may in fact run and reconfigure the\nroot-domain topology, thereby stomping on our own offline handling.\n\nThe end result is that rd-\u003eonline may become out of sync with\ncpu_online_map, which results in potential task misrouting.\n\nSo change the offline handling to be more tightly coupled with the\nglobal offline process by triggering on CPU_DYING intead of\nCPU_DOWN_PREPARE.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1f94ef598e8d29b92b9fc85d43c832e03721d3cb",
      "tree": "f9573663c4bb83a9af4d17b90c174869b50ba2b1",
      "parents": [
        "2f44bbb495dd3e6d0209eff2257438ab9c570e5b"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Mon Mar 10 16:52:41 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 11 14:02:58 2008 +0100"
      },
      "message": "Revert \"cpu hotplug: adjust root-domain-\u003eonline span in response to hotplug event\"\n\nThis reverts commit 393d94d98b19089ec172566e23557997931b137e.\n\nLets fix this right.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "21bbb39c376ce6beeeb549d155f0d53dc76ed000",
      "tree": "762d0ae6d1cd88aaa231739c3e88437e52ffa387",
      "parents": [
        "f47831fabaf0206abc56ee5a33fd006fe29b6dc6"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon Mar 10 11:43:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 10 18:01:20 2008 -0700"
      },
      "message": "rcu: move PREEMPT_RCU config option back under PREEMPT\n\nThe original preemptible-RCU patch put the choice between classic and\npreemptible RCU into kernel/Kconfig.preempt, which resulted in build failures\non machines not supporting CONFIG_PREEMPT.  This choice was therefore moved to\ninit/Kconfig, which worked, but placed the choice between classic and\npreemptible RCU at the top level, a very obtuse choice indeed.\n\nThis patch changes from the Kconfig \"choice\" mechanism to a pair of booleans,\nonly one of which (CONFIG_PREEMPT_RCU) is user-visible, and is located in\nkernel/Kconfig.preempt, where one would expect it to be.  The other\n(CONFIG_CLASSIC_RCU) is in init/Kconfig so that it is available to all\narchitectures, hopefully avoiding build breakage.  Thanks to Roman Zippel for\nsuggesting this approach.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: Josh Triplett \u003cjosh@freedesktop.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e24e2e64c468c8060bb7173abecdf11d00ed5751",
      "tree": "b03faa2fd187a207d0a2e78af75a787a66ab21fe",
      "parents": [
        "6c5db22d280302c33dafb309c25bf2841fb99c37"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Mar 10 11:43:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 10 18:01:20 2008 -0700"
      },
      "message": "modules: warn about suspicious return values from module\u0027s -\u003einit() hook\n\nReturn value convention of module\u0027s init functions is 0/-E.  Sometimes,\ne.g.  during forward-porting mistakes happen and buggy module created,\nwhere result of comparison \"workqueue !\u003d NULL\" is propagated all the way up\nto sys_init_module.  What happens is that some other module created\nworkqueue in question, our module created it again and module was\nsuccessfully loaded.\n\nOr it could be some other bug.\n\nLet\u0027s make such mistakes much more visible.  In retrospective, such\nmessages would noticeably shorten some of my head-scratching sessions.\n\nNote, that dump_stack() is just a way to get attention from user.  Sample\nmessage:\n\nsys_init_module: \u0027foo\u0027-\u003einit suspiciously returned 1, it should follow 0/-E convention\nsys_init_module: loading module anyway...\nPid: 4223, comm: modprobe Not tainted 2.6.24-25f666300625d894ebe04bac2b4b3aadb907c861 #5\n\nCall Trace:\n [\u003cffffffff80254b05\u003e] sys_init_module+0xe5/0x1d0\n [\u003cffffffff8020b39b\u003e] system_call_after_swapgs+0x7b/0x80\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c5db22d280302c33dafb309c25bf2841fb99c37",
      "tree": "0d3711b8a32646f52eca5015447256a30bc96a88",
      "parents": [
        "2668db9111bb1a6ab5a54f41f703179f35c7d098"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Mar 10 11:43:52 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 10 18:01:19 2008 -0700"
      },
      "message": "modules: fix module waiting for dependent modules\u0027 init\n\nCommit c9a3ba55 (module: wait for dependent modules doing init.) didn\u0027t quite\nwork because the waiter holds the module lock, meaning that the state of the\nmodule it\u0027s waiting for cannot change.\n\nFortunately, it\u0027s fairly simple to update the state outside the lock and do\nthe wakeup.\n\nThanks to Jan Glauber for tracking this down and testing (qdio and qeth).\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jan Glauber \u003cjang@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": "bf5a25e1fff88a1066e20cc7263329405e4939f6",
      "tree": "95822dc50801e21cf1ad1e6aa7b58af898156517",
      "parents": [
        "83f7a2c118833d3738b4d162ea3c17d0bd8ffa94",
        "10a398d04c4a1fc395840f4d040493375f562302"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Mar 09 10:06:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Mar 09 10:06:49 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt:\n  time: remove obsolete CLOCK_TICK_ADJUST\n  time: don\u0027t touch an offlined CPU\u0027s ts-\u003etick_stopped in tick_cancel_sched_timer()\n  time: prevent the loop in timespec_add_ns() from being optimised away\n  ntp: use unsigned input for do_div()\n"
    },
    {
      "commit": "393d94d98b19089ec172566e23557997931b137e",
      "tree": "62154269fd93690ffc07ad885cf371542b04ecc5",
      "parents": [
        "6efcae460186c0c1c94afff58a92784e1fc0d10b"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Sat Mar 08 00:10:15 2008 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Mar 09 10:05:14 2008 -0700"
      },
      "message": "cpu hotplug: adjust root-domain-\u003eonline span in response to hotplug event\n\nWe currently set the root-domain online span automatically when the\ndomain is added to the cpu if the cpu is already a member of\ncpu_online_map.\n\nThis was done as a hack/bug-fix for s2ram, but it also causes a problem\nwith hotplug CPU_DOWN transitioning.  The right way to fix the original\nproblem is to actually respond to CPU_UP events, instead of CPU_ONLINE,\nwhich is already too late.\n\nThis solves the hung reboot regression reported by Andrew Morton and\nothers.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "10a398d04c4a1fc395840f4d040493375f562302",
      "tree": "02096fe81b70e2baf8db35ebc9d303a1b13029c3",
      "parents": [
        "a79017660ea4597ec489fab3b5aaf71dd776dfc7"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Tue Mar 04 15:14:26 2008 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 09 08:42:57 2008 +0100"
      },
      "message": "time: remove obsolete CLOCK_TICK_ADJUST\n\nThe first version of the ntp_interval/tick_length inconsistent usage patch was\nrecently merged as bbe4d18ac2e058c56adb0cd71f49d9ed3216a405\n\nhttp://git.kernel.org/gitweb.cgi?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommit;h\u003dbbe4d18ac2e058c56adb0cd71f49d9ed3216a405\n\nWhile the fix did greatly improve the situation, it was correctly pointed out\nby Roman that it does have a small bug: If the users change clocksources after\nthe system has been running and NTP has made corrections, the correctoins made\nagainst the old clocksource will be applied against the new clocksource,\ncausing error.\n\nThe second attempt, which corrects the issue in the NTP_INTERVAL_LENGTH\ndefinition has also made it up-stream as commit\ne13a2e61dd5152f5499d2003470acf9c838eab84\n\nhttp://git.kernel.org/gitweb.cgi?p\u003dlinux/kernel/git/torvalds/linux-2.6.git;a\u003dcommit;h\u003de13a2e61dd5152f5499d2003470acf9c838eab84\n\nRoman has correctly pointed out that CLOCK_TICK_ADJUST is calculated\nbased on the PIT\u0027s frequency, and isn\u0027t really relevant to non-PIT\ndriven clocksources (that is, clocksources other then jiffies and pit).\n\nThis patch reverts both of those changes, and simply removes\nCLOCK_TICK_ADJUST.\n\nThis does remove the granularity error correction for users of PIT and Jiffies\nclocksource users, but the granularity error but for the majority of users, it\nshould be within the 500ppm range NTP can accommodate for.\n\nFor systems that have granularity errors greater then 500ppm, the\n\"ntp_tick_adj\u003d\" boot option can be used to compensate.\n\n[johnstul@us.ibm.com: provided changelog]\n[mattilinnanvuori@yahoo.com: maek ntp_tick_adj static]\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Matti Linnanvuori \u003cmattilinnanvuori@yahoo.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: mingo@elte.hu\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a79017660ea4597ec489fab3b5aaf71dd776dfc7",
      "tree": "87fedadc8d003391c9ccf5d3cf0aba69fb8e443d",
      "parents": [
        "38332cb98772f5ea757e6486bed7ed0381cb5f98"
      ],
      "author": {
        "name": "Karsten Wiese",
        "email": "fzu@wemgehoertderstaat.de",
        "time": "Tue Mar 04 14:59:55 2008 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 09 08:42:57 2008 +0100"
      },
      "message": "time: don\u0027t touch an offlined CPU\u0027s ts-\u003etick_stopped in tick_cancel_sched_timer()\n\nSilences WARN_ONs in rcu_enter_nohz() and rcu_exit_nohz(), which appeared\nbefore caused by (repeated) calls to:\n        $ echo 0 \u003e /sys/devices/system/cpu/cpu1/online\n        $ echo 1 \u003e /sys/devices/system/cpu/cpu1/online\n\nSigned-off-by: Karsten Wiese \u003cfzu@wemgehoertderstaat.de\u003e\nCc: johnstul@us.ibm.com\nCc: Rafael Wysocki \u003crjw@sisk.pl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "e48af19f56eb47a1f908ee8f16df9d246f955b21",
      "tree": "39a6769d80f125f6cfd4721a900e4b897ea15fbb",
      "parents": [
        "84c6f6046c5a2189160a8f0dca8b90427bf690ea"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Feb 25 18:31:57 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 09 08:42:57 2008 +0100"
      },
      "message": "ntp: use unsigned input for do_div()\n\nThe kernel NTP code shouldn\u0027t hand 64-bit *signed* values to do_div().  Make it\ninstead hand 64-bit unsigned values.  This gets rid of a couple of warnings.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6efcae460186c0c1c94afff58a92784e1fc0d10b",
      "tree": "da67b86b65e8dde1f52245e25b1889f87cc96b4e",
      "parents": [
        "84c6f6046c5a2189160a8f0dca8b90427bf690ea"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Sat Mar 08 11:41:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Mar 08 11:54:00 2008 -0800"
      },
      "message": "Fix waitid si_code regression\n\nIn commit ee7c82da830ea860b1f9274f1f0cdf99f206e7c2 (\"wait_task_stopped:\nsimplify and fix races with SIGCONT/SIGKILL/untrace\"), the magic (short)\ncast when storing si_code was lost in wait_task_stopped.  This leaks the\nin-kernel CLD_* values that do not match what userland expects.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "521f1a2489c41f8b1181b0a8eb52e1c34284d50b",
      "tree": "cfe339df98dcb65aaae6c45021ac92cdf60c6540",
      "parents": [
        "2692a2406b9262bbb101708815be99ec2988e48b"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Thu Feb 28 15:21:56 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:43:00 2008 +0100"
      },
      "message": "sched: don\u0027t allow rt_runtime_us to be zero for groups having rt tasks\n\nThis patch checks if we can set the rt_runtime_us to 0. If there is a\nrealtime task in the group, we don\u0027t want to set the rt_runtime_us as 0\nor bad things will happen. (that task wont get any CPU time despite\nbeing TASK_RUNNNG)\n\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2692a2406b9262bbb101708815be99ec2988e48b",
      "tree": "5f956c6f28e7e83f5a1c57e2724b1739da25da30",
      "parents": [
        "1868f958eb56fc41c5985c8732e564a400c5fdf5"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 27 12:00:46 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:43:00 2008 +0100"
      },
      "message": "sched: rt-group: fixup schedulability constraints calculation\n\nit was only possible to configure the rt-group scheduling parameters\nbeyond the default value in a very small range.\n\nthat\u0027s because div64_64() has a different calling convention than\ndo_div() :/\n\nfix a few untidies while we are here; sysctl_sched_rt_period may overflow\ndue to that multiplication, so cast to u64 first. Also that RUNTIME_INF\njuggling makes little sense although its an effective NOP.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1868f958eb56fc41c5985c8732e564a400c5fdf5",
      "tree": "4f8d83e487e5fa93e3d773591a26eda02d1b387d",
      "parents": [
        "150d8bede7f85eb00d8f4d628e6b0bae68739e3b"
      ],
      "author": {
        "name": "Miao Xie",
        "email": "miaox@cn.fujitsu.com",
        "time": "Fri Mar 07 09:35:06 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:43:00 2008 +0100"
      },
      "message": "sched: fix the wrong time slice value for SCHED_FIFO tasks\n\nFunction sys_sched_rr_get_interval returns wrong time slice value for\nSCHED_FIFO tasks. The time slice for SCHED_FIFO tasks should be 0.\n\nSigned-off-by: Miao Xie \u003cmiaox@cn.fujitsu.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "150d8bede7f85eb00d8f4d628e6b0bae68739e3b",
      "tree": "aa740c10b82ca59bd983713ef19569d9538b0373",
      "parents": [
        "6fa46fa526f2cab9ce21fa5e39501553a40d196d"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Wed Mar 05 16:56:37 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:43:00 2008 +0100"
      },
      "message": "sched: export task_nice\n\nThe API is trivial, and so is the implementation.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6fa46fa526f2cab9ce21fa5e39501553a40d196d",
      "tree": "5b89e31c030c1b5a780da7c73c031bc7df656a18",
      "parents": [
        "810b38179e9e4d4f57b4b733767bb08f8291a965"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Mar 05 10:00:12 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:43:00 2008 +0100"
      },
      "message": "sched: balance RT task resched only on runqueue\n\nSripathi Kodi reported a crash in the -rt kernel:\n\n  https://bugzilla.redhat.com/show_bug.cgi?id\u003d435674\n\nthis is due to a place that can reschedule a task without holding\nthe tasks runqueue lock.  This was caused by the RT balancing code\nthat pulls RT tasks to the current run queue and will reschedule the\ncurrent task.\n\nThere\u0027s a slight chance that the pulling of the RT tasks will release\nthe current runqueue\u0027s lock and retake it (in the double_lock_balance).\nDuring this time that the runqueue is released, the current task can\nmigrate to another runqueue.\n\nIn the prio_changed_rt code, after the pull, if the current task is of\nlesser priority than one of the RT tasks pulled, resched_task is called\non the current task. If the current task had migrated in that small\nwindow, resched_task will be called without holding the runqueue lock\nfor the runqueue that the task is on.\n\nThis race condition also exists in the mainline kernel and this patch\nadds a check to make sure the task hasn\u0027t migrated before calling\nresched_task.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nTested-by: Sripathi Kodi \u003csripathik@in.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "810b38179e9e4d4f57b4b733767bb08f8291a965",
      "tree": "91692de4fbd46879b29d803839b5bf7e25f30cd8",
      "parents": [
        "ce4796d1e16cf3761dc2a02b8d588667d05b3078"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Feb 29 15:21:01 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 07 16:42:59 2008 +0100"
      },
      "message": "sched: retain vruntime\n\nKei Tokunaga reported an interactivity problem when moving tasks\nbetween control groups.\n\nTasks would retain their old vruntime when moved between groups, this\ncan cause funny lags. Re-set the vruntime on group move to fit within\nthe new tree.\n\nReported-by: Kei Tokunaga \u003ctokunaga.keiich@jp.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "41f7f60d31e5e1dfc9a92957b3e14e08a2f04964",
      "tree": "a55c1c8106c31abf49ac8d1684fa946512b5c2dd",
      "parents": [
        "103926c689650396901002c3a8c38970fff70391"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Tue Mar 04 23:32:38 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Mar 05 17:53:33 2008 -0800"
      },
      "message": "cpusets: fix obsolete comment\n\nmm migration is no longer done in cpuset_update_task_memory_state() so it\ncan no longer take current-\u003emm-\u003emmap_sem, so fix the obsolete comment.\n\n[ This changed in commit 04c19fa6f16047abff2288ddbc1f0798ede5a849\n  (\"cpuset: migrate all tasks in cpuset at once\") when the mm migration\n  was moved from cpuset_update_task_memory_state() to update_nodemask() ]\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b37ccfc637be27d9a652fcedc35e6e782c3aa78",
      "tree": "525fd97d130c630ff5e65de2d83823174986a6a5",
      "parents": [
        "27d0483aa1ef66a8877d71b63bb97f46ab0246b2"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Thu Feb 28 17:11:02 2008 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 20:29:40 2008 -0800"
      },
      "message": "module: allow ndiswrapper to use GPL-only symbols\n\nA change after 2.6.24 broke ndiswrapper by accidentally removing its\naccess to GPL-only symbols.  Revert that change and add comments about\nthe reasons why ndiswrapper and driverloader are treated in a special\nway.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nAcked-by: Greg KH \u003cgregkh@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jon Masters \u003cjonathan@jonmasters.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2a5cd6938879b5bcfef0a73c28fea84c49519c2",
      "tree": "e2039a9f7a4766dbea703c6ed32db881863efc1d",
      "parents": [
        "1913130553aa231644eb4e955b1a2c533fe33d17"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "mhiramat@redhat.com",
        "time": "Tue Mar 04 14:29:44 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:19 2008 -0800"
      },
      "message": "kprobes: fix a null pointer bug in register_kretprobe()\n\nFix a bug in regiseter_kretprobe() which does not check rp-\u003ekp.symbol_name \u003d\u003d\nNULL before calling kprobe_lookup_name.\n\nFor maintainability, this introduces kprobe_addr helper function which\nresolves addr field.  It is used by register_kprobe and register_kretprobe.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "544adb41077a10d299a1094f12ec55a5843a9bdb",
      "tree": "c865b4792e67fcd96171a514c3a649fcce0cde39",
      "parents": [
        "7088655477b51a5a248fa54190388e1283ba7ebf"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Mar 04 14:29:00 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:14 2008 -0800"
      },
      "message": "markers: don\u0027t risk NULL deref in marker\n\nget_marker() may return NULL, so test for it.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9edddaa200df18e08fe0cf21036e8ae467b1363c",
      "tree": "26f5319fac24fb6c76b1276b19725caeb5ec24bc",
      "parents": [
        "8182ec49a73729334f5a6c65a607ba7009ebd6d6"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Tue Mar 04 14:28:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:11 2008 -0800"
      },
      "message": "Kprobes: indicate kretprobe support in Kconfig\n\nAdd CONFIG_HAVE_KRETPROBES to the arch/\u003carch\u003e/Kconfig file for relevant\narchitectures with kprobes support.  This facilitates easy handling of\nin-kernel modules (like samples/kprobes/kretprobe_example.c) that depend on\nkretprobes being present in the kernel.\n\nThanks to Sam Ravnborg for helping make the patch more lean.\n\nPer Mathieu\u0027s suggestion, added CONFIG_KRETPROBES and fixed up dependencies.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb78922ce9c71b24c4af1ffc9c3d60c57ac471fb",
      "tree": "c3d4217b33f6843171e487b993040edbfbdf3b22",
      "parents": [
        "a10568733cdff03cac742955c7254585451f5431"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Tue Mar 04 14:28:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:09 2008 -0800"
      },
      "message": "Memory Resource Controller use strstrip while parsing arguments\n\nThe memory controller has a requirement that while writing values, we need\nto use echo -n. This patch fixes the problem and makes the UI more consistent.\n\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6abdb0e6ca5c2c0a7caa4131da2af0750927e72",
      "tree": "608c153a6c4b8feca409092bcc14c0710917a4da",
      "parents": [
        "fcab59a3186640ce085e89ee6dfc03cacfb6c7c9"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Tue Mar 04 14:28:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:09 2008 -0800"
      },
      "message": "cgroup: fix default notify_on_release setting\n\nThe documentation says the default value of notify_on_release of a child\ncgroup is inherited from its parent, which is reasonable, but the\nimplementation just sets the flag disabled.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "87baa2bb904ed46f872385fe430b6cfb80967835",
      "tree": "36d9a0c365bfafe2a3c76b98a9b83b0d57809c9f",
      "parents": [
        "34f10fc9886450c2e8a336f7022805c4a73e10f1",
        "62fb185130e4d420f71a30ff59d8b16b74ef5d2b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 09:23:28 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 09:23:28 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-devel:\n  sched: revert load_balance_monitor() changes\n"
    },
    {
      "commit": "62fb185130e4d420f71a30ff59d8b16b74ef5d2b",
      "tree": "474c0824a5bf90950b0a430a11a52b358c9e1f31",
      "parents": [
        "976dde010e513a9c7c3117a32b7b015f84b37430"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 25 17:34:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 04 17:54:06 2008 +0100"
      },
      "message": "sched: revert load_balance_monitor() changes\n\nThe following commits cause a number of regressions:\n\n  commit 58e2d4ca581167c2a079f4ee02be2f0bc52e8729\n  Author: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\n  Date:   Fri Jan 25 21:08:00 2008 +0100\n  sched: group scheduling, change how cpu load is calculated\n\n  commit 6b2d7700266b9402e12824e11e0099ae6a4a6a79\n  Author: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\n  Date:   Fri Jan 25 21:08:00 2008 +0100\n  sched: group scheduler, fix fairness of cpu bandwidth allocation for task groups\n\nNamely:\n - very frequent wakeups on SMP, reported by PowerTop users.\n - cacheline trashing on (large) SMP\n - some latencies larger than 500ms\n\nWhile there is a mergeable patch to fix the latter, the former issues\nare not fixable in a manner suitable for .25 (we\u0027re at -rc3 now).\n\nHence we revert them and try again in v2.6.26.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCC: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nTested-by: Alexey Zaytsev \u003calexey.zaytsev@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13b1c3d4b49bd83d861c775ca2db54e1692a1b07",
      "tree": "6cefdfef300d3431f2b2b32ec86000b0132bd762",
      "parents": [
        "976dde010e513a9c7c3117a32b7b015f84b37430"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Mon Mar 03 20:22:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 07:59:54 2008 -0800"
      },
      "message": "freezer vs stopped or traced\n\nThis changes the \"freezer\" code used by suspend/hibernate in its treatment\nof tasks in TASK_STOPPED (job control stop) and TASK_TRACED (ptrace) states.\n\nAs I understand it, the intent of the \"freezer\" is to hold all tasks\nfrom doing anything significant.  For this purpose, TASK_STOPPED and\nTASK_TRACED are \"frozen enough\".  It\u0027s possible the tasks might resume\nfrom ptrace calls (if the tracer were unfrozen) or from signals\n(including ones that could come via timer interrupts, etc).  But this\ndoesn\u0027t matter as long as they quickly block again while \"freezing\" is\nin effect.  Some minor adjustments to the signal.c code make sure that\ntry_to_freeze() very shortly follows all wakeups from both kinds of\nstop.  This lets the freezer code safely leave stopped tasks unmolested.\n\nChanging this fixes the longstanding bug of seeing after resuming from\nsuspend/hibernate your shell report \"[1] Stopped\" and the like for all\nyour jobs stopped by ^Z et al, as if you had freshly fg\u0027d and ^Z\u0027d them.\nIt also removes from the freezer the arcane special case treatment for\nptrace\u0027d tasks, which relied on intimate knowledge of ptrace internals.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "821c7de7194e77afee1a69d50830a329a6d9af9f",
      "tree": "6755cb5f57822c142b228ad8ca817c18b8f31884",
      "parents": [
        "05e83df624fe682bb8571cdb2c6d5284a99c3066"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Mar 02 21:44:44 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 03 14:53:16 2008 -0800"
      },
      "message": "exit_notify: fix kill_orphaned_pgrp() usage with mt exit\n\n1. exit_notify() always calls kill_orphaned_pgrp(). This is wrong, we\n   should do this only when the whole process exits.\n\n2. exit_notify() uses \"current\" as \"ignored_task\", obviously wrong.\n   Use -\u003egroup_leader instead.\n\nTest case:\n\n\tvoid hup(int sig)\n\t{\n\t\tprintf(\"HUP received\\n\");\n\t}\n\n\tvoid *tfunc(void *arg)\n\t{\n\t\tsleep(2);\n\t\tprintf(\"sub-thread exited\\n\");\n\t\treturn NULL;\n\t}\n\n\tint main(int argc, char *argv[])\n\t{\n\t\tif (!fork()) {\n\t\t\tsignal(SIGHUP, hup);\n\t\t\tkill(getpid(), SIGSTOP);\n\t\t\texit(0);\n\t\t}\n\n\t\tpthread_t thr;\n\t\tpthread_create(\u0026thr, NULL, tfunc, NULL);\n\n\t\tsleep(1);\n\t\tprintf(\"main thread exited\\n\");\n\t\tsyscall(__NR_exit, 0);\n\n\t\treturn 0;\n\t}\n\noutput:\n\n\tmain thread exited\n\tHUP received\n\tHangup\n\nWith this patch the output is:\n\n\tmain thread exited\n\tsub-thread exited\n\tHUP received\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "05e83df624fe682bb8571cdb2c6d5284a99c3066",
      "tree": "c55df1d1258f2fae4069aa7954a2c74ba1831192",
      "parents": [
        "f49ee505b1ecb5960984880740f09aba87f870dc"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Mar 02 21:44:42 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 03 14:53:16 2008 -0800"
      },
      "message": "will_become_orphaned_pgrp: partially fix insufficient -\u003eexit_state check\n\np-\u003eexit_state !\u003d 0 doesn\u0027t mean this process is dead, it may have\nsub-threads.  Change the code to use \"p-\u003eexit_state \u0026\u0026 thread_group_empty(p)\"\ninstead.\n\nWithout this patch, ^Z doesn\u0027t deliver SIGTSTP to the foreground process\nif the main thread has exited.\n\nHowever, the new check is not perfect either.  There is a window when\nexit_notify() drops tasklist and before release_task().  Suppose that\nthe last (non-leader) thread exits.  This means that entire group exits,\nbut thread_group_empty() is not true yet.\n\nAs Eric pointed out, is_global_init() is wrong as well, but I did not\ndare to do other changes.\n\nJust for the record, has_stopped_jobs() is absolutely wrong too.  But we\ncan\u0027t fix it now, we should first fix SIGNAL_STOP_STOPPED issues.\n\nEven with this patch ^Z doesn\u0027t play well with the dead main thread.\nThe task is stopped correctly but do_wait(WSTOPPED) won\u0027t see it.  This\nis another unrelated issue, will be (hopefully) fixed separately.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f49ee505b1ecb5960984880740f09aba87f870dc",
      "tree": "2ff1289ecd2741d3f9d3a298662bc9b5a6266a3d",
      "parents": [
        "5ce2087ed0eb424e0889bdc9102727f65d2ecdde"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Mar 02 21:44:40 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 03 14:53:16 2008 -0800"
      },
      "message": "introduce kill_orphaned_pgrp() helper\n\nFactor out the common code in reparent_thread() and exit_notify().\n\nNo functional changes.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d07a67cface19ac07d7324f38bda7bbb06bbdb2",
      "tree": "4706fb5efe2ecdcfa9edac84f7a2682555808fff",
      "parents": [
        "b29ee87e9b441e72454efd1be56aa1a05ffb2f58"
      ],
      "author": {
        "name": "Steve Grubb",
        "email": "sgrubb@redhat.com",
        "time": "Thu Feb 21 16:59:22 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 01 07:16:06 2008 -0500"
      },
      "message": "[PATCH] drop EOE records from printk\n\nHi,\n\nWhile we are looking at the printk issue, I see that its printk\u0027ing the EOE\n(end of event) records which is really not something that we need in syslog.\nIts really intended for the realtime audit event stream handled by the audit\ndaemon. So, lets avoid printk\u0027ing that record type.\n\nSigned-off-by: Steve Grubb \u003csgrubb@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "b29ee87e9b441e72454efd1be56aa1a05ffb2f58",
      "tree": "03003a0f8cc126cd2ef3577f0db836e5d30ae22a",
      "parents": [
        "422b03cf75e11dfdfb29b0f19709bac585335f86"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Thu Feb 21 15:53:05 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 01 07:16:06 2008 -0500"
      },
      "message": "[RFC] AUDIT: do not panic when printk loses messages\n\nOn the latest kernels if one was to load about 15 rules, set the failure\nstate to panic, and then run service auditd stop the kernel will panic.\nThis is because auditd stops, then the script deletes all of the rules.\nThese deletions are sent as audit messages out of the printk kernel\ninterface which is already known to be lossy.  These will overun the\ndefault kernel rate limiting (10 really fast messages) and will call\naudit_panic().  The same effect can happen if a slew of avc\u0027s come\nthrough while auditd is stopped.\n\nThis can be fixed a number of ways but this patch fixes the problem by\njust not panicing if auditd is not running.  We know printk is lossy and\nif the user chooses to set the failure mode to panic and tries to use\nprintk we can\u0027t make any promises no matter how hard we try, so why try?\nAt least in this way we continue to get lost message accounting and will\neventually know that things went bad.\n\nThe other change is to add a new call to audit_log_lost() if auditd\ndisappears.  We already pulled the skb off the queue and couldn\u0027t send\nit so that message is lost.  At least this way we will account for the\nlast message and panic if the machine is configured to panic.  This code\npath should only be run if auditd dies for unforeseen reasons.  If\nauditd closes correctly audit_pid will get set to 0 and we won\u0027t walk\nthis code path.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "422b03cf75e11dfdfb29b0f19709bac585335f86",
      "tree": "16cecc0fe134f019159d704760d0277febe60d01",
      "parents": [
        "d395991c117d43bfca97101a931a41d062a93852"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Wed Feb 27 10:39:22 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 01 07:16:06 2008 -0500"
      },
      "message": "[PATCH] Audit: Fix the format type for size_t variables\n\nFix the following compiler warning by using \"%zu\" as defined in C99.\n\n  CC      kernel/auditsc.o\n  kernel/auditsc.c: In function \u0027audit_log_single_execve_arg\u0027:\n  kernel/auditsc.c:1074: warning: format \u0027%ld\u0027 expects type \u0027long int\u0027, but\n  argument 4 has type \u0027size_t\u0027\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c9e71002aacc9821e99531dcc130db88bbc8ad05",
      "tree": "2446b59e33eccc53ff8a04179588296bc43c0f0f",
      "parents": [
        "ae778869ae4549628b9e83efe958c3aaa63ed1b9"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Thu Feb 28 11:51:07 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 29 20:21:13 2008 +0100"
      },
      "message": "rcupreempt: remove never-migrates assumption from rcu_process_callbacks()\n\nThis patch fixes a potentially invalid access to a per-CPU variable in\nrcu_process_callbacks().\n\nThis per-CPU access needs to be done in such a way as to guarantee that\nthe code using it cannot move to some other CPU before all uses of the\nvalue accessed have completed.  Even though this code is currently only\ninvoked from softirq context, which currrently cannot migrate to some\nother CPU, life would be better if this code did not silently make such\nan assumption.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ae778869ae4549628b9e83efe958c3aaa63ed1b9",
      "tree": "97e36cffbc042f0982bfc8c3d17572c3329b1578",
      "parents": [
        "076d84bbdb396360d16aaa108c55aa1e24ad47a3"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Feb 27 16:21:10 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 29 20:21:13 2008 +0100"
      },
      "message": "rcupreempt: fix hibernate/resume in presence of PREEMPT_RCU and hotplug\n\nThis fixes a oops encountered when doing hibernate/resume in presence of\nPREEMPT_RCU.\n\nThe problem was that the code failed to disable preemption when\naccessing a per-CPU variable.  This is OK when called from code that\nalready has preemption disabled, but such is not the case from the\nsuspend/resume code path.\n\nReported-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nTested-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7be2a03e3174cee3a3cdcdf17db357470f51caff",
      "tree": "fcc341251c8fcab1b950d7bda25de9ca09fc5363",
      "parents": [
        "2232c2d8e0a6a31061dec311f3d1cf7624bc14f1"
      ],
      "author": {
        "name": "Dmitry Adamushko",
        "email": "dmitry.adamushko@gmail.com",
        "time": "Fri Feb 08 15:41:13 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 29 18:46:53 2008 +0100"
      },
      "message": "softlockup: fix task state setting\n\nkthread_stop() can be called when a \u0027watchdog\u0027 thread is executing after\nkthread_should_stop() but before set_task_state(TASK_INTERRUPTIBLE).\n\nSigned-off-by: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2232c2d8e0a6a31061dec311f3d1cf7624bc14f1",
      "tree": "1d90ec0b8bd4e3c154e386f005ef596ee25fa53f",
      "parents": [
        "c0f4133b8f70769bc8dda977feb9a29109d6ccca"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Feb 29 18:46:50 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 29 18:46:50 2008 +0100"
      },
      "message": "rcu: add support for dynamic ticks and preempt rcu\n\nThe PREEMPT-RCU can get stuck if a CPU goes idle and NO_HZ is set. The\nidle CPU will not progress the RCU through its grace period and a\nsynchronize_rcu my get stuck. Without this patch I have a box that will\nnot boot when PREEMPT_RCU and NO_HZ are set. That same box boots fine\nwith this patch.\n\nThis patch comes from the -rt kernel where it has been tested for\nseveral months.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3fca96eed1cc9fb524aec536bba8ae921563f1bb",
      "tree": "474cdcc572b3433f01f221ea8857414bde53b7a2",
      "parents": [
        "98c1fc934c097d84dc30c639e9bdb0b992ef53e2",
        "1481197b50114d7212d659d41cb97f31a8934883"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 26 07:49:15 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 26 07:49:15 2008 -0800"
      },
      "message": "Merge branch \u0027v2.6.25-rc3-lockdep\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep\n\n* \u0027v2.6.25-rc3-lockdep\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep:\n  Subject: lockdep: include all lock classes in all_lock_classes\n  lockdep: increase MAX_LOCK_DEPTH\n"
    },
    {
      "commit": "37c00b84d0c1b5c4c65ae837e2235160c03e84c2",
      "tree": "9c1437e98d4ea05dcb368fe7f1288f979bf701a1",
      "parents": [
        "cf3680b90c7842cf91ed857ac4528f4e057da366",
        "13d77c37cab2bb906022309e1e7182c327e49916"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 26 07:43:31 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 26 07:43:31 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:\n  latencytop: change /proc task_struct access method\n  latencytop: fix memory leak on latency proc file\n  latencytop: fix kernel panic while reading latency proc file\n  sched: add declaration of sched_tail to sched.h\n  sched: fix signedness warnings in sched.c\n  sched: clean up __pick_last_entity() a bit\n  sched: remove duplicate code from sched_fair.c\n  sched: make early bootup sched_clock() use safer\n"
    },
    {
      "commit": "cf3680b90c7842cf91ed857ac4528f4e057da366",
      "tree": "f73af36b208fab34620808f0075cc54f51cfdfb0",
      "parents": [
        "bfa274e2436fc7ef72ef51c878083647f1cfd429"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Feb 14 10:32:07 2008 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 26 07:42:37 2008 -0800"
      },
      "message": "printk: fix possible printk overrun\n\nprintk recursion detection prepends message to printk_buf and offsets\nprintk_buf when actual message is printed but it forgets to trim buffer\nlength accordingly. This can result in overrun in extreme cases. Fix it.\n\n[ mingo@elte.hu:\n\n  bug was introduced by me via:\n\n   commit 32a76006683f7b28ae3cc491da37716e002f198e\n   Author: Ingo Molnar \u003cmingo@elte.hu\u003e\n   Date:   Fri Jan 25 21:07:58 2008 +0100\n\n       printk: make printk more robust by not allowing recursion\n]\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1481197b50114d7212d659d41cb97f31a8934883",
      "tree": "c3ad3133cef46f64d3a6dbb9773591bcf29b87f9",
      "parents": [
        "bdb9441e9c325d50b5ae17f7d3205d65b8ed2e5f"
      ],
      "author": {
        "name": "Dale Farnsworth",
        "email": "dale@farnsworth.org",
        "time": "Mon Feb 25 23:03:02 2008 +0100"
      },
      "committer": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Feb 25 23:03:02 2008 +0100"
      },
      "message": "Subject: lockdep: include all lock classes in all_lock_classes\nAdd each lock class to the all_lock_classes list when it is\nfirst registered.\n\nPreviously, lock classes were added to all_lock_classes when\nthe lock class was first used.  Since one of the uses of the\nlist is to find unused locks, this didn\u0027t work well.\n\nSigned-off-by: Dale Farnsworth \u003cdale@farnsworth.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "67ca7bde2e9d3516b5ae0188330ad1059ac03f38",
      "tree": "770b1a1c7ed520d984b5de3c588c2e96368daafa",
      "parents": [
        "7eee3e677d6e2e9007afcd7d79b0715525aa552e"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Feb 15 09:56:36 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 25 16:34:17 2008 +0100"
      },
      "message": "sched: fix signedness warnings in sched.c\n\nUnsigned long values are always assigned to switch_count,\nmake it unsigned long.\n\nkernel/sched.c:3897:15: warning: incorrect type in assignment (different signedness)\nkernel/sched.c:3897:15:    expected long *switch_count\nkernel/sched.c:3897:15:    got unsigned long *\u003cnoident\u003e\nkernel/sched.c:3921:16: warning: incorrect type in assignment (different signedness)\nkernel/sched.c:3921:16:    expected long *switch_count\nkernel/sched.c:3921:16:    got unsigned long *\u003cnoident\u003e\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7eee3e677d6e2e9007afcd7d79b0715525aa552e",
      "tree": "ab6f80a178701aa07fd045f65c2c6ef3596fec13",
      "parents": [
        "70eee74b70c1a8485ec5f2bafa13dbc66fab6e02"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 22 10:32:21 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 25 16:34:17 2008 +0100"
      },
      "message": "sched: clean up __pick_last_entity() a bit\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "70eee74b70c1a8485ec5f2bafa13dbc66fab6e02",
      "tree": "837c9a55d3c21221b8f7b29a468fb6d366f3dc4c",
      "parents": [
        "6892b75e60557a48c01d57ba320419a9e2ce9846"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Fri Feb 22 13:25:53 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 25 16:34:17 2008 +0100"
      },
      "message": "sched: remove duplicate code from sched_fair.c\n\npick_task_entity() duplicates existing code. This functionality can be\neasily obtained using rb_last(). Avoid code duplication by using rb_last().\n\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6892b75e60557a48c01d57ba320419a9e2ce9846",
      "tree": "2ba5c725d4723385e88b0a54e8bb4be5b9e38384",
      "parents": [
        "bfa274e2436fc7ef72ef51c878083647f1cfd429"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 14:02:36 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 25 16:34:16 2008 +0100"
      },
      "message": "sched: make early bootup sched_clock() use safer\n\ndo not call sched_clock() too early. Not only might rq-\u003eidle\nnot be set up - but pure per-cpu data might not be accessible\neither.\n\nthis solves an ia64 early bootup hang with CONFIG_PRINTK_TIME\u003dy.\n\nTested-by: Tony Luck \u003ctony.luck@gmail.com\u003e\nAcked-by: Tony Luck \u003ctony.luck@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "04e2f1741d235ba599037734878d72e57cb302b5",
      "tree": "5d4b05f9645370a40ce436aa6da18dc0b885d19c",
      "parents": [
        "0a3716eb04ccfdbef6e872a343ba7ce309237e79"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 18:05:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 18:05:03 2008 -0800"
      },
      "message": "Add memory barrier semantics to wake_up() \u0026 co\n\nOleg Nesterov and others have pointed out that on some architectures,\nthe traditional sequence of\n\n\tset_current_state(TASK_INTERRUPTIBLE);\n\tif (CONDITION)\n\t\treturn;\n\tschedule();\n\nis racy wrt another CPU doing\n\n\tCONDITION \u003d 1;\n\twake_up_process(p);\n\nbecause while set_current_state() has a memory barrier separating\nsetting of the TASK_INTERRUPTIBLE state from reading of the CONDITION\nvariable, there is no such memory barrier on the wakeup side.\n\nNow, wake_up_process() does actually take a spinlock before it reads and\nsets the task state on the waking side, and on x86 (and many other\narchitectures) that spinlock is in fact equivalent to a memory barrier,\nbut that is not generally guaranteed.  The write that sets CONDITION\ncould move into the critical region protected by the runqueue spinlock.\n\nHowever, adding a smp_wmb() to before the spinlock should now order the\nwriting of CONDITION wrt the lock itself, which in turn is ordered wrt\nthe accesses within the spinlock (which includes the reading of the old\nstate).\n\nThis should thus close the race (which probably has never been seen in\npractice, but since smp_wmb() is a no-op on x86, it\u0027s not like this will\nmake anything worse either on the most common architecture where the\nspinlock already gave the required protection).\n\nAcked-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Dmitry Adamushko \u003cdmitry.adamushko@gmail.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bc231d2a048010d5e0b49ac7fddbfa822fc41109",
      "tree": "5f38e9f917070a73e3de83d9e602c752b2e4c696",
      "parents": [
        "68db38f1537a44097e264f28bda751d6b919cd53"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Feb 23 15:24:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:25 2008 -0800"
      },
      "message": "cgroup: remove dead code in cgroup_get_rootdir()\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "68db38f1537a44097e264f28bda751d6b919cd53",
      "tree": "efc311bb2825ea0ce78189dcc6a2704f9adecd9b",
      "parents": [
        "8d53d55d27754508e58e9ac18a4a445b110434bf"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Feb 23 15:24:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:25 2008 -0800"
      },
      "message": "cgroup: remove duplicate code in find_css_set()\n\nThe list head res-\u003etasks gets initialized twice in find_css_set().\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d53d55d27754508e58e9ac18a4a445b110434bf",
      "tree": "01bca7d82eb92c8e199c44ec37e7a70bb0a4a898",
      "parents": [
        "f777073848ba3708d68d87e43f104f83316187d7"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Feb 23 15:24:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:24 2008 -0800"
      },
      "message": "cgroup: fix subsys bitops\n\nCgroup uses unsigned long for subsys bitops, not unsigned long long.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f777073848ba3708d68d87e43f104f83316187d7",
      "tree": "4eb0e5e36e70165c4eb7d41673bacd70423a986d",
      "parents": [
        "ffd2d883399cbbb641e55730676ce1ec4845d99d"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Feb 23 15:24:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:24 2008 -0800"
      },
      "message": "cgroup: fix memory leak in cgroup_get_sb()\n\nopts.release_agent is not kfree()ed in all necessary places.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a043e3b2c63445512c5592cbe3c8694f3c655e81",
      "tree": "abfc3d3f475c32c7df14ada9fc4461b731628bd2",
      "parents": [
        "d19e0583300da82a6e27cd2116f558048502edaa"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Sat Feb 23 15:24:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:24 2008 -0800"
      },
      "message": "cgroup: fix comments\n\nfix:\n- comments about need_forkexit_callback\n- comments about release agent\n- typo and comment style, etc.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43627582799db317e966ecb0002c2c3c9805ec0f",
      "tree": "fcfd50780b438d0ec04830faa857de9b86665e76",
      "parents": [
        "0835ab53eab5bbeebe1c135e92fb0c4d483dde17"
      ],
      "author": {
        "name": "Srinivasa Ds",
        "email": "srinivasa@in.ibm.com",
        "time": "Sat Feb 23 15:24:04 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:13:24 2008 -0800"
      },
      "message": "kprobes: refuse kprobe insertion on add/sub_preempt_counter()\n\nKprobes makes use of preempt_disable(),preempt_enable_noresched() and these\nfunctions inturn call add/sub_preempt_count().  So we need to refuse user from\ninserting probe in to these functions.\n\nThis patch disallows user from probing add/sub_preempt_count().\n\nSigned-off-by: Srinivasa DS \u003csrinivasa@in.ibm.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.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": "a0c1e9073ef7428a14309cba010633a6cd6719ea",
      "tree": "05ce792ddcde92e73d1bae4c8e20f607a2e7db40",
      "parents": [
        "3e4ab747efa8e78562ec6782b08bbf21a00aba1b"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 23 15:23:57 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:15 2008 -0800"
      },
      "message": "futex: runtime enable pi and robust functionality\n\nNot all architectures implement futex_atomic_cmpxchg_inatomic().  The default\nimplementation returns -ENOSYS, which is currently not handled inside of the\nfutex guts.\n\nFutex PI calls and robust list exits with a held futex result in an endless\nloop in the futex code on architectures which have no support.\n\nFixing up every place where futex_atomic_cmpxchg_inatomic() is called would\nadd a fair amount of extra if/else constructs to the already complex code.  It\nis also not possible to disable the robust feature before user space tries to\nregister robust lists.\n\nCompile time disabling is not a good idea either, as there are already\narchitectures with runtime detection of futex_atomic_cmpxchg_inatomic support.\n\nDetect the functionality at runtime instead by calling\ncmpxchg_futex_value_locked() with a NULL pointer from the futex initialization\ncode.  This is guaranteed to fail, but the call of\nfutex_atomic_cmpxchg_inatomic() happens with pagefaults disabled.\n\nOn architectures, which use the asm-generic implementation or have a runtime\nCPU feature detection, a -ENOSYS return value disables the PI/robust features.\n\nOn architectures with a working implementation the call returns -EFAULT and\nthe PI/robust features are enabled.\n\nThe relevant syscalls return -ENOSYS and the robust list exit code is blocked,\nwhen the detection fails.\n\nFixes http://lkml.org/lkml/2008/2/11/149\nOriginally reported by: Lennart Buytenhek\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nCc: Riku Voipio \u003criku.voipio@movial.fi\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e4ab747efa8e78562ec6782b08bbf21a00aba1b",
      "tree": "755b76c9f382a808c718a0289193602038b14c9b",
      "parents": [
        "43fe105a5c91b2f00ea7f900ed307fe980410612"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 23 15:23:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:15 2008 -0800"
      },
      "message": "futex: fix init order\n\nWhen the futex init code fails to initialize the futex pseudo file system it\nreturns early without initializing the hash queues.  Should the boot succeed\nthen a futex syscall which tries to enqueue a waiter on the hashqueue will\ncrash due to the unitilialized plist heads.\n\nInitialize the hash queues before the filesystem.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nCc: Riku Voipio \u003criku.voipio@movial.fi\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de4fc64f0f2a4efbaad3e7c1e1e05a28f69b45e5",
      "tree": "f4516d0e71c25a8c278057bfb818129a32afb7a4",
      "parents": [
        "094972840f2e7c1c6fc9e1a97d817cc17085378e"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Sat Feb 23 15:23:33 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 17:12:14 2008 -0800"
      },
      "message": "markers: fix sparse warnings in markers.c\n\nchar can be unsigned\nkernel/marker.c:64:20: error: dubious one-bit signed bitfield\nkernel/marker.c:65:14: error: dubious one-bit signed bitfield\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3a2d5b700132f35401f1d9e22fe3c2cab02c2549",
      "tree": "ad991428c41aee92a5f78b06bf73430af0e6f7ae",
      "parents": [
        "39273b58a409cd6d65c9732bdca00bacd1626672"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Feb 23 19:13:25 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Feb 23 10:40:04 2008 -0800"
      },
      "message": "PM: Introduce PM_EVENT_HIBERNATE callback state\n\nDuring the last step of hibernation in the \"platform\" mode (with the\nhelp of ACPI) we use the suspend code, including the devices\u0027\n-\u003esuspend() methods, to prepare the system for entering the ACPI S4\nsystem sleep state.\n\nBut at least for some devices the operations performed by the\n-\u003esuspend() callback in that case must be different from its operations\nduring regular suspend.\n\nFor this reason, introduce the new PM event type PM_EVENT_HIBERNATE and\npass it to the device drivers\u0027 -\u003esuspend() methods during the last phase\nof hibernation, so that they can distinguish this case and handle it as\nappropriate.  Modify the drivers that handle PM_EVENT_SUSPEND in a\nspecial way and need to handle PM_EVENT_HIBERNATE in the same way.\n\nThese changes are necessary to fix a hibernation regression related\nto the i915 driver (ref. http://lkml.org/lkml/2008/2/22/488).\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nTested-by: Jeff Chua \u003cjeff.chua.linux@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20f8d2a49360980f1dc0afe2ea227e3ba887e575",
      "tree": "d2891d4604d3fd40da7a21650d07f83e73ae8d8e",
      "parents": [
        "e6364cd3a1a3e7c3e9a80bad15698afe6cc7ee75",
        "1f1519ef597ae4628dbd47244f0f68d700231523"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 21 16:33:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 21 16:33:19 2008 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: (26 commits)\n  PM: Make suspend_device() static\n  PCI ACPI: Fix comment describing acpi_pci_choose_state\n  Hibernation: Handle DEBUG_PAGEALLOC on x86\n  ACPI: fix build warning\n  ACPI: TSC breaks atkbd suspend\n  ACPI: remove is_processor_present prototype\n  acer-wmi: Add DMI match for mail LED on Acer TravelMate 4200 series\n  ACPI: sparse fix, replace macro with static function\n  ACPI: thinkpad-acpi: add tablet-mode reporting\n  ACPI: thinkpad-acpi: minor hotkey_radio_sw fixes\n  ACPI: thinkpad-acpi: improve thinkpad-acpi input device documentation\n  ACPI: thinkpad-acpi: issue input events for tablet swivel events\n  ACPI: thinkpad-acpi: make the video output feature optional\n  ACPI: thinkpad-acpi: synchronize input device switches\n  ACPI: thinkpad-acpi: always track input device open/close\n  ACPI: thinkpad-acpi: trivial fix to documentation\n  ACPI: thinkpad-acpi: trivial fix to module_desc typo\n  intel_menlo: extract return values using PTR_ERR\n  ACPI video: check for error from thermal_cooling_device_register\n  ACPI thermal: extract return values using PTR_ERR\n  ...\n"
    },
    {
      "commit": "120fc3d77acfd91f3521737a440d42839c475982",
      "tree": "8f13e2fbad7f5aeafcf0a2bf6a235bddcbede6a3",
      "parents": [
        "58dc3232ff77158460f79e3c1932b81e8a2a0194"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Feb 21 00:33:20 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 21 15:27:08 2008 -0800"
      },
      "message": "modules: do not try to add sysfs attributes if !CONFIG_SYSFS\n\nThanks to Alexey for the testing and the fix of the fix.\n\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8a235efad548abd2ab5ebea45a9ffa750c814375",
      "tree": "9b8c6c1fa3d2e28d9bb198d7019cba8883d5299e",
      "parents": [
        "e80af3a8dbbbf431b2070cc760699f01c5a6ac69"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Feb 20 01:47:44 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 21 02:15:28 2008 -0500"
      },
      "message": "Hibernation: Handle DEBUG_PAGEALLOC on x86\n\nMake hibernation work with CONFIG_DEBUG_PAGEALLOC set on x86, by\nchecking if the pages to be copied are marked as present in the\nkernel mapping and temporarily marking them as present if that\u0027s not\nthe case.  No functional modifications are introduced if\nCONFIG_DEBUG_PAGEALLOC is unset.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "89d694b9dbe769ca1004e01db0ca43964806a611",
      "tree": "b8fd51348034a4b09547ea0137d4ac467f6987fa",
      "parents": [
        "188fd89d539d899bfca2bc83534e5508e0161139"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 18 18:25:17 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 19 10:43:58 2008 +0100"
      },
      "message": "genirq: do not leave interupts enabled on free_irq\n\nThe default_disable() function was changed in commit:\n\n 76d2160147f43f982dfe881404cfde9fd0a9da21\n genirq: do not mask interrupts by default\n\nIt removed the mask function in favour of the default delayed\ninterrupt disabling. Unfortunately this also broke the shutdown in\nfree_irq() when the last handler is removed from the interrupt for\nthose architectures which rely on the default implementations. Now we\ncan end up with a enabled interrupt line after the last handler was\nremoved, which can result in spurious interrupts.\n\nFix this by adding a default_shutdown function, which is only\ninstalled, when the irqchip implementation does provide neither a\nshutdown nor a disable function.\n\n[@stable: affected versions: .21 - .24 ]\n\nPointed-out-by: Michael Hennerich \u003cMichael.Hennerich@analog.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: stable@kernel.org\nTested-by: Michael Hennerich \u003cMichael.Hennerich@analog.com\u003e\n\n"
    },
    {
      "commit": "188fd89d539d899bfca2bc83534e5508e0161139",
      "tree": "ffe14a3752c248b2b452f2b13a203a1de982cfae",
      "parents": [
        "9a4c8546f3e7c893888bccc2b3416d6214f2664a"
      ],
      "author": {
        "name": "S.Caglar Onur",
        "email": "caglar@pardus.org.tr",
        "time": "Thu Feb 14 17:36:51 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 19 10:43:58 2008 +0100"
      },
      "message": "genirq: spurious.c: use time_* macros\n\nThe functions time_before, time_before_eq, time_after, and\ntime_after_eq are more robust for comparing jiffies against other\nvalues.\n\nSo following patch implements usage of the time_after() macro, defined\nat linux/jiffies.h, which deals with wrapping correctly\n\nSigned-off-by: S.Caglar Onur \u003ccaglar@pardus.org.tr\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b0abcfc14605b2a8c686bd8e193ab05b01a7980b",
      "tree": "cb07f92693df0135ac546b965b909b48d7645dde",
      "parents": [
        "f702c5815696bfca095cc1173fff6995c4d39844"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Feb 18 18:23:16 2008 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 18 18:46:28 2008 -0800"
      },
      "message": "Audit: use \u003d\u003d not \u003d in if statements\n\nClearly this was supposed to be an \u003d\u003d not an \u003d in the if statement.\nThis patch also causes us to stop processing execve args once we have\nfailed rather than continuing to loop on failure over and over and over.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db4315d6f53edc2cc0b0b06fce1beffebb119c71",
      "tree": "4c0c4a3f86e9f319e6aeda3210e33a51b38a7fba",
      "parents": [
        "1309d4e68497184d2fd87e892ddf14076c2bda98"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Tue Feb 05 00:48:13 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 17 17:29:38 2008 +0100"
      },
      "message": "timer_list: print relative expiry time signed\n\nRelative expiry time can get negative, so it should be signed.\n\nSigned-off-by: Pavel Machek \u003cPavel@suse.cz\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "c24ce1d88781b4d2b8232967630abaa1c90724cf",
      "tree": "2de9f0d6f43cdd5135ebaefdd7a77e6326fd66f1",
      "parents": [
        "f527cf405017e60ceb28f84e2d60ab16fc34f209",
        "63070a79ba482c274bad10ac8c4b587a3e011f2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:27:52 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:27:52 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt:\n  hrtimer: catch expired CLOCK_REALTIME timers early\n  hrtimer: check relative timeouts for overflow\n"
    },
    {
      "commit": "cf28b4863f9ee8f122e8ff3ac0d403e07ba9c6d9",
      "tree": "65c91f6911b34c32e517938289621ce0e7baeaf3",
      "parents": [
        "c32c2f63a9d6c953aaf168c0b2551da9734f76d2"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:38:44 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:17:09 2008 -0800"
      },
      "message": "d_path: Make d_path() use a struct path\n\nd_path() is used on a \u003cdentry,vfsmount\u003e pair.  Lets use a struct path to\nreflect this.\n\n[akpm@linux-foundation.org: fix build in mm/memory.c]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: Bryan Wu \u003cbryan.wu@analog.com\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Michael Halcrow \u003cmhalcrow@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": "44707fdf5938ad269ea5d6c5744d82f6a7328746",
      "tree": "7eb1704418eb41b859ad24bc48f6400135474d87",
      "parents": [
        "a03a8a709a0c34b61b7aea1d54a0473a6b941fdb"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:38:33 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:17:08 2008 -0800"
      },
      "message": "d_path: Use struct path in struct avc_audit_data\n\naudit_log_d_path() is a d_path() wrapper that is used by the audit code.  To\nuse a struct path in audit_log_d_path() I need to embed it into struct\navc_audit_data.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ac08c39a16f72c2d3e845cb6849a1392fa03e80",
      "tree": "d7603571e9ab3ea4b57b7901211320e48d0c5ed8",
      "parents": [
        "5dd784d04924be5d8bc066aded0ec3274b20e612"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:38 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Use struct path in fs_struct\n\n* Use struct path in fs_struct.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d957f9bf87da74f420424d16ece005202bbebd3",
      "tree": "363d4770c0c74a536524c99ccd2762ce96ee9bbe",
      "parents": [
        "4ac9137858e08a19f29feac4e1f4df7c268b0ba5"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Introduce path_put()\n\n* Add path_put() functions for releasing a reference to the dentry and\n  vfsmount of a struct path in the right order\n\n* Switch from path_release(nd) to path_put(\u0026nd-\u003epath)\n\n* Rename dput_path() to path_put_conditional()\n\n[akpm@linux-foundation.org: fix cifs]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: \u003clinux-fsdevel@vger.kernel.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Steven French \u003csfrench@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": "4ac9137858e08a19f29feac4e1f4df7c268b0ba5",
      "tree": "f5b5d84fd12fcc2b0ba0e7ce1a79ff381ad8f5dd",
      "parents": [
        "c5e725f33b733a77de622e91b6ba5645fcf070be"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:33 2008 -0800"
      },
      "message": "Embed a struct path into struct nameidata instead of nd-\u003e{dentry,mnt}\n\nThis is the central patch of a cleanup series. In most cases there is no good\nreason why someone would want to use a dentry for itself. This series reflects\nthat fact and embeds a struct path into nameidata.\n\nTogether with the other patches of this series\n- it enforced the correct order of getting/releasing the reference count on\n  \u003cdentry,vfsmount\u003e pairs\n- it prepares the VFS for stacking support since it is essential to have a\n  struct path in every place where the stack can be traversed\n- it reduces the overall code size:\n\nwithout patch series:\n   text    data     bss     dec     hex filename\n5321639  858418  715768 6895825  6938d1 vmlinux\n\nwith patch series:\n   text    data     bss     dec     hex filename\n5320026  858418  715768 6894212  693284 vmlinux\n\nThis patch:\n\nSwitch from nd-\u003e{dentry,mnt} to nd-\u003epath.{dentry,mnt} everywhere.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix cifs]\n[akpm@linux-foundation.org: fix smack]\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db74ece990ea59a9ec9f00f8881026059ef5caf5",
      "tree": "78de32a720defaeee1ab17d1de7b04a508fe0979",
      "parents": [
        "0d63e4f9ea61df1d727bd52a174aba732e6e1853"
      ],
      "author": {
        "name": "Jan Blunck",
        "email": "jblunck@suse.de",
        "time": "Thu Feb 14 19:34:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Feb 14 21:13:32 2008 -0800"
      },
      "message": "Dont touch fs_struct in usermodehelper\n\nThis test seems to be unnecessary since we always have rootfs mounted before\ncalling a usermodehelper.\n\nSigned-off-by: Andreas Gruenbacher \u003cagruen@suse.de\u003e\nSigned-off-by: Jan Blunck \u003cjblunck@suse.de\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "63070a79ba482c274bad10ac8c4b587a3e011f2c",
      "tree": "1ecb5e104d343d3e533b2469c54e6a1bcb19a9ac",
      "parents": [
        "5a7780e725d1bb4c3094fcc12f1c5c5faea1e988"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 14 00:58:36 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 14 22:08:30 2008 +0100"
      },
      "message": "hrtimer: catch expired CLOCK_REALTIME timers early\n\nA CLOCK_REALTIME timer, which has an absolute expiry time less than\nthe clock realtime offset calls with a negative delta into the clock\nevents code and triggers the WARN_ON() there.\n\nThis is a false positive and needs to be prevented. Check the result\nof timer-\u003eexpires - timer-\u003ebase-\u003eoffset right away and return -ETIME\nright away.\n\nThanks to Frans Pop, who reported the problem and tested the fixes.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Frans Pop \u003celendil@planet.nl\u003e\n"
    },
    {
      "commit": "5a7780e725d1bb4c3094fcc12f1c5c5faea1e988",
      "tree": "50fc5cde427f3854d0b84ba1037fef3fb4693e11",
      "parents": [
        "e760e716d47b48caf98da348368fd41b4a9b9e7e"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 13 09:20:43 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Feb 14 22:08:30 2008 +0100"
      },
      "message": "hrtimer: check relative timeouts for overflow\n\nVarious user space callers ask for relative timeouts. While we fixed\nthat overflow issue in hrtimer_start(), the sites which convert\nrelative user space values to absolute timeouts themself were uncovered.\n\nInstead of putting overflow checks into each place add a function\nwhich does the sanity checking and convert all affected callers to use\nit.\n\nThanks to Frans Pop, who reported the problem and tested the fixes.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nTested-by: Frans Pop \u003celendil@planet.nl\u003e\n\n"
    },
    {
      "commit": "fb40bd78b0f91b274879cf5db8facd1e04b6052e",
      "tree": "2347ccb5ad07f58ab5a4eb41174bb7b54d5f0c5b",
      "parents": [
        "9170d2f6e1dc4d79650fbf492d1cd45291c66504"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Wed Feb 13 15:03:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:20 2008 -0800"
      },
      "message": "Linux Kernel Markers: support multiple probes\n\nRCU style multiple probes support for the Linux Kernel Markers.  Common case\n(one probe) is still fast and does not require dynamic allocation or a\nsupplementary pointer dereference on the fast path.\n\n- Move preempt disable from the marker site to the callback.\n\nSince we now have an internal callback, move the preempt disable/enable to the\ncallback instead of the marker site.\n\nSince the callback change is done asynchronously (passing from a handler that\nsupports arguments to a handler that does not setup the arguments is no\narguments are passed), we can safely update it even if it is outside the\npreempt disable section.\n\n- Move probe arm to probe connection. Now, a connected probe is automatically\n  armed.\n\nRemove MARK_MAX_FORMAT_LEN, unused.\n\nThis patch modifies the Linux Kernel Markers API : it removes the probe\n\"arm/disarm\" and changes the probe function prototype : it now expects a\nva_list * instead of a \"...\".\n\nIf we want to have more than one probe connected to a marker at a given\ntime (LTTng, or blktrace, ssytemtap) then we need this patch. Without it,\nconnecting a second probe handler to a marker will fail.\n\nIt allow us, for instance, to do interesting combinations :\n\nDo standard tracing with LTTng and, eventually, to compute statistics\nwith SystemTAP, or to have a special trigger on an event that would call\na systemtap script which would stop flight recorder tracing.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Mike Mason \u003cmmlnx@us.ibm.com\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: David Smith \u003cdsmith@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "064d9efe947542097be669581f82d6b097e81d1a",
      "tree": "ddfc9f1c4d60135a7d7a1c5ebb7d0e85f683cfcb",
      "parents": [
        "2695a14d315c014474ccadbaed40b0169b00cb5b"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Wed Feb 13 15:03:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:18 2008 -0800"
      },
      "message": "hugetlb: fix overcommit locking\n\nproc_doulongvec_minmax() calls copy_to_user()/copy_from_user(), so we can\u0027t\nhold hugetlb_lock over the call.  Use a dummy variable to store the sysctl\nresult, like in hugetlb_sysctl_handler(), then grab the lock to update\nnr_overcommit_huge_pages.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nReported-by: Miles Lane \u003cmiles.lane@gmail.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b5606c2d4447e80b1d72406af4e78af1eda611d4",
      "tree": "ebdaa1a0aae4279b84af82651c16a8777f76bfe4",
      "parents": [
        "fbf6bfca76d50abef478ba902b8597ecbadfd390"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Feb 13 15:03:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:18 2008 -0800"
      },
      "message": "remove final fastcall users\n\nfastcall always expands to empty, remove it.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@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": "fbf6bfca76d50abef478ba902b8597ecbadfd390",
      "tree": "e18c2d44937ad35f9478fa8520fbeb7508e8e4b9",
      "parents": [
        "b3c97528689619fc66569b30bf83d09d9929521a"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Feb 13 15:03:15 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 16:21:18 2008 -0800"
      },
      "message": "rcupdate: fix comment\n\nThis comment caused some consternation during fastcall removal.  Make it\ntruthful.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Harvey Harrison \u003charvey.harrison@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": "3174ffaa939d8f771019f83761c668b1d5c1973b",
      "tree": "bcc73b265f225c33983d8935250f61b8ccadd51e",
      "parents": [
        "d7ab95f8c54aed896ad739f261f79ed945472aca",
        "b68aa2300cabeb96801369a4bb37a4f19f59ed84"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 08:22:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 13 08:22:41 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:\n  sched: rt-group: refure unrunnable tasks\n  sched: rt-group: clean up the ifdeffery\n  sched: rt-group: make rt groups scheduling configurable\n  sched: rt-group: interface\n  sched: rt-group: deal with PI\n  sched: fix incorrect irq lock usage in normalize_rt_tasks()\n  sched: fair-group: separate tg-\u003eshares from task_group_lock\n  hrtimer: more hrtimer_init_sleeper() fallout.\n"
    },
    {
      "commit": "b68aa2300cabeb96801369a4bb37a4f19f59ed84",
      "tree": "f596af1a8d6da83982a1203b1021f4af7ed1f3f5",
      "parents": [
        "bccbe08a60973c873e6af6fdb9ec11ffb1a6e4de"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "message": "sched: rt-group: refure unrunnable tasks\n\nRefuse to accept or create RT tasks in groups that can\u0027t run them.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bccbe08a60973c873e6af6fdb9ec11ffb1a6e4de",
      "tree": "c0bc3eb67de4cb85f0de7d5b9c699ed5cc9386ff",
      "parents": [
        "052f1dc7eb02300b05170ae341ccd03b76207778"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "message": "sched: rt-group: clean up the ifdeffery\n\nClean up some of the excessive ifdeffery introduces in the last patch.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "052f1dc7eb02300b05170ae341ccd03b76207778",
      "tree": "f58630b7876ae9e4308c0577e36aa13318b7bcfc",
      "parents": [
        "9f0c1e560c43327b70998e6c702b2f01321130d9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:40 2008 +0100"
      },
      "message": "sched: rt-group: make rt groups scheduling configurable\n\nMake the rt group scheduler compile time configurable.\nKeep it experimental for now.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9f0c1e560c43327b70998e6c702b2f01321130d9",
      "tree": "b2cc7ef5bb0dc9d7d2912de339bff3e0db3530c9",
      "parents": [
        "23b0fdfc9299b137bd126e9dc22f62a59dae546d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "message": "sched: rt-group: interface\n\nChange the rt_ratio interface to rt_runtime_us, to match rt_period_us.\nThis avoids picking a granularity for the ratio.\n\nExtend the /sys/kernel/uids/\u003cuid\u003e/ interface to allow setting\nthe group\u0027s rt_runtime.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23b0fdfc9299b137bd126e9dc22f62a59dae546d",
      "tree": "22019172c555109b69a73da76561d99d7776c4f7",
      "parents": [
        "4cf5d77a6eefaa7a464bc34e8cb767356f10fd74"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "message": "sched: rt-group: deal with PI\n\nSteven mentioned the fun case where a lock holding task will be throttled.\n\nSimple fix: allow groups that have boosted tasks to run anyway.\n\nIf a runnable task in a throttled group gets boosted the dequeue/enqueue\ndone by rt_mutex_setprio() is enough to unthrottle the group.\n\nThis is ofcourse not quite correct. Two possible ways forward are:\n  - second prio array for boosted tasks\n  - boost to a prio ceiling (this would also work for deadline scheduling)\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4cf5d77a6eefaa7a464bc34e8cb767356f10fd74",
      "tree": "ad011b73207b6c8523189b873d8b1c3757d84e12",
      "parents": [
        "8ed3699682be75fd68281239c202ad3830f9c72d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "message": "sched: fix incorrect irq lock usage in normalize_rt_tasks()\n\nlockdep spotted this bogus irq locking. normalize_rt_tasks() can be called\nfrom hardirq context through sysrq-n\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8ed3699682be75fd68281239c202ad3830f9c72d",
      "tree": "5af86fb155e475e906e14dc6aa5aa5a890cca7a2",
      "parents": [
        "720a2592cf1b9af86f30c44e8d89348826c03372"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:39 2008 +0100"
      },
      "message": "sched: fair-group: separate tg-\u003eshares from task_group_lock\n\nOn Mon, 2008-02-11 at 15:09 +0300, Denis V. Lunev wrote:\n\u003e BUG: sleeping function called from invalid context\n\u003e at /home/den/src/linux-netns26/kernel/mutex.c:209\n\u003e in_atomic():1, irqs_disabled():0\n\u003e no locks held by swapper/0.\n\u003e Pid: 0, comm: swapper Not tainted 2.6.24 #304\n\u003e\n\u003e Call Trace:\n\u003e  \u003cIRQ\u003e  [\u003cffffffff80252d1e\u003e] ? __debug_show_held_locks+0x15/0x27\n\u003e  [\u003cffffffff8022c2a8\u003e] __might_sleep+0xc0/0xdf\n\u003e  [\u003cffffffff8049f1df\u003e] mutex_lock_nested+0x28/0x2a9\n\u003e  [\u003cffffffff80231294\u003e] sched_destroy_group+0x18/0xea\n\u003e  [\u003cffffffff8023e835\u003e] sched_destroy_user+0xd/0xf\n\u003e  [\u003cffffffff8023e8c1\u003e] free_uid+0x8a/0xab\n\u003e  [\u003cffffffff80233e24\u003e] __put_task_struct+0x3f/0xd3\n\u003e  [\u003cffffffff80236708\u003e] delayed_put_task_struct+0x23/0x25\n\u003e  [\u003cffffffff8026fda7\u003e] __rcu_process_callbacks+0x8d/0x215\n\u003e  [\u003cffffffff8026ff52\u003e] rcu_process_callbacks+0x23/0x44\n\u003e  [\u003cffffffff8023a2ae\u003e] __do_softirq+0x79/0xf8\n\u003e  [\u003cffffffff8020f8c3\u003e] ? profile_pc+0x2a/0x67\n\u003e  [\u003cffffffff8020d38c\u003e] call_softirq+0x1c/0x30\n\u003e  [\u003cffffffff8020f689\u003e] do_softirq+0x61/0x9c\n\u003e  [\u003cffffffff8023a233\u003e] irq_exit+0x51/0x53\n\u003e  [\u003cffffffff8021bd1a\u003e] smp_apic_timer_interrupt+0x77/0xad\n\u003e  [\u003cffffffff8020ce3b\u003e] apic_timer_interrupt+0x6b/0x70\n\u003e  \u003cEOI\u003e  [\u003cffffffff8020b0dd\u003e] ? default_idle+0x43/0x76\n\u003e  [\u003cffffffff8020b0db\u003e] ? default_idle+0x41/0x76\n\u003e  [\u003cffffffff8020b09a\u003e] ? default_idle+0x0/0x76\n\u003e  [\u003cffffffff8020b186\u003e] ? cpu_idle+0x76/0x98\n\nseparate the tg-\u003eshares protection from the task_group lock.\n\nReported-by: Denis V. Lunev \u003cden@openvz.org\u003e\nTested-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "720a2592cf1b9af86f30c44e8d89348826c03372",
      "tree": "491a01a3b915fee449a8454e5b8fd523a24d375e",
      "parents": [
        "96b5a46e2a72dc1829370c87053e0cd558d58bc0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 13 15:45:36 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 13 15:45:36 2008 +0100"
      },
      "message": "hrtimer: more hrtimer_init_sleeper() fallout.\n\nMissed an instance...\n\n  futex_lock_pi()\n    hrtimer_init_sleeper()\n    rt_mutex_timed_lock()\n      rt_mutex_timed_fastlock()\n        rt_mutex_slowlock()\n          hrtimer_start()\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c98aa86df3169e5d6275305376043134caa69831",
      "tree": "2c6f7f675b62748c6db3bf7ce316b5977f12305c",
      "parents": [
        "96b5a46e2a72dc1829370c87053e0cd558d58bc0"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Tue Feb 12 13:52:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 12 14:29:26 2008 -0800"
      },
      "message": "timeconst.pl: correct reversal of USEC_TO_HZ and HZ_TO_USEC\n\nThe USEC_TO_HZ and HZ_TO_USEC constant sets were mislabelled, with\nseriously incorrect results.  This among other things manifested\nitself as cpufreq not working when a tickless kernel was configured.\n\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nTested-by: Carlos R. Mafra \u003ccrmafra@ift.unesp.br\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c289b074b66e2e59c65aba73f40b99e797e92d2f",
      "tree": "03ecf2381f33941e8d84e1d5b2d8e106109ea7da",
      "parents": [
        "416529374b4793ba2d2e97e736d108a2e0f3ef07"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 01 20:41:30 2008 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 10 10:48:03 2008 +0100"
      },
      "message": "hrtimer: don\u0027t modify restart_block-\u003efn in restart functions\n\nhrtimer_nanosleep_restart() clears/restores restart_block-\u003efn. This is\npointless and complicates its usage. Note that if sys_restart_syscall()\ndoesn\u0027t actually happen, we have a bogus \"pending\" restart-\u003efn anyway,\nthis is harmless.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Pavel Emelyanov \u003cxemul@sw.ru\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Toyo Abe \u003ctoyoa@mvista.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "416529374b4793ba2d2e97e736d108a2e0f3ef07",
      "tree": "2523182bf1dd501aeef28a2c578d86b95cd90683",
      "parents": [
        "080344b98805553f9b01de0f59a41b1533036d8d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 01 20:35:31 2008 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 10 10:48:03 2008 +0100"
      },
      "message": "hrtimer: fix *rmtp/restarts handling in compat_sys_nanosleep()\n\nSpotted by Pavel Emelyanov and Alexey Dobriyan.\n\ncompat_sys_nanosleep() implicitly uses hrtimer_nanosleep_restart(), this can\u0027t\nwork. Make a suitable compat_nanosleep_restart() helper.\n\nIntroduced by commit c70878b4e0b6cf8d2f1e46319e48e821ef4a8aba\nhrtimer: hook compat_sys_nanosleep up to high res timer code\n\nAlso, set -\u003eaddr_limit \u003d KERNEL_DS before doing hrtimer_nanosleep(), this func\nwas changed by the previous patch and now takes the \"__user *\" parameter.\n\nThanks to Ingo Molnar for fixing the bug in this patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Pavel Emelyanov \u003cxemul@sw.ru\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Toyo Abe \u003ctoyoa@mvista.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "080344b98805553f9b01de0f59a41b1533036d8d",
      "tree": "df56b37cca4b0ce233967682526158b58fa151b9",
      "parents": [
        "e13a2e61dd5152f5499d2003470acf9c838eab84"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 01 17:29:05 2008 +0300"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 10 10:48:03 2008 +0100"
      },
      "message": "hrtimer: fix *rmtp handling in hrtimer_nanosleep()\n\nSpotted by Pavel Emelyanov and Alexey Dobriyan.\n\nhrtimer_nanosleep() sets restart_block-\u003earg1 \u003d rmtp, but this rmtp points to\nthe local variable which lives in the caller\u0027s stack frame. This means that\nif sys_restart_syscall() actually happens and it is interrupted as well, we\ndon\u0027t update the user-space variable, but write into the already dead stack\nframe.\n\nIntroduced by commit 04c227140fed77587432667a574b14736a06dd7f\nhrtimer: Rework hrtimer_nanosleep to make sys_compat_nanosleep easier\n\nChange the callers to pass \"__user *rmtp\" to hrtimer_nanosleep(), and change\nhrtimer_nanosleep() to use copy_to_user() to actually update *rmtp.\n\nSmall problem remains. man 2 nanosleep states that *rtmp should be written if\nnanosleep() was interrupted (it says nothing whether it is OK to update *rmtp\nif nanosleep returns 0), but (with or without this patch) we can dirty *rem\neven if nanosleep() returns 0.\n\nNOTE: this patch doesn\u0027t change compat_sys_nanosleep(), because it has other\nbugs. Fixed by the next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: Pavel Emelyanov \u003cxemul@sw.ru\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Toyo Abe \u003ctoyoa@mvista.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n include/linux/hrtimer.h |    2 -\n kernel/hrtimer.c        |   51 +++++++++++++++++++++++++-----------------------\n kernel/posix-timers.c   |   14 +------------\n 3 files changed, 30 insertions(+), 37 deletions(-)\n\n"
    }
  ],
  "next": "e13a2e61dd5152f5499d2003470acf9c838eab84"
}
