)]}'
{
  "log": [
    {
      "commit": "4293f20c19f44ca66e5ac836b411d25e14b9f185",
      "tree": "4f9ab09ca1f775907af2a78ebb8754b945570d39",
      "parents": [
        "dac12d1f5ef228e132c2457dc214e0703533b016"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 07 08:21:19 2012 -0800"
      },
      "message": "Revert \"CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\"\n\nThis reverts commit 8f2f748b0656257153bcf0941df8d6060acc5ca6.\n\nIt causes some odd regression that we have not figured out, and it\u0027s too\nlate in the -rc series to try to figure it out now.\n\nAs reported by Konstantin Khlebnikov, it causes consistent hangs on his\nlaptop (Thinkpad x220: 2x cores + HT).  They can be avoided by adding\ncalls to \"rebuild_sched_domains();\" in cpuset_cpu_[in]active() for the\nCPU_{ONLINE/DOWN_FAILED/DOWN_PREPARE}_FROZEN cases, but it\u0027s not at all\nclear why, and it makes no sense.\n\nKonstantin\u0027s config doesn\u0027t even have CONFIG_CPUSETS enabled, just to\nmake things even more interesting.  So it\u0027s not the cpusets, it\u0027s just\nthe scheduling domains.\n\nSo until this is understood, revert.\n\nBisected-reported-and-tested-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f2f748b0656257153bcf0941df8d6060acc5ca6",
      "tree": "960e37a40212b88dd25be216addf7381c87c84fe",
      "parents": [
        "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565"
      ],
      "author": {
        "name": "Srivatsa S. Bhat",
        "email": "srivatsa.bhat@linux.vnet.ibm.com",
        "time": "Thu Feb 23 15:27:15 2012 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Feb 27 11:38:13 2012 +0100"
      },
      "message": "CPU hotplug, cpusets, suspend: Don\u0027t touch cpusets during suspend/resume\n\nCurrently, during CPU hotplug, the cpuset callbacks modify the cpusets\nto reflect the state of the system, and this handling is asymmetric.\nThat is, upon CPU offline, that CPU is removed from all cpusets. However\nwhen it comes back online, it is put back only to the root cpuset.\n\nThis gives rise to a significant problem during suspend/resume. During\nsuspend, we offline all non-boot cpus and during resume we online them back.\nWhich means, after a resume, all cpusets (except the root cpuset) will be\nrestricted to just one single CPU (the boot cpu). But the whole point of\nsuspend/resume is to restore the system to a state which is as close as\npossible to how it was before suspend.\n\nSo to fix this, don\u0027t touch cpusets during suspend/resume. That is, modify\nthe cpuset-related CPU hotplug callback to just ignore CPU hotplug when it\nis initiated as part of the suspend/resume sequence.\n\nReported-by: Prashanth Nageshappa \u003cprashanth@linux.vnet.ibm.com\u003e\nSigned-off-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/4F460D7B.1020703@linux.vnet.ibm.com\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8c79a045fd590a26e81e75f5d8d4ec5c7d23e565",
      "tree": "8123849709e37dc2394373ad40cf333b2f19ebb5",
      "parents": [
        "719741d9986572d64b47c35c09f5e7bb8d389400"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Jan 30 14:51:37 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 22 12:06:55 2012 +0100"
      },
      "message": "sched/events: Revert trace_sched_stat_sleeptime()\n\nCommit 1ac9bc69 (\"sched/tracing: Add a new tracepoint for sleeptime\")\nadded a new sched:sched_stat_sleeptime tracepoint.\n\nIt\u0027s broken: the first sample we get on a task might be bad because\nof a stale sleep_start value that wasn\u0027t reset at the last task switch\nbecause the tracepoint was not active.\n\nIt also breaks the existing schedstat samples due to the side\neffects of:\n\n-               se-\u003estatistics.sleep_start \u003d 0;\n...\n-               se-\u003estatistics.block_start \u003d 0;\n\nNor do I see means to fix it without adding overhead to the scheduler\nfast path, which I\u0027m not willing to for the sake of redundant\ninstrumentation.\n\nMost importantly, sleep time information can already be constructed\nby tracing context switches and wakeups, and taking the timestamp\ndifference between the schedule-out, the wakeup and the schedule-in.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-pc4c9qhl8q6vg3bs4j6k0rbd@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb297a3e433dbdcf7ad81e0564e7b804c941ff0d",
      "tree": "1b6dde74b50fa074e7eec8bd6ef5adacff9b6ce1",
      "parents": [
        "b5740f4b2cb3503b436925eb2242bc3d75cd3dfe"
      ],
      "author": {
        "name": "Chanho Min",
        "email": "chanho0207@gmail.com",
        "time": "Thu Jan 05 20:00:19 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 27 12:49:41 2012 +0100"
      },
      "message": "sched/rt: Fix task stack corruption under __ARCH_WANT_INTERRUPTS_ON_CTXSW\n\nThis issue happens under the following conditions:\n\n 1. preemption is off\n 2. __ARCH_WANT_INTERRUPTS_ON_CTXSW is defined\n 3. RT scheduling class\n 4. SMP system\n\nSequence is as follows:\n\n 1.suppose current task is A. start schedule()\n 2.task A is enqueued pushable task at the entry of schedule()\n   __schedule\n    prev \u003d rq-\u003ecurr;\n    ...\n    put_prev_task\n     put_prev_task_rt\n      enqueue_pushable_task\n 4.pick the task B as next task.\n   next \u003d pick_next_task(rq);\n 3.rq-\u003ecurr set to task B and context_switch is started.\n   rq-\u003ecurr \u003d next;\n 4.At the entry of context_swtich, release this cpu\u0027s rq-\u003elock.\n   context_switch\n    prepare_task_switch\n     prepare_lock_switch\n      raw_spin_unlock_irq(\u0026rq-\u003elock);\n 5.Shortly after rq-\u003elock is released, interrupt is occurred and start IRQ context\n 6.try_to_wake_up() which called by ISR acquires rq-\u003elock\n    try_to_wake_up\n     ttwu_remote\n      rq \u003d __task_rq_lock(p)\n      ttwu_do_wakeup(rq, p, wake_flags);\n        task_woken_rt\n 7.push_rt_task picks the task A which is enqueued before.\n   task_woken_rt\n    push_rt_tasks(rq)\n     next_task \u003d pick_next_pushable_task(rq)\n 8.At find_lock_lowest_rq(), If double_lock_balance() returns 0,\n   lowest_rq can be the remote rq.\n  (But,If preemption is on, double_lock_balance always return 1 and it\n   does\u0027t happen.)\n   push_rt_task\n    find_lock_lowest_rq\n     if (double_lock_balance(rq, lowest_rq))..\n 9.find_lock_lowest_rq return the available rq. task A is migrated to\n   the remote cpu/rq.\n   push_rt_task\n    ...\n    deactivate_task(rq, next_task, 0);\n    set_task_cpu(next_task, lowest_rq-\u003ecpu);\n    activate_task(lowest_rq, next_task, 0);\n 10. But, task A is on irq context at this cpu.\n     So, task A is scheduled by two cpus at the same time until restore from IRQ.\n     Task A\u0027s stack is corrupted.\n\nTo fix it, don\u0027t migrate an RT task if it\u0027s still running.\n\nSigned-off-by: Chanho Min \u003cchanho.min@lge.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: \u003cstable@kernel.org\u003e\nLink: http://lkml.kernel.org/r/CAOAMb1BHA\u003d5fm7KTewYyke6u-8DP0iUuJMpgQw54vNeXFsGpoQ@mail.gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "71325960d16cd68ea0e22a8da15b2495b0f363f7",
      "tree": "38be96d9232b302780476899f8536e690c693ffb",
      "parents": [
        "db7e527da41560f597ccdc4417cefa6b7657c0c0"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Jan 19 18:28:57 2012 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:13 2012 +0100"
      },
      "message": "sched/nohz: Fix nohz cpu idle load balancing state with cpu hotplug\n\nWith the recent nohz scheduler changes, rq\u0027s nohz flag\n\u0027NOHZ_TICK_STOPPED\u0027 and its associated state doesn\u0027t get cleared\nimmediately after the cpu exits idle. This gets cleared as part\nof the next tick seen on that cpu.\n\nFor the cpu offline support, we need to clear this state\nmanually. Fix it by registering a cpu notifier, which clears the\nnohz idle load balance state for this rq explicitly during the\nCPU_DYING notification.\n\nThere won\u0027t be any nohz updates for that cpu, after the\nCPU_DYING notification. But lets be extra paranoid and skip\nupdating the nohz state in the select_nohz_load_balancer() if\nthe cpu is not in active state anymore.\n\nReported-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nReviewed-and-tested-by: Srivatsa S. Bhat \u003csrivatsa.bhat@linux.vnet.ibm.com\u003e\nTested-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1327026538.16150.40.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "db7e527da41560f597ccdc4417cefa6b7657c0c0",
      "tree": "f5aff59ae2c16cf4fe25f2bfa2bf76048e10fac3",
      "parents": [
        "4ca9b72b71f10147bd21969c1805f5b2c4ca7b7b"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Wed Jan 11 08:58:16 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:11 2012 +0100"
      },
      "message": "sched/s390: Fix compile error in sched/core.c\n\nCommit 029632fbb7b7c9d85063cc9eb470de6c54873df3 (\"sched: Make\nseparate sched*.c translation units\") removed the include of\nasm/mutex.h from sched.c.\n\nThis breaks the combination of:\n\n CONFIG_MUTEX_SPIN_ON_OWNER\u003dyes\n CONFIG_HAVE_ARCH_MUTEX_CPU_RELAX\u003dyes\n\nlike s390 without mutex debugging:\n\n  CC      kernel/sched/core.o\n  kernel/sched/core.c: In function ‘mutex_spin_on_owner’:\n  kernel/sched/core.c:3287: error: implicit declaration of function ‘arch_mutex_cpu_relax’\n\nLets re-add the include to kernel/sched/core.c\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1326268696-30904-1-git-send-email-borntraeger@de.ibm.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4ca9b72b71f10147bd21969c1805f5b2c4ca7b7b",
      "tree": "05d6072a28029ffca57ba6c7d30036698348b59a",
      "parents": [
        "87f71ae2dd7471c1b4c94100be1f218e91dc64c3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jan 25 11:50:51 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 26 19:38:09 2012 +0100"
      },
      "message": "sched: Fix rq-\u003enr_uninterruptible update race\n\nKOSAKI Motohiro noticed the following race:\n\n \u003e CPU0                    CPU1\n \u003e --------------------------------------------------------\n \u003e deactivate_task()\n \u003e                         task-\u003estate \u003d TASK_UNINTERRUPTIBLE;\n \u003e activate_task()\n \u003e    rq-\u003enr_uninterruptible--;\n \u003e\n \u003e                         schedule()\n \u003e                           deactivate_task()\n \u003e                             rq-\u003enr_uninterruptible++;\n \u003e\n\nKosaki-San\u0027s scenario is possible when CPU0 runs\n__sched_setscheduler() against CPU1\u0027s current @task.\n\n__sched_setscheduler() does a dequeue/enqueue in order to move\nthe task to its new queue (position) to reflect the newly provided\nscheduling parameters. However it should be completely invariant to\nnr_uninterruptible accounting, sched_setscheduler() doesn\u0027t affect\nreadyness to run, merely policy on when to run.\n\nSo convert the inappropriate activate/deactivate_task usage to\nenqueue/dequeue_task, which avoids the nr_uninterruptible accounting.\n\nAlso convert the two other sites: __migrate_task() and\nnormalize_task() that still use activate/deactivate_task. These sites\naren\u0027t really a problem since __migrate_task() will only be called on\nnon-running task (and therefore are immume to the described problem)\nand normalize_task() isn\u0027t ever used on regular systems.\n\nAlso remove the comments from activate/deactivate_task since they\u0027re\nmisleading at best.\n\nReported-by: KOSAKI Motohiro \u003ckosaki.motohiro@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1327486224.2614.45.camel@laptop\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa757281a08799fd6c0f7ec6f111d1cd66afc97b",
      "tree": "664f8728e55e3d37ca8eb3c6c9087d2da9860463",
      "parents": [
        "2f6c76aa5f0fb53059730c628ac59ef62a14ed7a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Jan 21 11:03:13 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 23 08:44:54 2012 -0800"
      },
      "message": "kernel-doc: fix kernel-doc warnings in sched\n\nFix new kernel-doc notation warnings:\n\nWarning(include/linux/sched.h:2094): No description found for parameter \u0027p\u0027\nWarning(include/linux/sched.h:2094): Excess function parameter \u0027tsk\u0027 description in \u0027is_idle_task\u0027\nWarning(kernel/sched/cpupri.c:139): No description found for parameter \u0027newpri\u0027\nWarning(kernel/sched/cpupri.c:139): Excess function parameter \u0027pri\u0027 description in \u0027cpupri_set\u0027\nWarning(kernel/sched/cpupri.c:208): Excess function parameter \u0027bootmem\u0027 description in \u0027cpupri_init\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc:\tIngo Molnar \u003cmingo@elte.hu\u003e\nCc:\tPeter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c49c41a4134679cecb77362e7f6b59acb6320aa7",
      "tree": "45e690c036ca5846a48c8be67945d1d841b2d96d",
      "parents": [
        "892d208bcf79e4e1058707786a7b6d486697cd78",
        "f423e5ba76e7e4a6fcb4836b4f072d1fdebba8b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 14 18:36:33 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security\n\n* \u0027for-linus\u0027 of git://selinuxproject.org/~jmorris/linux-security:\n  capabilities: remove __cap_full_set definition\n  security: remove the security_netlink_recv hook as it is equivalent to capable()\n  ptrace: do not audit capability check when outputing /proc/pid/stat\n  capabilities: remove task_ns_* functions\n  capabitlies: ns_capable can use the cap helpers rather than lsm call\n  capabilities: style only - move capable below ns_capable\n  capabilites: introduce new has_ns_capabilities_noaudit\n  capabilities: call has_ns_capability from has_capability\n  capabilities: remove all _real_ interfaces\n  capabilities: introduce security_capable_noaudit\n  capabilities: reverse arguments to security_capable\n  capabilities: remove the task from capable LSM hook entirely\n  selinux: sparse fix: fix several warnings in the security server cod\n  selinux: sparse fix: fix warnings in netlink code\n  selinux: sparse fix: eliminate warnings for selinuxfs\n  selinux: sparse fix: declare selinux_disable() in security.h\n  selinux: sparse fix: move selinux_complete_init\n  selinux: sparse fix: make selinux_secmark_refcount static\n  SELinux: Fix RCU deref check warning in sel_netport_insert()\n\nManually fix up a semantic mis-merge wrt security_netlink_recv():\n\n - the interface was removed in commit fd7784615248 (\"security: remove\n   the security_netlink_recv hook as it is equivalent to capable()\")\n\n - a new user of it appeared in commit a38f7907b926 (\"crypto: Add\n   userspace configuration API\")\n\ncausing no automatic merge conflict, but Eric Paris pointed out the\nissue.\n"
    },
    {
      "commit": "b8bf17d311c875de02550d5ce2af66588734159a",
      "tree": "82d829df77f3eb506d10928fd633a8a6e5685082",
      "parents": [
        "9fc5c3e3237e02a94f41cd1d2b4291593d29791d",
        "bced76aeaca03b45e3b4bdb868cada328e497847"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 22:52:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 11 22:52:48 2012 -0800"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched: Fix lockup by limiting load-balance retries on lock-break\n  sched: Fix CONFIG_CGROUP_SCHED dependency\n  sched: Remove empty #ifdefs\n"
    },
    {
      "commit": "bced76aeaca03b45e3b4bdb868cada328e497847",
      "tree": "e2965b6cfecdc257a01b89ec6780b8de3b2e6d39",
      "parents": [
        "6db9dc150eabce7053c8df2a2146aa0d6748ec42"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jan 11 13:11:12 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 11 17:15:12 2012 +0100"
      },
      "message": "sched: Fix lockup by limiting load-balance retries on lock-break\n\nEric and David reported dead machines and traced it to commit\na195f004 (\"sched: Fix load-balance lock-breaking\"), it turns out\nthere\u0027s still a scenario where we can end up re-trying forever.\n\nSince there is no strict forward progress guarantee in the\nload-balance iteration we can get stuck re-retrying the same\ntask-set over and over.\n\nCreating a forward progress guarantee with the existing\nstructure is somewhat non-trivial, for now simply terminate the\nretry loop after a few tries.\n\nReported-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nTested-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nReported-by: David Ahern \u003cdsahern@gmail.com\u003e\n[ logic cleanup as suggested by Eric ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/1326297936.2442.157.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9b9fb610f6800e0db46cccd8618dd7e609c9bb5a",
      "tree": "9cd1157b35c144fc274f1deb14a88a2da3c5ce05",
      "parents": [
        "edf7c8148ec40c0fd27c0ef3f688defcc65e3913"
      ],
      "author": {
        "name": "Hiroshi Shimamoto",
        "email": "h-shimamoto@ct.jp.nec.com",
        "time": "Tue Jan 10 09:24:05 2012 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 10 09:57:41 2012 +0100"
      },
      "message": "sched: Remove empty #ifdefs\n\nSigned-off-by: Hiroshi Shimamoto \u003ch-shimamoto@ct.jp.nec.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/4F0B8525.8070901@ct.jp.nec.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "db0c2bf69aa095d4a6de7b1145f29fe9a7c0f6a3",
      "tree": "8f38957c01b18edddd44d49ecc3beeac08a20b4e",
      "parents": [
        "ac69e0928054ff29a5049902fb477f9c7605c773",
        "0d19ea866562e46989412a0676412fa0983c9ce7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 09 12:59:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 09 12:59:24 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\n* \u0027for-3.3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: (21 commits)\n  cgroup: fix to allow mounting a hierarchy by name\n  cgroup: move assignement out of condition in cgroup_attach_proc()\n  cgroup: Remove task_lock() from cgroup_post_fork()\n  cgroup: add sparse annotation to cgroup_iter_start() and cgroup_iter_end()\n  cgroup: mark cgroup_rmdir_waitq and cgroup_attach_proc() as static\n  cgroup: only need to check oldcgrp\u003d\u003dnewgrp once\n  cgroup: remove redundant get/put of task struct\n  cgroup: remove redundant get/put of old css_set from migrate\n  cgroup: Remove unnecessary task_lock before fetching css_set on migration\n  cgroup: Drop task_lock(parent) on cgroup_fork()\n  cgroups: remove redundant get/put of css_set from css_set_check_fetched()\n  resource cgroups: remove bogus cast\n  cgroup: kill subsys-\u003ecan_attach_task(), pre_attach() and attach_task()\n  cgroup, cpuset: don\u0027t use ss-\u003epre_attach()\n  cgroup: don\u0027t use subsys-\u003ecan_attach_task() or -\u003eattach_task()\n  cgroup: introduce cgroup_taskset and use it in subsys-\u003ecan_attach(), cancel_attach() and attach()\n  cgroup: improve old cgroup handling in cgroup_attach_proc()\n  cgroup: always lock threadgroup during migration\n  threadgroup: extend threadgroup_lock() to cover exit and exec\n  threadgroup: rename signal-\u003ethreadgroup_fork_lock to -\u003egroup_rwsem\n  ...\n\nFix up conflict in kernel/cgroup.c due to commit e0197aae59e5: \"cgroups:\nfix a css_set not found bug in cgroup_attach_proc\" that already\nmentioned that the bug is fixed (differently) in Tejun\u0027s cgroup\npatchset. This one, in other words.\n"
    },
    {
      "commit": "972b2c719990f91eb3b2310d44ef8a2d38955a14",
      "tree": "b25a250ec5bec4b7b6355d214642d8b57c5cab32",
      "parents": [
        "02550d61f49266930e674286379d3601006b2893",
        "c3aa077648e147783a7a53b409578234647db853"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 12:19:57 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\n* \u0027for-linus2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits)\n  reiserfs: Properly display mount options in /proc/mounts\n  vfs: prevent remount read-only if pending removes\n  vfs: count unlinked inodes\n  vfs: protect remounting superblock read-only\n  vfs: keep list of mounts for each superblock\n  vfs: switch -\u003eshow_options() to struct dentry *\n  vfs: switch -\u003eshow_path() to struct dentry *\n  vfs: switch -\u003eshow_devname() to struct dentry *\n  vfs: switch -\u003eshow_stats to struct dentry *\n  switch security_path_chmod() to struct path *\n  vfs: prefer -\u003edentry-\u003ed_sb to -\u003emnt-\u003emnt_sb\n  vfs: trim includes a bit\n  switch mnt_namespace -\u003eroot to struct mount\n  vfs: take /proc/*/mounts and friends to fs/proc_namespace.c\n  vfs: opencode mntget() mnt_set_mountpoint()\n  vfs: spread struct mount - remaining argument of next_mnt()\n  vfs: move fsnotify junk to struct mount\n  vfs: move mnt_devname\n  vfs: move mnt_list to struct mount\n  vfs: switch pnode.h macros to struct mount *\n  ...\n"
    },
    {
      "commit": "7affca3537d74365128e477b40c529d6f2fe86c8",
      "tree": "20be92bd240029182fc89c2c4f25401b7715dcae",
      "parents": [
        "356b95424cfb456e14a59eaa579422ce014c424b",
        "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (73 commits)\n  arm: fix up some samsung merge sysdev conversion problems\n  firmware: Fix an oops on reading fw_priv-\u003efw in sysfs loading file\n  Drivers:hv: Fix a bug in vmbus_driver_unregister()\n  driver core: remove __must_check from device_create_file\n  debugfs: add missing #ifdef HAS_IOMEM\n  arm: time.h: remove device.h #include\n  driver-core: remove sysdev.h usage.\n  clockevents: remove sysdev.h\n  arm: convert sysdev_class to a regular subsystem\n  arm: leds: convert sysdev_class to a regular subsystem\n  kobject: remove kset_find_obj_hinted()\n  m86k: gpio - convert sysdev_class to a regular subsystem\n  mips: txx9_sram - convert sysdev_class to a regular subsystem\n  mips: 7segled - convert sysdev_class to a regular subsystem\n  sh: dma - convert sysdev_class to a regular subsystem\n  sh: intc - convert sysdev_class to a regular subsystem\n  power: suspend - convert sysdev_class to a regular subsystem\n  power: qe_ic - convert sysdev_class to a regular subsystem\n  power: cmm - convert sysdev_class to a regular subsystem\n  s390: time - convert sysdev_class to a regular subsystem\n  ...\n\nFix up conflicts with \u0027struct sysdev\u0027 removal from various platform\ndrivers that got changed:\n - arch/arm/mach-exynos/cpu.c\n - arch/arm/mach-exynos/irq-eint.c\n - arch/arm/mach-s3c64xx/common.c\n - arch/arm/mach-s3c64xx/cpu.c\n - arch/arm/mach-s5p64x0/cpu.c\n - arch/arm/mach-s5pv210/common.c\n - arch/arm/plat-samsung/include/plat/cpu.h\n - arch/powerpc/kernel/sysfs.c\nand fix up cpu_is_hotpluggable() as per Greg in include/linux/cpu.h\n"
    },
    {
      "commit": "1ac9bc6943edf7d181b4b1cc734981350d4f6bae",
      "tree": "c7853336d693e4593488c26b8ce27ceca3803a6f",
      "parents": [
        "664dfa65e84429d0b68694483e1de7365c7c56fb"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Wed Dec 21 16:15:40 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 23 17:56:17 2011 +0100"
      },
      "message": "sched/tracing: Add a new tracepoint for sleeptime\n\nIf CONFIG_SCHEDSTATS is defined, the kernel maintains\ninformation about how long the task was sleeping or\nin the case of iowait, blocking in the kernel before\ngetting woken up.\n\nThis will be useful for sleep time profiling.\n\nNote: this information is only provided for sched_fair.\nOther scheduling classes may choose to provide this in\nthe future.\n\nNote: the delay includes the time spent on the runqueue\nas well.\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nCc: Andrew Vagin \u003cavagin@openvz.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1324512940-32060-2-git-send-email-asharma@fb.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "664dfa65e84429d0b68694483e1de7365c7c56fb",
      "tree": "9c3b1ae83a5a139c0420184d5eece0059c086216",
      "parents": [
        "62af3783e4fd8ba9e28416e8e91cb3bdd9fb133e"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Dec 22 16:39:30 2011 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 23 11:20:50 2011 +0100"
      },
      "message": "sched: Disable scheduler warnings during oopses\n\nThe panic-on-framebuffer code seems to cause a schedule\nto occur during an oops. This causes a bunch of extra\nspew as can be seen in:\n\n   https://bugzilla.redhat.com/attachment.cgi?id\u003d549230\n\nDon\u0027t do scheduler debug checks when we are oopsing already.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nLink: http://lkml.kernel.org/r/20111222213929.GA4722@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62af3783e4fd8ba9e28416e8e91cb3bdd9fb133e",
      "tree": "728bed51d0ae2725ade8046ba83794dd5f9944e4",
      "parents": [
        "7ceff013c43c0f38f0d26c79507889c6791c0ea0"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Dec 15 14:37:41 2011 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:52 2011 +0100"
      },
      "message": "sched: Fix cgroup movement of waking process\n\nThere is a small race between try_to_wake_up() and sched_move_task(),\nwhich is trying to move the process being woken up.\n\n    try_to_wake_up() on CPU0       sched_move_task() on CPU1\n--------------------------------+---------------------------------\n  raw_spin_lock_irqsave(p-\u003epi_lock)\n  task_waking_fair()\n    -\u003ep.se.vruntime -\u003d cfs_rq-\u003emin_vruntime\n  ttwu_queue()\n    -\u003esend reschedule IPI to CPU1\n  raw_spin_unlock_irqsave(p-\u003epi_lock)\n                                   task_rq_lock()\n                                     -\u003e tring to aquire both p-\u003epi_lock and\n                                        rq-\u003elock with IRQ disabled\n                                   task_move_group_fair()\n                                     -\u003e p.se.vruntime\n                                          -\u003d (old)cfs_rq-\u003emin_vruntime\n                                          +\u003d (new)cfs_rq-\u003emin_vruntime\n                                   task_rq_unlock()\n\n                                   (via IPI)\n                                   sched_ttwu_pending()\n                                     raw_spin_lock(rq-\u003elock)\n                                     ttwu_do_activate()\n                                       ...\n                                       enqueue_entity()\n                                         child.se-\u003evruntime +\u003d cfs_rq-\u003emin_vruntime\n                                     raw_spin_unlock(rq-\u003elock)\n\nAs a result, vruntime of the process becomes far bigger than min_vruntime,\nif (new)cfs_rq-\u003emin_vruntime \u003e\u003e (old)cfs_rq-\u003emin_vruntime.\n\nThis patch fixes this problem by just ignoring such process in\ntask_move_group_fair(), because the vruntime has already been normalized in\ntask_waking_fair().\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nLink: http://lkml.kernel.org/r/20111215143741.df82dd50.nishimura@mxp.nes.nec.co.jp\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7ceff013c43c0f38f0d26c79507889c6791c0ea0",
      "tree": "f4e164fcb0b75b3d559e644d41fd4c6c29990bef",
      "parents": [
        "4fc420c91f53e0a9f95665c6b14a1983716081e7"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Dec 15 14:36:07 2011 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:51 2011 +0100"
      },
      "message": "sched: Fix cgroup movement of newly created process\n\nThere is a small race between do_fork() and sched_move_task(), which is\ntrying to move the child.\n\n            do_fork()                 sched_move_task()\n--------------------------------+---------------------------------\n  copy_process()\n    sched_fork()\n      task_fork_fair()\n        -\u003e vruntime of the child is initialized\n           based on that of the parent.\n  -\u003e we can see the child in \"tasks\" file now.\n                                    task_rq_lock()\n                                    task_move_group_fair()\n                                      -\u003e child.se.vruntime\n                                           -\u003d (old)cfs_rq-\u003emin_vruntime\n                                           +\u003d (new)cfs_rq-\u003emin_vruntime\n                                    task_rq_unlock()\n  wake_up_new_task()\n    ...\n    enqueue_entity()\n      child.se.vruntime +\u003d cfs_rq-\u003emin_vruntime\n\nAs a result, vruntime of the child becomes far bigger than min_vruntime,\nif (new)cfs_rq-\u003emin_vruntime \u003e\u003e (old)cfs_rq-\u003emin_vruntime.\n\nThis patch fixes this problem by just ignoring such process in\ntask_move_group_fair(), because the vruntime has already been normalized in\ntask_fork_fair().\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nLink: http://lkml.kernel.org/r/20111215143607.2ee12c5d.nishimura@mxp.nes.nec.co.jp\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4fc420c91f53e0a9f95665c6b14a1983716081e7",
      "tree": "e6bfad34810d368ed893780b9ddc05c5dbcb6923",
      "parents": [
        "11534ec5b6cea13ae38d31799d2a5290c5d724af"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Thu Dec 15 14:36:55 2011 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:49 2011 +0100"
      },
      "message": "sched: Fix cgroup movement of forking process\n\nThere is a small race between task_fork_fair() and sched_move_task(),\nwhich is trying to move the parent.\n\n        task_fork_fair()                 sched_move_task()\n--------------------------------+---------------------------------\n  cfs_rq \u003d task_cfs_rq(current)\n    -\u003e cfs_rq is the \"old\" one.\n  curr \u003d cfs_rq-\u003ecurr\n    -\u003e curr is set to the parent.\n                                    task_rq_lock()\n                                    dequeue_task()\n                                      -\u003eparent.se.vruntime -\u003d (old)cfs_rq-\u003emin_vruntime\n                                    enqueue_task()\n                                      -\u003eparent.se.vruntime +\u003d (new)cfs_rq-\u003emin_vruntime\n                                    task_rq_unlock()\n  raw_spin_lock_irqsave(rq-\u003elock)\n  se-\u003evruntime \u003d curr-\u003evruntime\n    -\u003e vruntime of the child is set to that of the parent\n       which has already been updated by sched_move_task().\n  se-\u003evruntime -\u003d (old)cfs_rq-\u003emin_vruntime.\n  raw_spin_unlock_irqrestore(rq-\u003elock)\n\nAs a result, vruntime of the child becomes far bigger than expected,\nif (new)cfs_rq-\u003emin_vruntime \u003e\u003e (old)cfs_rq-\u003emin_vruntime.\n\nThis patch fixes this problem by setting \"cfs_rq\" and \"curr\" after\nholding the rq-\u003elock.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nAcked-by: Paul Turner \u003cpjt@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nLink: http://lkml.kernel.org/r/20111215143655.662676b0.nishimura@mxp.nes.nec.co.jp\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "11534ec5b6cea13ae38d31799d2a5290c5d724af",
      "tree": "117d554ceed6d9b9d812a943a8ff8c4f12a203e4",
      "parents": [
        "a195f004e9496b4d99f471bb96e0a0c1af080909"
      ],
      "author": {
        "name": "Kamalesh Babulal",
        "email": "kamalesh@linux.vnet.ibm.com",
        "time": "Sat Dec 10 19:29:25 2011 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:48 2011 +0100"
      },
      "message": "sched: Remove cfs bandwidth period check in tg_set_cfs_period()\n\nRemove cfs bandwidth period check from tg_set_cfs_period.\nInvalid bandwidth period\u0027s lower/upper limits are denoted\nby min_cfs_quota_period/max_cfs_quota_period repsectively,\nand are checked against valid period in tg_set_cfs_bandwidth().\n\nAs pjt pointed out, negative input will result in very large unsigned\nnumbers and will be caught by the max allowed period test.\n\nSigned-off-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nAcked-by: Paul Turner \u003cpjt@google.com\u003e\n[ammended changelog to mention negative values]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20111210135925.GA14593@linux.vnet.ibm.com\n--\n kernel/sched/core.c |    3 ---\n 1 file changed, 3 deletions(-)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a195f004e9496b4d99f471bb96e0a0c1af080909",
      "tree": "605f04617dc42458025cb4341e9e6407bed8b140",
      "parents": [
        "5b54b56be5b540a9cb12682c4d0df5454c098a38"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Sep 22 15:30:18 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:47 2011 +0100"
      },
      "message": "sched: Fix load-balance lock-breaking\n\nThe current lock break relies on contention on the rq locks, something\nwhich might never come because we\u0027ve got IRQs disabled. Or will be\nvery likely because on anything with more than 2 cpus a synchronized\nload-balance pass will very likely cause contention on the rq locks.\n\nAlso the sched_nr_migrate thing fails when it gets trapped the loops\nof either the cgroup muck in load_balance_fair() or the move_tasks()\nload condition.\n\nInstead, use the new lb_flags field to propagate break/abort\nconditions for all these loops and create a new loop outside the irq\ndisabled on the break being required.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-tsceb6w61q0gakmsccix6xxi@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5b54b56be5b540a9cb12682c4d0df5454c098a38",
      "tree": "837b7084c5e2659968ea64ba2c6520ff6256567a",
      "parents": [
        "518cd62341786aa4e3839810832af2fbc0de1ea4"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Sep 22 15:23:13 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:45 2011 +0100"
      },
      "message": "sched: Replace all_pinned with a generic flags field\n\nReplace the all_pinned argument with a flags field so that we can add\nsome extra controls throughout that entire call chain.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-33kevm71m924ok1gpxd720v3@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "518cd62341786aa4e3839810832af2fbc0de1ea4",
      "tree": "bd28f7fce47887e9c5d33bd772c8380255ef3065",
      "parents": [
        "612ef28a045efadb3a98d4492ead7806a146485d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 07 15:07:31 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 21 10:34:44 2011 +0100"
      },
      "message": "sched: Only queue remote wakeups when crossing cache boundaries\n\nMike reported a 13% drop in netperf TCP_RR performance due to the\nnew remote wakeup code. Suresh too noticed some performance issues\nwith it.\n\nReducing the IPIs to only cross cache domains solves the observed\nperformance issues.\n\nReported-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Dave Kleikamp \u003cdave.kleikamp@oracle.com\u003e\nLink: http://lkml.kernel.org/r/1323338531.17673.7.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "612ef28a045efadb3a98d4492ead7806a146485d",
      "tree": "05621c87b37e91c27b06d450d76adffe97ce9666",
      "parents": [
        "c3e0ef9a298e028a82ada28101ccd5cf64d209ee",
        "07cde2608a3b5c66515363f1b53623b1536b9785"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Dec 19 19:23:15 2011 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Mon Dec 19 19:23:15 2011 +0100"
      },
      "message": "Merge branch \u0027sched/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into cputime-tip\n\nConflicts:\n\tdrivers/cpufreq/cpufreq_conservative.c\n\tdrivers/cpufreq/cpufreq_ondemand.c\n\tdrivers/macintosh/rack-meter.c\n\tfs/proc/stat.c\n\tfs/proc/uptime.c\n\tkernel/sched/core.c\n"
    },
    {
      "commit": "07cde2608a3b5c66515363f1b53623b1536b9785",
      "tree": "1ef46b4a852a79c9a44f08b177ee256a776a6ad6",
      "parents": [
        "abd63bc3a0f65ae9d85bc3b1bb067d3e3c2b2cc2"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Thu Dec 15 08:49:18 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 16 09:42:09 2011 +0100"
      },
      "message": "sched: Add missing rcu_dereference() around -\u003ereal_parent usage\n\nWrap another -\u003ereal_parent dereference while under rcu_read_lock.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nLink: http://lkml.kernel.org/r/20111215164918.GA13003@www.outflux.net\n[ tidied up the changelog ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "067491b7313c41f49607fce782d29344d1472587",
      "tree": "06f6352372038f7f4171c8d8fc869e686665d32f",
      "parents": [
        "cd490c5b285544dc1319cf79c2ca0528a6447f61"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Wed Dec 07 14:32:08 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 08 05:45:48 2011 +0100"
      },
      "message": "sched, nohz: Fix missing RCU read lock\n\nYong Zhang reported:\n\n \u003e [ INFO: suspicious RCU usage. ]\n \u003e kernel/sched/fair.c:5091 suspicious rcu_dereference_check() usage!\n\nThis is due to the sched_domain stuff being RCU protected and\ncommit 0b005cf5 (\"sched, nohz: Implement sched group, domain\naware nohz idle load balancing\") overlooking this fact.\n\nThe sd variable only lives inside the for_each_domain() block,\nso we only need to wrap that.\n\nReported-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nTested-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nLink: http://lkml.kernel.org/r/1323264728.32012.107.camel@twins\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cd490c5b285544dc1319cf79c2ca0528a6447f61",
      "tree": "ee419d467f8e44f8ce596ea4cec1e514baeec7c9",
      "parents": [
        "8a6d42d1b32ad239c28f445138ea9c19aa52dd20"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Tue Dec 06 11:26:34 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:29 2011 +0100"
      },
      "message": "sched, nohz: Set the NOHZ_BALANCE_KICK flag for idle load balancer\n\nIntention is to set the NOHZ_BALANCE_KICK flag for the \u0027ilb_cpu\u0027. Not\nfor the \u0027cpu\u0027 which is the local cpu. Fix the typo.\n\nReported-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1323199594.1984.18.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8a6d42d1b32ad239c28f445138ea9c19aa52dd20",
      "tree": "ddb25da63a4a712d48c545e1b2fce145f723b4e2",
      "parents": [
        "f8b6d1cc7dc15cf3de538b864eefaedad7a84d85"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Tue Dec 06 11:19:37 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:27 2011 +0100"
      },
      "message": "sched, nohz: Fix the idle cpu check in nohz_idle_balance\n\ncpu bit in the nohz.idle_cpu_mask are reset in the first busy tick after\nexiting idle. So during nohz_idle_balance(), intention is to double\ncheck if the cpu that is part of the idle_cpu_mask is indeed idle before\ngoing ahead in performing idle balance for that cpu.\n\nFix the cpu typo in the idle_cpu() check during nohz_idle_balance().\n\nReported-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1323199177.1984.12.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f8b6d1cc7dc15cf3de538b864eefaedad7a84d85",
      "tree": "084948d4bebc74a66231d95e03daaeb808640d66",
      "parents": [
        "be726ffd1ef291c04c4d6632ac277afa1c281712"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jul 06 14:20:14 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:26 2011 +0100"
      },
      "message": "sched: Use jump_labels for sched_feat\n\nNow that we initialize jump_labels before sched_init() we can use them\nfor the debug features without having to worry about a window where\nthey have the wrong setting.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/n/tip-vpreo4hal9e0kzqmg5y0io2k@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "be726ffd1ef291c04c4d6632ac277afa1c281712",
      "tree": "3ec9830b12cd488019b12c77d35d5995e65c94cf",
      "parents": [
        "1c77f38ad623d8c3bc062f0ff9b8c5a2dfb2f1a2"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Fri Dec 02 19:58:39 2011 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:24 2011 +0100"
      },
      "message": "sched/accounting: Fix parameter passing in task_group_account_field\n\nThe order of parameters is inverted. The index parameter\nshould come first.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322863119-14225-3-git-send-email-glommer@parallels.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1c77f38ad623d8c3bc062f0ff9b8c5a2dfb2f1a2",
      "tree": "a4ff4aca033b73715c87868d0ce366169655825c",
      "parents": [
        "54c707e98de9ca899e6552a47c797c62c45885ee"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Fri Dec 02 19:58:38 2011 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:23 2011 +0100"
      },
      "message": "sched/accounting: Fix user/system tick double accounting\n\nNow that we\u0027re  pointing cpuacct\u0027s root cgroup to cpustat and accounting\nthrough task_group_account_field(), we should not access cpustat directly.\nSince it is done anyway inside the acessor function, we end up accounting\nit twice, which is wrong.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322863119-14225-2-git-send-email-glommer@parallels.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "54c707e98de9ca899e6552a47c797c62c45885ee",
      "tree": "61ec9be62b2b3db0201aca7c8eddb5e49239baf5",
      "parents": [
        "b39e66eaf9c573f38133e894256caeaf9fd2a528"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Mon Nov 28 14:45:19 2011 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:21 2011 +0100"
      },
      "message": "sched/accounting: Re-use scheduler statistics for the root cgroup\n\nRight now, after we collect tick statistics for user and system and store them\nin a well known location, we keep the same statistics again for cpuacct.\nSince cpuacct is hierarchical, the numbers for the root cgroup should be\nabsolutely equal to the system-wide numbers.\n\nSo it would be better to just use it: this patch changes cpuacct accounting\nin a way that the cpustat statistics are kept in a struct kernel_cpustat percpu\narray. In the root cgroup case, we just point it to the main array. The rest of\nthe hierarchy walk can be totally disabled later with a static branch - but I am\nnot doing it here.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Tuner \u003cpjt@google.com\u003e\nLink: http://lkml.kernel.org/r/1322498719-2255-4-git-send-email-glommer@parallels.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b39e66eaf9c573f38133e894256caeaf9fd2a528",
      "tree": "316e239a62d589515bbe4c4b9b8c4fc8cac91715",
      "parents": [
        "fdaabd800bdd60652a448994eeb77442180db6c0"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Tue Nov 22 15:20:07 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 20:51:20 2011 +0100"
      },
      "message": "sched: Save some hrtick_start_fair cycles\n\nhrtick_start_fair() shows up in profiles even when disabled.\n\nv3.0.6\n\ntaskset -c 3 pipe-test\n\n   PerfTop:     997 irqs/sec  kernel:89.5%  exact:  0.0% [1000Hz cycles],  (all, CPU: 3)\n------------------------------------------------------------------------------------------------\n\n             Virgin                                    Patched\n             samples  pcnt function                    samples  pcnt function\n             _______ _____ ___________________________ _______ _____ ___________________________\n\n             2880.00 10.2% __schedule                  3136.00 11.3% __schedule\n             1634.00  5.8% pipe_read                   1615.00  5.8% pipe_read\n             1458.00  5.2% system_call                 1534.00  5.5% system_call\n             1382.00  4.9% _raw_spin_lock_irqsave      1412.00  5.1% _raw_spin_lock_irqsave\n             1202.00  4.3% pipe_write                  1255.00  4.5% copy_user_generic_string\n             1164.00  4.1% copy_user_generic_string    1241.00  4.5% __switch_to\n             1097.00  3.9% __switch_to                  929.00  3.3% mutex_lock\n              872.00  3.1% mutex_lock                   846.00  3.0% mutex_unlock\n              687.00  2.4% mutex_unlock                 804.00  2.9% pipe_write\n              682.00  2.4% native_sched_clock           713.00  2.6% native_sched_clock\n              643.00  2.3% system_call_after_swapgs     653.00  2.3% _raw_spin_unlock_irqrestore\n              617.00  2.2% sched_clock_local            633.00  2.3% fsnotify\n              612.00  2.2% fsnotify                     605.00  2.2% sched_clock_local\n              596.00  2.1% _raw_spin_unlock_irqrestore  593.00  2.1% system_call_after_swapgs\n              542.00  1.9% sysret_check                 559.00  2.0% sysret_check\n              467.00  1.7% fget_light                   472.00  1.7% fget_light\n              462.00  1.6% finish_task_switch           461.00  1.7% finish_task_switch\n              437.00  1.5% vfs_write                    442.00  1.6% vfs_write\n              431.00  1.5% do_sync_write                428.00  1.5% do_sync_write\n              413.00  1.5% select_task_rq_fair          404.00  1.5% _raw_spin_lock_irq\n              386.00  1.4% update_curr                  402.00  1.4% update_curr\n              385.00  1.4% rw_verify_area               389.00  1.4% do_sync_read\n              377.00  1.3% _raw_spin_lock_irq           378.00  1.4% vfs_read\n              369.00  1.3% do_sync_read                 340.00  1.2% pipe_iov_copy_from_user\n              360.00  1.3% vfs_read                     316.00  1.1% __wake_up_sync_key\n*             342.00  1.2% hrtick_start_fair            313.00  1.1% __wake_up_common\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\n[ fixed !CONFIG_SCHED_HRTICK borkage ]\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1321971607.6855.17.camel@marge.simson.net\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "44252e421ad81e711c5a9db158fad7f433f70665",
      "tree": "b1a276337d8e7926d553795584cbf17ccf36bfeb",
      "parents": [
        "3292beb340c76884427faa1f5d6085719477d889"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Mon Nov 28 14:45:18 2011 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:40 2011 +0100"
      },
      "message": "sched/accounting, cgroups: Reuse cgroup\u0027s parent pointer\n\nWe already have a pointer to the cgroup parent (whose data is more likely\nto be in the cache than this, anyway), so there is no need to have this one\nin cpuacct.\n\nThis patch makes the underlying cgroup be used instead.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Tuner \u003cpjt@google.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322498719-2255-3-git-send-email-glommer@parallels.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3292beb340c76884427faa1f5d6085719477d889",
      "tree": "cb7e431b2a15fa66ef5278d485131bac7a125fbd",
      "parents": [
        "786d6dc7aeb2bfbfe417507b7beb83919f319db3"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Mon Nov 28 14:45:17 2011 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:38 2011 +0100"
      },
      "message": "sched/accounting: Change cpustat fields to an array\n\nThis patch changes fields in cpustat from a structure, to an\nu64 array. Math gets easier, and the code is more flexible.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Paul Tuner \u003cpjt@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322498719-2255-2-git-send-email-glommer@parallels.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "786d6dc7aeb2bfbfe417507b7beb83919f319db3",
      "tree": "b2190cc2e926b2ce27918525443810e1c6a5416f",
      "parents": [
        "0b005cf54eac170a8f22540ab096a6e07bf49e7c"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Dec 01 17:07:35 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:36 2011 +0100"
      },
      "message": "sched, nohz: Clean up the find_new_ilb() using sched groups nr_busy_cpus\n\nnr_busy_cpus in the sched_group_power indicates whether the group\nis semi idle or not. This helps remove the is_semi_idle_group() and simplify\nthe find_new_ilb() in the context of finding an optimal cpu that can do\nidle load balancing.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20111202010832.656983582@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0b005cf54eac170a8f22540ab096a6e07bf49e7c",
      "tree": "d06b2c7d1b6286f4116f94b9d4b38779e885a9b2",
      "parents": [
        "69e1e811dcc436a6b129dbef273ad9ec22d095ce"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Dec 01 17:07:34 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:34 2011 +0100"
      },
      "message": "sched, nohz: Implement sched group, domain aware nohz idle load balancing\n\nWhen there are many logical cpu\u0027s that enter and exit idle often, members of\nthe global nohz data structure are getting modified very frequently causing\nlot of cache-line contention.\n\nMake the nohz idle load balancing more scalabale by using the sched domain\ntopology and \u0027nr_busy_cpu\u0027s in the struct sched_group_power.\n\nIdle load balance is kicked on one of the idle cpu\u0027s when there is atleast\none idle cpu and:\n\n - a busy rq having more than one task or\n\n - a busy rq\u0027s scheduler group that share package resources (like HT/MC\n   siblings) and has more than one member in that group busy or\n\n - for the SD_ASYM_PACKING domain, if the lower numbered cpu\u0027s in that\n   domain are idle compared to the busy ones.\n\nThis will help in kicking the idle load balancing request only when\nthere is a potential imbalance. And once it is mostly balanced, these kicks will\nbe minimized.\n\nThese changes helped improve the workload that is context switch intensive\nbetween number of task pairs by 2x on a 8 socket NHM-EX based system.\n\nReported-by: Tim Chen \u003ctim.c.chen@intel.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20111202010832.602203411@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "69e1e811dcc436a6b129dbef273ad9ec22d095ce",
      "tree": "f07179af4989178733727683796927948db9059a",
      "parents": [
        "1c792db7f7957e2e34b9a164f08200e36a25dfd0"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Dec 01 17:07:33 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:32 2011 +0100"
      },
      "message": "sched, nohz: Track nr_busy_cpus in the sched_group_power\n\nIntroduce nr_busy_cpus in the struct sched_group_power [Not in sched_group\nbecause sched groups are duplicated for the SD_OVERLAP scheduler domain]\nand for each cpu that enters and exits idle, this parameter will\nbe updated in each scheduler group of the scheduler domain that this cpu\nbelongs to.\n\nTo avoid the frequent update of this state as the cpu enters\nand exits idle, the update of the stat during idle exit is\ndelayed to the first timer tick that happens after the cpu becomes busy.\nThis is done using NOHZ_IDLE flag in the struct rq\u0027s nohz_flags.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20111202010832.555984323@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1c792db7f7957e2e34b9a164f08200e36a25dfd0",
      "tree": "d1ab8d9e860e12b31f8553309b79cc65ff380fa5",
      "parents": [
        "5b680fd61388abb9059fbc8e7a2f60f602bfce15"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Dec 01 17:07:32 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:30 2011 +0100"
      },
      "message": "sched, nohz: Introduce nohz_flags in \u0027struct rq\u0027\n\nIntroduce nohz_flags in the struct rq, which will track these two flags\nfor now.\n\nNOHZ_TICK_STOPPED keeps track of the tick stopped status that gets set when\nthe tick is stopped. It will be used to update the nohz idle load balancer data\nstructures during the first busy tick after the tick is restarted. At this\nfirst busy tick after tickless idle, NOHZ_TICK_STOPPED flag will be reset.\nThis will minimize the nohz idle load balancer status updates that currently\nhappen for every tickless exit, making it more scalable when there\nare many logical cpu\u0027s that enter and exit idle often.\n\nNOHZ_BALANCE_KICK will track the need for nohz idle load balance\non this rq. This will replace the nohz_balance_kick in the rq, which was\nnot being updated atomically.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20111202010832.499438999@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5b680fd61388abb9059fbc8e7a2f60f602bfce15",
      "tree": "9626e2d0f20d2eebcc415b5b29401890da7a6448",
      "parents": [
        "4d78a2239e393f09e0964a2f8da394cc91d75155"
      ],
      "author": {
        "name": "Shan Hai",
        "email": "haishan.bai@gmail.com",
        "time": "Tue Nov 29 11:03:56 2011 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:28 2011 +0100"
      },
      "message": "sched/rt: Code cleanup, remove a redundant function call\n\nThe second call to sched_rt_period() is redundant, because the value of the\nrt_runtime was already read and it was protected by the -\u003ert_runtime_lock.\n\nSigned-off-by: Shan Hai \u003chaishan.bai@gmail.com\u003e\nReviewed-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322535836-13590-2-git-send-email-haishan.bai@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4d78a2239e393f09e0964a2f8da394cc91d75155",
      "tree": "ecc8ea8de1baa21cedf6b90d32c39fc2fe7bfeff",
      "parents": [
        "916671c08b7808aebec87cc56c85788e665b3c6b"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Fri Nov 18 15:03:29 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:26 2011 +0100"
      },
      "message": "sched: Fix the sched group node allocation for SD_OVERLAP domains\n\nFor the SD_OVERLAP domain, sched_groups for each CPU\u0027s sched_domain are\nprivately allocated and not shared with any other cpu. So the\nsched group allocation should come from the cpu\u0027s node for which\nSD_OVERLAP sched domain is being setup.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20111118230554.164910950@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "916671c08b7808aebec87cc56c85788e665b3c6b",
      "tree": "b3cd42d8fc5ba64f3ee0bff332278758c656141c",
      "parents": [
        "76854c7e8f3f4172fef091e78d88b3b751463ac6"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Tue Nov 22 15:21:26 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:24 2011 +0100"
      },
      "message": "sched: Set skip_clock_update in yield_task_fair()\n\nThis is another case where we are on our way to schedule(),\nso can save a useless clock update and resulting microscopic\nvruntime update.\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1321971686.6855.18.camel@marge.simson.net\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "76854c7e8f3f4172fef091e78d88b3b751463ac6",
      "tree": "0560b17aaff5394ab93f86e08ec85e02b9de6aea",
      "parents": [
        "77e81365e0b7d7479fc444a21cea0cd4def70b45"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "mgalbraith@suse.de",
        "time": "Tue Nov 22 15:18:24 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 08:51:26 2011 +0100"
      },
      "message": "sched: Use rt.nr_cpus_allowed to recover select_task_rq() cycles\n\nrt.nr_cpus_allowed is always available, use it to bail from select_task_rq()\nwhen only one cpu can be used, and saves some cycles for pinned tasks.\n\nSee the line marked with \u0027*\u0027 below:\n\n  # taskset -c 3 pipe-test\n\n   PerfTop:     997 irqs/sec  kernel:89.5%  exact:  0.0% [1000Hz cycles],  (all, CPU: 3)\n------------------------------------------------------------------------------------------------\n\n             Virgin                                    Patched\n             samples  pcnt function                    samples  pcnt function\n             _______ _____ ___________________________ _______ _____ ___________________________\n\n             2880.00 10.2% __schedule                  3136.00 11.3% __schedule\n             1634.00  5.8% pipe_read                   1615.00  5.8% pipe_read\n             1458.00  5.2% system_call                 1534.00  5.5% system_call\n             1382.00  4.9% _raw_spin_lock_irqsave      1412.00  5.1% _raw_spin_lock_irqsave\n             1202.00  4.3% pipe_write                  1255.00  4.5% copy_user_generic_string\n             1164.00  4.1% copy_user_generic_string    1241.00  4.5% __switch_to\n             1097.00  3.9% __switch_to                  929.00  3.3% mutex_lock\n              872.00  3.1% mutex_lock                   846.00  3.0% mutex_unlock\n              687.00  2.4% mutex_unlock                 804.00  2.9% pipe_write\n              682.00  2.4% native_sched_clock           713.00  2.6% native_sched_clock\n              643.00  2.3% system_call_after_swapgs     653.00  2.3% _raw_spin_unlock_irqrestore\n              617.00  2.2% sched_clock_local            633.00  2.3% fsnotify\n              612.00  2.2% fsnotify                     605.00  2.2% sched_clock_local\n              596.00  2.1% _raw_spin_unlock_irqrestore  593.00  2.1% system_call_after_swapgs\n              542.00  1.9% sysret_check                 559.00  2.0% sysret_check\n              467.00  1.7% fget_light                   472.00  1.7% fget_light\n              462.00  1.6% finish_task_switch           461.00  1.7% finish_task_switch\n              437.00  1.5% vfs_write                    442.00  1.6% vfs_write\n              431.00  1.5% do_sync_write                428.00  1.5% do_sync_write\n*             413.00  1.5% select_task_rq_fair          404.00  1.5% _raw_spin_lock_irq\n              386.00  1.4% update_curr                  402.00  1.4% update_curr\n              385.00  1.4% rw_verify_area               389.00  1.4% do_sync_read\n              377.00  1.3% _raw_spin_lock_irq           378.00  1.4% vfs_read\n              369.00  1.3% do_sync_read                 340.00  1.2% pipe_iov_copy_from_user\n              360.00  1.3% vfs_read                     316.00  1.1% __wake_up_sync_key\n              342.00  1.2% hrtick_start_fair            313.00  1.1% __wake_up_common\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1321971504.6855.15.camel@marge.simson.net\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "77e81365e0b7d7479fc444a21cea0cd4def70b45",
      "tree": "edb0aa41e7ca436f3e1097ea5ea9da6ebee4ec81",
      "parents": [
        "b781a602ac745ee3d5d745276f1e1905a2c101f9"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Nov 17 11:08:23 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 08:51:25 2011 +0100"
      },
      "message": "sched: Clean up domain traversal in select_idle_sibling()\n\nInstead of going through the scheduler domain hierarchy multiple times\n(for giving priority to an idle core over an idle SMT sibling in a busy\ncore), start with the highest scheduler domain with the SD_SHARE_PKG_RESOURCES\nflag and traverse the domain hierarchy down till we find an idle group.\n\nThis cleanup also addresses an issue reported by Mike where the recent\nchanges returned the busy thread even in the presence of an idle SMT\nsibling in single socket platforms.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nTested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1321556904.15339.25.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b781a602ac745ee3d5d745276f1e1905a2c101f9",
      "tree": "bae4134842fba8c0e8ab22a205b73f21eba6c1d4",
      "parents": [
        "391e43da797a96aeb65410281891f6d0b0e9611c"
      ],
      "author": {
        "name": "Andrew Vagin",
        "email": "avagin@openvz.org",
        "time": "Mon Nov 28 12:03:35 2011 +0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 08:51:23 2011 +0100"
      },
      "message": "events, sched: Add tracepoint for accounting blocked time\n\nThis tracepoint shows how long a task is sleeping in uninterruptible state.\n\nE.g. it may show how long and where a mutex is waited for.\n\nSigned-off-by: Andrew Vagin \u003cavagin@openvz.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1322471015-107825-8-git-send-email-avagin@openvz.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "391e43da797a96aeb65410281891f6d0b0e9611c",
      "tree": "0ce6784525a5a8f75b377170cf1a7d60abccea29",
      "parents": [
        "029632fbb7b7c9d85063cc9eb470de6c54873df3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 15 17:14:39 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 17 12:20:22 2011 +0100"
      },
      "message": "sched: Move all scheduler bits into kernel/sched/\n\nThere\u0027s too many sched*.[ch] files in kernel/, give them their own\ndirectory.\n\n(No code changed, other than Makefile glue added.)\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ]
}
