)]}'
{
  "log": [
    {
      "commit": "3f74478b5fd7263e9311cdb320923d599c73a792",
      "tree": "d61962b55cc7bae06cf872f35d8ab3ae753c70c1",
      "parents": [
        "459192c92cde49d1a2f721c90adf45d774c2dcf5"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Sep 12 18:49:24 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 10:49:58 2005 -0700"
      },
      "message": "[PATCH] x86-64: Some cleanup and optimization to the processor data area.\n\n- Remove unused irqrsp field\n- Remove pda-\u003eme\n- Optimize set_softirq_pending slightly\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3426599af9524104be6938bcb1fcaab314781c7",
      "tree": "c6d354bddb5b8cd298d139b60a9257ebd8323b90",
      "parents": [
        "f24ec7f6c6278c0ea4c00efe96d50b1e66796c44"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Mon Sep 12 04:30:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 09:16:27 2005 -0700"
      },
      "message": "[PATCH] cpuset semaphore depth check optimize\n\nOptimize the deadlock avoidance check on the global cpuset\nsemaphore cpuset_sem.  Instead of adding a depth counter to the\ntask struct of each task, rather just two words are enough, one\nto store the depth and the other the current cpuset_sem holder.\n\nThanks to Nikita Danilov for the idea.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\n\n[ We may want to change this further, but at least it\u0027s now\n  a totally internal decision to the cpusets code ]\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1df5c10a5b40d1ad747e3de3caf28764153c5c8e",
      "tree": "87cda6983653d73a3ba4d24b1c8ba257254ac26b",
      "parents": [
        "c3ff8ec31c1249d268cd11390649768a12bec1b9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 07:59:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 07:59:21 2005 -0700"
      },
      "message": "Mark ia64-specific MCA/INIT scheduler hooks as dangerous\n\n..and only enable them for ia64. The functions are only valid\nwhen the whole system has been totally stopped and no scheduler\nactivity is ongoing on any CPU, and interrupts are globally\ndisabled.\n\nIn other words, they aren\u0027t useful for anything else. So make\nsure that nobody can use them by mistake.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a2a979821b6ab75a4f143cfaa1c4672cc259ec10",
      "tree": "4e327a4a8c14829d4addf8a09e13355e0cf565a4",
      "parents": [
        "9fe66dfd8846706ff11ed7990d06c92644973bd8"
      ],
      "author": {
        "name": "Keith Owens",
        "email": "kaos@sgi.com",
        "time": "Sun Sep 11 17:19:06 2005 +1000"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Sun Sep 11 14:01:30 2005 -0700"
      },
      "message": "[PATCH] MCA/INIT: scheduler hooks\n\nScheduler hooks to see/change which process is deemed to be on a cpu.\n\nSigned-off-by: Keith Owens \u003ckaos@sgi.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "75bcc8c5e1de78616b04ef9f317a293a7c1c163c",
      "tree": "fabdfd7fbc46baae5638b41648444d805e14eb3c",
      "parents": [
        "041e0e3b1970c508dc9a95b7dd9dc86271a7d7ac"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sat Sep 10 00:27:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:37 2005 -0700"
      },
      "message": "[PATCH] kernel: fix-up schedule_timeout() usage\n\nUse schedule_timeout_{,un}interruptible() instead of\nset_current_state()/schedule_timeout() to reduce kernel size.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "64ed93a268bc18fa6f72f61420d0e0022c5e38d1",
      "tree": "1332ce542510b88014767f3536d9150710a2f3f9",
      "parents": [
        "672289e9faa56acd4e39ad866ea258b7be7c99a6"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Sat Sep 10 00:27:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:36 2005 -0700"
      },
      "message": "[PATCH] add schedule_timeout_{,un}interruptible() interfaces\n\nAdd schedule_timeout_{,un}interruptible() interfaces so that\nschedule_timeout() callers don\u0027t have to worry about forgetting to add the\nset_current_state() call beforehand.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "417ef531415c070926b071b75fd1c1ac4b6e2f7e",
      "tree": "e2bceb50c0d7a5e43e8a5596f237cf5b68f57d9f",
      "parents": [
        "621a4d1a823e1ec631fbfbe6e53ad036e2d2abc6"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sat Sep 10 00:26:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:26 2005 -0700"
      },
      "message": "[PATCH] kernel/acct: add kerneldoc\n\nfor kernel/acct.c:\n- fix typos\n- add kerneldoc for non-static functions\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c117f1b4d14380baeed9c883f765ee023da8761",
      "tree": "8bd81914e49493bdae4b04db307a48dcfc0b6316",
      "parents": [
        "fa3b6ddc3f4a8eadba52234134cdb59c28b5332d"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Sat Sep 10 00:26:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:24 2005 -0700"
      },
      "message": "[PATCH] sched: allow the load to grow upto its cpu_power\n\nDon\u0027t pull tasks from a group if that would cause the group\u0027s total load to\ndrop below its total cpu_power (ie.  cause the group to start going idle).\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fa3b6ddc3f4a8eadba52234134cdb59c28b5332d",
      "tree": "9aa1b8211adb63bb2983be0d4ab2afdfab88e1a3",
      "parents": [
        "5927ad78ec75870b1bdfa65a10ad1300cd664d36"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Sat Sep 10 00:26:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:24 2005 -0700"
      },
      "message": "[PATCH] sched: don\u0027t kick ALB in the presence of pinned task\n\nJack Steiner brought this issue at my OLS talk.\n\nTake a scenario where two tasks are pinned to two HT threads in a physical\npackage.  Idle packages in the system will keep kicking migration_thread on\nthe busy package with out any success.\n\nWe will run into similar scenarios in the presence of CMP/NUMA.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5927ad78ec75870b1bdfa65a10ad1300cd664d36",
      "tree": "1eef750386a8bfa1e2532138a67a6d8bc8dad85b",
      "parents": [
        "5969fe0618051e8577316555a81a6e44b7b7d640"
      ],
      "author": {
        "name": "Renaud Lienhart",
        "email": "renaud.lienhart@free.fr",
        "time": "Sat Sep 10 00:26:20 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:23 2005 -0700"
      },
      "message": "[PATCH] sched: use cached variable in sys_sched_yield()\n\nIn sys_sched_yield(), we cache current-\u003earray in the \"array\" variable, thus\nthere\u0027s no need to dereference \"current\" again later.\n\nSigned-Off-By: Renaud Lienhart \u003crenaud.lienhart@free.fr\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5969fe0618051e8577316555a81a6e44b7b7d640",
      "tree": "09ca92684811017901bb08d8d3a76c52022ef34d",
      "parents": [
        "e17224bf1d01b461ec02a60f5a9b7657a89bdd23"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Sep 10 00:26:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:23 2005 -0700"
      },
      "message": "[PATCH] sched: HT optimisation\n\nIf an idle sibling of an HT queue encounters a busy sibling, then make\nhigher level load balancing of the non-idle variety.\n\nPerformance of multiprocessor HT systems with low numbers of tasks\n(generally \u003c number of virtual CPUs) can be significantly worse than the\nexact same workloads when running in non-HT mode.  The reason is largely\ndue to poor scheduling behaviour.\n\nThis patch improves the situation, making the performance gap far less\nsignificant on one problematic test case (tbench).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e17224bf1d01b461ec02a60f5a9b7657a89bdd23",
      "tree": "30dbb20798fde88a09680e9d82bd32ad8c343692",
      "parents": [
        "d6d5cfaf4551aa7713ca6ab73bb77e832602204b"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Sep 10 00:26:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:23 2005 -0700"
      },
      "message": "[PATCH] sched: less locking\n\nDuring periodic load balancing, don\u0027t hold this runqueue\u0027s lock while\nscanning remote runqueues, which can take a non trivial amount of time\nespecially on very large systems.\n\nHolding the runqueue lock will only help to stabilise -\u003enr_running, however\nthis doesn\u0027t do much to help because tasks being woken will simply get held\nup on the runqueue lock, so -\u003enr_running would not provide a really\naccurate picture of runqueue load in that case anyway.\n\nWhat\u0027s more, -\u003enr_running (and possibly the cpu_load averages) of remote\nrunqueues won\u0027t be stable anyway, so load balancing is always an inexact\noperation.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6d5cfaf4551aa7713ca6ab73bb77e832602204b",
      "tree": "2741ff061bca597f26df340feec0a6ee58820e64",
      "parents": [
        "67f9a619e7460b7d07284a9d0745727a77d3ade6"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Sep 10 00:26:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:23 2005 -0700"
      },
      "message": "[PATCH] sched: less newidle locking\n\nSimilarly to the earlier change in load_balance, only lock the runqueue in\nload_balance_newidle if the busiest queue found has a nr_running \u003e 1.  This\nwill reduce frequency of expensive remote runqueue lock aquisitions in the\nschedule() path on some workloads.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "67f9a619e7460b7d07284a9d0745727a77d3ade6",
      "tree": "d76bcca7ad5e9430150ebcdb391180bf2e0878e8",
      "parents": [
        "d79fc0fc6645b0cf5cd980da76942ca6d6300fa4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:26:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:23 2005 -0700"
      },
      "message": "[PATCH] sched: fix SMT scheduler latency bug\n\nWilliam Weston reported unusually high scheduling latencies on his x86 HT\nbox, on the -RT kernel.  I managed to reproduce it on my HT box and the\nlatency tracer shows the incident in action:\n\n                 _------\u003d\u003e CPU#\n                / _-----\u003d\u003e irqs-off\n               | / _----\u003d\u003e need-resched\n               || / _---\u003d\u003e hardirq/softirq\n               ||| / _--\u003d\u003e preempt-depth\n               |||| /\n               |||||     delay\n   cmd     pid ||||| time  |   caller\n      \\   /    |||||   \\   |   /\n      du-2803  3Dnh2    0us : __trace_start_sched_wakeup (try_to_wake_up)\n        ..............................................................\n        ... we are running on CPU#3, PID 2778 gets woken to CPU#1: ...\n        ..............................................................\n      du-2803  3Dnh2    0us : __trace_start_sched_wakeup \u003c\u003c...\u003e-2778\u003e (73 1)\n      du-2803  3Dnh2    0us : _raw_spin_unlock (try_to_wake_up)\n        ................................................\n        ... still on CPU#3, we send an IPI to CPU#1: ...\n        ................................................\n      du-2803  3Dnh1    0us : resched_task (try_to_wake_up)\n      du-2803  3Dnh1    1us : smp_send_reschedule (try_to_wake_up)\n      du-2803  3Dnh1    1us : send_IPI_mask_bitmask (smp_send_reschedule)\n      du-2803  3Dnh1    2us : _raw_spin_unlock_irqrestore (try_to_wake_up)\n        ...............................................\n        ... 1 usec later, the IPI arrives on CPU#1: ...\n        ...............................................\n  \u003cidle\u003e-0     1Dnh.    2us : smp_reschedule_interrupt (c0100c5a 0 0)\n\nSo far so good, this is the normal wakeup/preemption mechanism.  But here\ncomes the scheduler anomaly on CPU#1:\n\n  \u003cidle\u003e-0     1Dnh.    2us : preempt_schedule_irq (need_resched)\n  \u003cidle\u003e-0     1Dnh.    2us : preempt_schedule_irq (need_resched)\n  \u003cidle\u003e-0     1Dnh.    3us : __schedule (preempt_schedule_irq)\n  \u003cidle\u003e-0     1Dnh.    3us : profile_hit (__schedule)\n  \u003cidle\u003e-0     1Dnh1    3us : sched_clock (__schedule)\n  \u003cidle\u003e-0     1Dnh1    4us : _raw_spin_lock_irq (__schedule)\n  \u003cidle\u003e-0     1Dnh1    4us : _raw_spin_lock_irqsave (__schedule)\n  \u003cidle\u003e-0     1Dnh2    5us : _raw_spin_unlock (__schedule)\n  \u003cidle\u003e-0     1Dnh1    5us : preempt_schedule (__schedule)\n  \u003cidle\u003e-0     1Dnh1    6us : _raw_spin_lock (__schedule)\n  \u003cidle\u003e-0     1Dnh2    6us : find_next_bit (__schedule)\n  \u003cidle\u003e-0     1Dnh2    6us : _raw_spin_lock (__schedule)\n  \u003cidle\u003e-0     1Dnh3    7us : find_next_bit (__schedule)\n  \u003cidle\u003e-0     1Dnh3    7us : find_next_bit (__schedule)\n  \u003cidle\u003e-0     1Dnh3    8us : _raw_spin_unlock (__schedule)\n  \u003cidle\u003e-0     1Dnh2    8us : preempt_schedule (__schedule)\n  \u003cidle\u003e-0     1Dnh2    8us : find_next_bit (__schedule)\n  \u003cidle\u003e-0     1Dnh2    9us : trace_stop_sched_switched (__schedule)\n  \u003cidle\u003e-0     1Dnh2    9us : _raw_spin_lock (trace_stop_sched_switched)\n  \u003cidle\u003e-0     1Dnh3   10us : trace_stop_sched_switched \u003c\u003c...\u003e-2778\u003e (73 8c)\n  \u003cidle\u003e-0     1Dnh3   10us : _raw_spin_unlock (trace_stop_sched_switched)\n  \u003cidle\u003e-0     1Dnh1   10us : _raw_spin_unlock (__schedule)\n  \u003cidle\u003e-0     1Dnh.   11us : local_irq_enable_noresched (preempt_schedule_irq)\n  \u003cidle\u003e-0     1Dnh.   11us \u003c (0)\n\nwe didnt pick up pid 2778! It only gets scheduled much later:\n\n   \u003c...\u003e-2778  1Dnh2  412us : __switch_to (__schedule)\n   \u003c...\u003e-2778  1Dnh2  413us : __schedule \u003c\u003cidle\u003e-0\u003e (8c 73)\n   \u003c...\u003e-2778  1Dnh2  413us : _raw_spin_unlock (__schedule)\n   \u003c...\u003e-2778  1Dnh1  413us : trace_stop_sched_switched (__schedule)\n   \u003c...\u003e-2778  1Dnh1  414us : _raw_spin_lock (trace_stop_sched_switched)\n   \u003c...\u003e-2778  1Dnh2  414us : trace_stop_sched_switched \u003c\u003c...\u003e-2778\u003e (73 1)\n   \u003c...\u003e-2778  1Dnh2  414us : _raw_spin_unlock (trace_stop_sched_switched)\n   \u003c...\u003e-2778  1Dnh1  415us : trace_stop_sched_switched (__schedule)\n\nthe reason for this anomaly is the following code in dependent_sleeper():\n\n                /*\n                 * If a user task with lower static priority than the\n                 * running task on the SMT sibling is trying to schedule,\n                 * delay it till there is proportionately less timeslice\n                 * left of the sibling task to prevent a lower priority\n                 * task from using an unfair proportion of the\n                 * physical cpu\u0027s resources. -ck\n                 */\n[...]\n                        if (((smt_curr-\u003etime_slice * (100 - sd-\u003eper_cpu_gain) /\n                                100) \u003e task_timeslice(p)))\n                                        ret \u003d 1;\n\nNote that in contrast to the comment above, we dont actually do the check\nbased on static priority, we do the check based on timeslices.  But\ntimeslices go up and down, and even highprio tasks can randomly have very\nlow timeslices (just before their next refill) and can thus be judged as\n\u0027lowprio\u0027 by the above piece of code.  This condition is clearly buggy.\nThe correct test is to check for static_prio _and_ to check for the\npreemption priority.  Even on different static priority levels, a\nhigher-prio interactive task should not be delayed due to a\nhigher-static-prio CPU hog.\n\nThere is a symmetric bug in the \u0027kick SMT sibling\u0027 code of this function as\nwell, which can be solved in a similar way.\n\nThe patch below (against the current scheduler queue in -mm) fixes both\nbugs.  I have build and boot-tested this on x86 SMT, and nice +20 tasks\nstill get properly throttled - so the dependent-sleeper logic is still in\naction.\n\nbtw., these bugs pessimised the SMT scheduler because the \u0027delay wakeup\u0027\nproperty was applied too liberally, so this fix is likely a throughput\nimprovement as well.\n\nI separated out a smt_slice() function to make the code easier to read.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d79fc0fc6645b0cf5cd980da76942ca6d6300fa4",
      "tree": "e74aca1df1d37dbd7af66636a4e39a3f7e1af479",
      "parents": [
        "95cdf3b799a481969a48d69a1a52916ad5da6694"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:26:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:22 2005 -0700"
      },
      "message": "[PATCH] sched: TASK_NONINTERACTIVE\n\nThis patch implements a task state bit (TASK_NONINTERACTIVE), which can be\nused by blocking points to mark the task\u0027s wait as \"non-interactive\".  This\ndoes not mean the task will be considered a CPU-hog - the wait will simply\nnot have an effect on the waiting task\u0027s priority - positive or negative\nalike.  Right now only pipe_wait() will make use of it, because it\u0027s a\ncommon source of not-so-interactive waits (kernel compilation jobs, etc.).\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95cdf3b799a481969a48d69a1a52916ad5da6694",
      "tree": "38aab4b832aaebe2e36879deaeec36e7a939590d",
      "parents": [
        "da5a5522709a030da91932d4d4c2b179a481a8c0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:26:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:22 2005 -0700"
      },
      "message": "[PATCH] sched cleanups\n\nwhitespace cleanups.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da5a5522709a030da91932d4d4c2b179a481a8c0",
      "tree": "7e7d528dcc1cccf71215ebb5b8774a849e5a1753",
      "parents": [
        "fc38ed7531eefa332c8c69ee288487860cd6b426"
      ],
      "author": {
        "name": "M.Baris Demiray",
        "email": "baris@labristeknoloji.com",
        "time": "Sat Sep 10 00:26:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:22 2005 -0700"
      },
      "message": "[PATCH] sched: make idlest_group/cpu cpus_allowed-aware\n\nAdd relevant checks into find_idlest_group() and find_idlest_cpu() to make\nthem return only the groups that have allowed CPUs and allowed CPUs\nrespectively.\n\nSigned-off-by: M.Baris Demiray \u003cbaris@labristeknoloji.com\u003e\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fc38ed7531eefa332c8c69ee288487860cd6b426",
      "tree": "d358d26559cc33c5d4ef2ed2f9cef8cf2b8ed3ae",
      "parents": [
        "a7482a2e7775d163aecd8c95af7bb1b8c83890cc"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Sat Sep 10 00:26:08 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:22 2005 -0700"
      },
      "message": "[PATCH] sched: run SCHED_NORMAL tasks with real time tasks on SMT siblings\n\nThe hyperthread aware nice handling currently puts to sleep any non real\ntime task when a real time task is running on its sibling cpu.  This can\nlead to prolonged starvation by having the non real time task pegged to the\ncpu with load balancing not pulling that task away.\n\nCurrently we force lower priority hyperthread tasks to run a percentage of\ntime difference based on timeslice differences which is meaningless when\ncomparing real time tasks to SCHED_NORMAL tasks.  We can allow non real\ntime tasks to run with real time tasks on the sibling up to per_cpu_gain%\nif we use jiffies as a counter.\n\nCleanups and micro-optimisations to the relevant code section should make\nit more understandable as well.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4247bdc60048018b98f71228b45cfbc5f5270c86",
      "tree": "6f6abbd10685af84c97e661da6771726a12209ac",
      "parents": [
        "fb1c8f93d869b34cacb8b8932e2b83d96a19d720"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sat Sep 10 00:26:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:21 2005 -0700"
      },
      "message": "[PATCH] cpuset semaphore depth check deadlock fix\n\nThe cpusets-formalize-intermediate-gfp_kernel-containment patch\nhas a deadlock problem.\n\nThis patch was part of a set of four patches to make more\nextensive use of the cpuset \u0027mem_exclusive\u0027 attribute to\nmanage kernel GFP_KERNEL memory allocations and to constrain\nthe out-of-memory (oom) killer.\n\nA task that is changing cpusets in particular ways on a system\nwhen it is very short of free memory could double trip over\nthe global cpuset_sem semaphore (get the lock and then deadlock\ntrying to get it again).\n\nThe second attempt to get cpuset_sem would be in the routine\ncpuset_zone_allowed().  This was discovered by code inspection.\nI can not reproduce the problem except with an artifically\nhacked kernel and a specialized stress test.\n\nIn real life you cannot hit this unless you are manipulating\ncpusets, and are very unlikely to hit it unless you are rapidly\nmodifying cpusets on a memory tight system.  Even then it would\nbe a rare occurence.\n\nIf you did hit it, the task double tripping over cpuset_sem\nwould deadlock in the kernel, and any other task also trying\nto manipulate cpusets would deadlock there too, on cpuset_sem.\nYour batch manager would be wedged solid (if it was cpuset\nsavvy), but classic Unix shells and utilities would work well\nenough to reboot the system.\n\nThe unusual condition that led to this bug is that unlike most\nsemaphores, cpuset_sem _can_ be acquired while in the page\nallocation code, when __alloc_pages() calls cpuset_zone_allowed.\nSo it easy to mistakenly perform the following sequence:\n  1) task makes system call to alter a cpuset\n  2) take cpuset_sem\n  3) try to allocate memory\n  4) memory allocator, via cpuset_zone_allowed, trys to take cpuset_sem\n  5) deadlock\n\nThe reason that this is not a serious bug for most users\nis that almost all calls to allocate memory don\u0027t require\ntaking cpuset_sem.  Only some code paths off the beaten\ntrack require taking cpuset_sem -- which is good.  Taking\na global semaphore on the main code path for allocating\nmemory would not scale well.\n\nThis patch fixes this deadlock by wrapping the up() and down()\ncalls on cpuset_sem in kernel/cpuset.c with code that tracks\nthe nesting depth of the current task on that semaphore, and\nonly does the real down() if the task doesn\u0027t hold the lock\nalready, and only does the real up() if the nesting depth\n(number of unmatched downs) is exactly one.\n\nThe previous required use of refresh_mems(), anytime that\nthe cpuset_sem semaphore was acquired and the code executed\nwhile holding that semaphore might try to allocate memory, is\nno longer required.  Two refresh_mems() calls were removed\nthanks to this.  This is a good change, as failing to get\nall the necessary refresh_mems() calls placed was a primary\nsource of bugs in this cpuset code.  The only remaining call\nto refresh_mems() is made while doing a memory allocation,\nif certain task memory placement data needs to be updated\nfrom its cpuset, due to the cpuset having been changed behind\nthe tasks back.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb1c8f93d869b34cacb8b8932e2b83d96a19d720",
      "tree": "a006d078aa02e421a7dc4793c335308204859d36",
      "parents": [
        "4327edf6b8a7ac7dce144313947995538842d8fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:25:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:21 2005 -0700"
      },
      "message": "[PATCH] spinlock consolidation\n\nThis patch (written by me and also containing many suggestions of Arjan van\nde Ven) does a major cleanup of the spinlock code.  It does the following\nthings:\n\n - consolidates and enhances the spinlock/rwlock debugging code\n\n - simplifies the asm/spinlock.h files\n\n - encapsulates the raw spinlock type and moves generic spinlock\n   features (such as -\u003ebreak_lock) into the generic code.\n\n - cleans up the spinlock code hierarchy to get rid of the spaghetti.\n\nMost notably there\u0027s now only a single variant of the debugging code,\nlocated in lib/spinlock_debug.c.  (previously we had one SMP debugging\nvariant per architecture, plus a separate generic one for UP builds)\n\nAlso, i\u0027ve enhanced the rwlock debugging facility, it will now track\nwrite-owners.  There is new spinlock-owner/CPU-tracking on SMP builds too.\nAll locks have lockup detection now, which will work for both soft and hard\nspin/rwlock lockups.\n\nThe arch-level include files now only contain the minimally necessary\nsubset of the spinlock code - all the rest that can be generalized now\nlives in the generic headers:\n\n include/asm-i386/spinlock_types.h       |   16\n include/asm-x86_64/spinlock_types.h     |   16\n\nI have also split up the various spinlock variants into separate files,\nmaking it easier to see which does what. The new layout is:\n\n   SMP                         |  UP\n   ----------------------------|-----------------------------------\n   asm/spinlock_types_smp.h    |  linux/spinlock_types_up.h\n   linux/spinlock_types.h      |  linux/spinlock_types.h\n   asm/spinlock_smp.h          |  linux/spinlock_up.h\n   linux/spinlock_api_smp.h    |  linux/spinlock_api_up.h\n   linux/spinlock.h            |  linux/spinlock.h\n\n/*\n * here\u0027s the role of the various spinlock/rwlock related include files:\n *\n * on SMP builds:\n *\n *  asm/spinlock_types.h: contains the raw_spinlock_t/raw_rwlock_t and the\n *                        initializers\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  asm/spinlock.h:       contains the __raw_spin_*()/etc. lowlevel\n *                        implementations, mostly inline assembly code\n *\n *   (also included on UP-debug builds:)\n *\n *  linux/spinlock_api_smp.h:\n *                        contains the prototypes for the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n *\n * on UP builds:\n *\n *  linux/spinlock_type_up.h:\n *                        contains the generic, simplified UP spinlock type.\n *                        (which is an empty structure on non-debug builds)\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  linux/spinlock_up.h:\n *                        contains the __raw_spin_*()/etc. version of UP\n *                        builds. (which are NOPs on non-debug, non-preempt\n *                        builds)\n *\n *   (included on UP-non-debug builds:)\n *\n *  linux/spinlock_api_up.h:\n *                        builds the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n */\n\nAll SMP and UP architectures are converted by this patch.\n\narm, i386, ia64, ppc, ppc64, s390/s390x, x64 was build-tested via\ncrosscompilers.  m32r, mips, sh, sparc, have not been tested yet, but should\nbe mostly fine.\n\nFrom: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\n\n  Booted and lightly tested on a500-44 (64-bit, SMP kernel, dual CPU).\n  Builds 32-bit SMP kernel (not booted or tested).  I did not try to build\n  non-SMP kernels.  That should be trivial to fix up later if necessary.\n\n  I converted bit ops atomic_hash lock to raw_spinlock_t.  Doing so avoids\n  some ugly nesting of linux/*.h and asm/*.h files.  Those particular locks\n  are well tested and contained entirely inside arch specific code.  I do NOT\n  expect any new issues to arise with them.\n\n If someone does ever need to use debug/metrics with them, then they will\n  need to unravel this hairball between spinlocks, atomic ops, and bit ops\n  that exist only because parisc has exactly one atomic instruction: LDCW\n  (load and clear word).\n\nFrom: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\n\n   ia64 fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjanv@infradead.org\u003e\nSigned-off-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Mikael Pettersson \u003cmikpe@csd.uu.se\u003e\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab2af1f5005069321c5d130f09cce577b03f43ef",
      "tree": "73a70ba486f522cd9eeeef376ede2b5a1c1b473b",
      "parents": [
        "6e72ad2c581de121cc7e772469e2a8f6b1fd4379"
      ],
      "author": {
        "name": "Dipankar Sarma",
        "email": "dipankar@in.ibm.com",
        "time": "Fri Sep 09 13:04:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:55 2005 -0700"
      },
      "message": "[PATCH] files: files struct with RCU\n\nPatch to eliminate struct files_struct.file_lock spinlock on the reader side\nand use rcu refcounting rcuref_xxx api for the f_count refcounter.  The\nupdates to the fdtable are done by allocating a new fdtable structure and\nsetting files-\u003efdt to point to the new structure.  The fdtable structure is\nprotected by RCU thereby allowing lock-free lookup.  For fd arrays/sets that\nare vmalloced, we use keventd to free them since RCU callbacks can\u0027t sleep.  A\nglobal list of fdtable to be freed is not scalable, so we use a per-cpu list.\nIf keventd is already handling the current cpu\u0027s work, we use a timer to defer\nqueueing of that work.\n\nSince the last publication, this patch has been re-written to avoid using\nexplicit memory barriers and use rcu_assign_pointer(), rcu_dereference()\npremitives instead.  This required that the fd information is kept in a\nseparate structure (fdtable) and updated atomically.\n\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "badf16621c1f9d1ac753be056fce11b43d6e0be5",
      "tree": "3fdf833fdf2e3d3a439090743539680449ec3428",
      "parents": [
        "c0dfb2905126e9e94edebbce8d3e05001301f52d"
      ],
      "author": {
        "name": "Dipankar Sarma",
        "email": "dipankar@in.ibm.com",
        "time": "Fri Sep 09 13:04:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:55 2005 -0700"
      },
      "message": "[PATCH] files: break up files struct\n\nIn order for the RCU to work, the file table array, sets and their sizes must\nbe updated atomically.  Instead of ensuring this through too many memory\nbarriers, we put the arrays and their sizes in a separate structure.  This\npatch takes the first step of putting the file table elements in a separate\nstructure fdtable that is embedded withing files_struct.  It also changes all\nthe users to refer to the file table using files_fdtable() macro.  Subsequent\napplciation of RCU becomes easier after this.\n\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c0dfb2905126e9e94edebbce8d3e05001301f52d",
      "tree": "db31f15f7e5dea0c812992c2ca87a1151507ed9c",
      "parents": [
        "8b6490e5faafb3a16ea45654fb55f9ff086f1495"
      ],
      "author": {
        "name": "Dipankar Sarma",
        "email": "dipankar@in.ibm.com",
        "time": "Fri Sep 09 13:04:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:54 2005 -0700"
      },
      "message": "[PATCH] files: rcuref APIs\n\nAdds a set of primitives to do reference counting for objects that are looked\nup without locks using RCU.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran_th@gmail.com\u003e\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "73a358d1892a8233801e3fd54668075b52ec42da",
      "tree": "851250c42eb890c6fa3afe59b3398e17ee850bae",
      "parents": [
        "ac0b1bc1edbe81c0cb36cad7e7f5b91f4d9e12ed"
      ],
      "author": {
        "name": "KUROSAWA Takahiro",
        "email": "kurosawa@valinux.co.jp",
        "time": "Fri Sep 09 13:02:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:32 2005 -0700"
      },
      "message": "[PATCH] fix for cpusets minor problem\n\nThis patch fixes minor problem that the CPUSETS have when files in the\ncpuset filesystem are read after lseek()-ed beyond the EOF.\n\nSigned-off-by: KUROSAWA Takahiro \u003ckurosawa@valinux.co.jp\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "383f2835eb9afb723af71850037b2f074ac9db60",
      "tree": "1ef99fd4d7246b2afa16dc7d1514b6ff25fa8284",
      "parents": [
        "b0d62e6d5b3318b6b722121d945afa295f7201b5"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Fri Sep 09 13:02:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:31 2005 -0700"
      },
      "message": "[PATCH] Prefetch kernel stacks to speed up context switch\n\nFor architecture like ia64, the switch stack structure is fairly large\n(currently 528 bytes).  For context switch intensive application, we found\nthat significant amount of cache misses occurs in switch_to() function.\nThe following patch adds a hook in the schedule() function to prefetch\nswitch stack structure as soon as \u0027next\u0027 task is determined.  This allows\nmaximum overlap in prefetch cache lines for that structure.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b0d62e6d5b3318b6b722121d945afa295f7201b5",
      "tree": "9dfed36c97bcdbeaf1576b62752bfcafbfae808a",
      "parents": [
        "f76baf9365bd66216bf0e0ebfc083e22eda6215b"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Fri Sep 09 13:02:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:31 2005 -0700"
      },
      "message": "[PATCH] fix disassociate_ctty vs. fork race\n\nRace is as follows. Process A forks process B, both being part of the same\nsession. Then, A calls disassociate_ctty while B forks C:\n\nA\t\t\t\tB\n\u003d\u003d\u003d\u003d\t\t\t\t\u003d\u003d\u003d\u003d\n\t\t\t\tfork()\n\t\t\t\t  copy_signal()\ndissasociate_ctty()\t\t....\n\t\t\t\t  attach_pid(p, PIDTYPE_SID, p-\u003esignal-\u003esession);\n\nNow, C can have current-\u003esignal-\u003etty pointing to a freed tty structure, as\nit hasn\u0027t yet been added to the session group (to have its controlling tty\ncleared on the diassociate_ctty() call).\n\nThis has shown up as an oops but could be even more serious.  I haven\u0027t\ntried to create a test case, but a customer has verified that the patch\nbelow resolves the issue, which was occuring quite frequently.  I\u0027ll try\nand post the test case if i can.\n\nThe patch simply checks for a NULL tty *after* it has been attached to the\nproper session group and clears it as necessary.  Alternatively, we could\nsimply do the tty assignment after the the process is added to the proper\nsession group.\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b5d37ac02954572e80e09255bb5737277aaee8e",
      "tree": "6072a602430af9a95d2bcadf149bd41c8045ef67",
      "parents": [
        "1299232b5743da454c73853b90b3d2d83dce1737"
      ],
      "author": {
        "name": "Giancarlo Formicuccia",
        "email": "giancarlo.formicuccia@gmail.com",
        "time": "Fri Sep 09 13:01:22 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:56:43 2005 -0700"
      },
      "message": "[PATCH] Clear task_struct-\u003efs_excl on fork()\n\nAn oversight.  We don\u0027t want to carry the IO scheduler\u0027s \"we hold exclusive fs\nresources\" hint over to the child across fork().\n\nAcked-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "64e47488c913ac704d465a6af86a26786d1412a5",
      "tree": "d3b0148592963dcde26e4bb35ddfec8b1eaf8e23",
      "parents": [
        "4a35a46bf1cda4737c428380d1db5d15e2590d18",
        "caf39e87cc1182f7dae84eefc43ca14d54c78ef9"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Sep 08 01:45:47 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Sep 08 01:45:47 2005 -0400"
      },
      "message": "Merge linux-2.6 with linux-acpi-2.6\n"
    },
    {
      "commit": "0dd7f883a9e21c5f2ff5e8f1cbb0e78cdc044d8a",
      "tree": "080ba867394e0346b699ffe17973a76faa0e6920",
      "parents": [
        "cc896f08717c445235554a7963a7b2ecf58911ad",
        "344babaa9d39b10b85cadec4e5335d43b52b4ec0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 17:28:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 17:28:25 2005 -0700"
      },
      "message": "Merge branch \u0027upstream\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6 \n"
    },
    {
      "commit": "deac66ae454cacf942c051b86d9232af546fb187",
      "tree": "17a72e7a2dcf2d1a93a6afdef661f290b1888f1c",
      "parents": [
        "bce0649417d6e71f6df8ab7b11103d247913b142"
      ],
      "author": {
        "name": "Keshavamurthy Anil S",
        "email": "anil.s.keshavamurthy@intel.com",
        "time": "Tue Sep 06 15:19:35 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:58:01 2005 -0700"
      },
      "message": "[PATCH] kprobes: fix bug when probed on task and isr functions\n\nThis patch fixes a race condition where in system used to hang or sometime\ncrash within minutes when kprobes are inserted on ISR routine and a task\nroutine.\n\nThe fix has been stress tested on i386, ia64, pp64 and on x86_64.  To\nreproduce the problem insert kprobes on schedule() and do_IRQ() functions\nand you should see hang or system crash.\n\nSigned-off-by: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d0aaff9796c3310326d10da44fc0faed352a1d29",
      "tree": "591fd8dedf34464989d23bbb0e66a1ccb2fa18a6",
      "parents": [
        "505db03639db34ca2c64fe7ee27190d324281f2c"
      ],
      "author": {
        "name": "Prasanna S Panchamukhi",
        "email": "prasanna@in.ibm.com",
        "time": "Tue Sep 06 15:19:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:59 2005 -0700"
      },
      "message": "[PATCH] Kprobes: prevent possible race conditions generic\n\nThere are possible race conditions if probes are placed on routines within the\nkprobes files and routines used by the kprobes.  For example if you put probe\non get_kprobe() routines, the system can hang while inserting probes on any\nroutine such as do_fork().  Because while inserting probes on do_fork(),\nregister_kprobes() routine grabs the kprobes spin lock and executes\nget_kprobe() routine and to handle probe of get_kprobe(), kprobes_handler()\ngets executed and tries to grab kprobes spin lock, and spins forever.  This\npatch avoids such possible race conditions by preventing probes on routines\nwithin the kprobes file and routines used by kprobes.\n\nI have modified the patches as per Andi Kleen\u0027s suggestion to move kprobes\nroutines and other routines used by kprobes to a seperate section\n.kprobes.text.\n\nAlso moved page fault and exception handlers, general protection fault to\n.kprobes.text section.\n\nThese patches have been tested on i386, x86_64 and ppc64 architectures, also\ncompiled on ia64 and sparc64 architectures.\n\nSigned-off-by: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd3927105b6f65afb7dac17682172cdfb86d3f00",
      "tree": "5cf282aff500cad23b9d7e13dc19b2b2d31e1ce6",
      "parents": [
        "640e803376b9c4072f69fec42e304c974a631298"
      ],
      "author": {
        "name": "Pekka J Enberg",
        "email": "penberg@cs.Helsinki.FI",
        "time": "Tue Sep 06 15:18:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:45 2005 -0700"
      },
      "message": "[PATCH] introduce and use kzalloc\n\nThis patch introduces a kzalloc wrapper and converts kernel/ to use it.  It\nsaves a little program text.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab8d11beb46f0bd0617e04205c01f5c1fe845b61",
      "tree": "33b5aa5b63268b8f4d1428d74547fd351bb37113",
      "parents": [
        "5e21ccb136047e556acf0fdf227cab5db05c1c25"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Tue Sep 06 15:18:24 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:43 2005 -0700"
      },
      "message": "[PATCH] remove duplicated code from proc and ptrace\n\nExtract common code used by ptrace_attach() and may_ptrace_attach()\ninto a separate function.\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nCc: \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0811bab24ff1eecab38110eda7ea7847db95c64e",
      "tree": "1de9a8a04c8c3dec7f9cdf46f2db6b6609757127",
      "parents": [
        "d1b551386a5f3f50a5003b691f819b07f8e6f034"
      ],
      "author": {
        "name": "John Hawkes",
        "email": "hawkes@sgi.com",
        "time": "Tue Sep 06 15:18:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:41 2005 -0700"
      },
      "message": "[PATCH] cpusets: re-enable \"dynamic sched domains\"\n\nRevert the hack introduced last week.\n\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d1b551386a5f3f50a5003b691f819b07f8e6f034",
      "tree": "f57c2d3228023a1cef91dfa052d2bf35901f5921",
      "parents": [
        "9c1cfda20a508b181bdda8c0045f7c0c333880a5"
      ],
      "author": {
        "name": "John Hawkes",
        "email": "hawkes@sgi.com",
        "time": "Tue Sep 06 15:18:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:41 2005 -0700"
      },
      "message": "[PATCH] cpusets: fix the \"dynamic sched domains\" bug\n\nFor a NUMA system with multiple CPUs per node, declaring a cpu-exclusive\ncpuset that includes only some, but not all, of the CPUs in a node will mangle\nthe sched domain structures.\n\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nCc; Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9c1cfda20a508b181bdda8c0045f7c0c333880a5",
      "tree": "eaa5b7ef7407316c36def26169574d0e37b1e60a",
      "parents": [
        "ef08e3b4981aebf2ba9bd7025ef7210e8eec07ce"
      ],
      "author": {
        "name": "John Hawkes",
        "email": "hawkes@sgi.com",
        "time": "Tue Sep 06 15:18:14 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:40 2005 -0700"
      },
      "message": "[PATCH] cpusets: Move the ia64 domain setup code to the generic code\n\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ef08e3b4981aebf2ba9bd7025ef7210e8eec07ce",
      "tree": "3b5386e011c87dde384115c8eb0d6961c2536025",
      "parents": [
        "9bf2229f8817677127a60c177aefce1badd22d7b"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Sep 06 15:18:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:40 2005 -0700"
      },
      "message": "[PATCH] cpusets: confine oom_killer to mem_exclusive cpuset\n\nNow the real motivation for this cpuset mem_exclusive patch series seems\ntrivial.\n\nThis patch keeps a task in or under one mem_exclusive cpuset from provoking an\noom kill of a task under a non-overlapping mem_exclusive cpuset.  Since only\ninterrupt and GFP_ATOMIC allocations are allowed to escape mem_exclusive\ncontainment, there is little to gain from oom killing a task under a\nnon-overlapping mem_exclusive cpuset, as almost all kernel and user memory\nallocation must come from disjoint memory nodes.\n\nThis patch enables configuring a system so that a runaway job under one\nmem_exclusive cpuset cannot cause the killing of a job in another such cpuset\nthat might be using very high compute and memory resources for a prolonged\ntime.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9bf2229f8817677127a60c177aefce1badd22d7b",
      "tree": "06e95863a26b197233081db1dafd869dfd231950",
      "parents": [
        "f90b1d2f1aaaa40c6519a32e69615edc25bb97d5"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Sep 06 15:18:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:40 2005 -0700"
      },
      "message": "[PATCH] cpusets: formalize intermediate GFP_KERNEL containment\n\nThis patch makes use of the previously underutilized cpuset flag\n\u0027mem_exclusive\u0027 to provide what amounts to another layer of memory placement\nresolution.  With this patch, there are now the following four layers of\nmemory placement available:\n\n 1) The whole system (interrupt and GFP_ATOMIC allocations can use this),\n 2) The nearest enclosing mem_exclusive cpuset (GFP_KERNEL allocations can use),\n 3) The current tasks cpuset (GFP_USER allocations constrained to here), and\n 4) Specific node placement, using mbind and set_mempolicy.\n\nThese nest - each layer is a subset (same or within) of the previous.\n\nLayer (2) above is new, with this patch.  The call used to check whether a\nzone (its node, actually) is in a cpuset (in its mems_allowed, actually) is\nextended to take a gfp_mask argument, and its logic is extended, in the case\nthat __GFP_HARDWALL is not set in the flag bits, to look up the cpuset\nhierarchy for the nearest enclosing mem_exclusive cpuset, to determine if\nplacement is allowed.  The definition of GFP_USER, which used to be identical\nto GFP_KERNEL, is changed to also set the __GFP_HARDWALL bit, in the previous\ncpuset_gfp_hardwall_flag patch.\n\nGFP_ATOMIC and GFP_KERNEL allocations will stay within the current tasks\ncpuset, so long as any node therein is not too tight on memory, but will\nescape to the larger layer, if need be.\n\nThe intended use is to allow something like a batch manager to handle several\njobs, each job in its own cpuset, but using common kernel memory for caches\nand such.  Swapper and oom_kill activity is also constrained to Layer (2).  A\ntask in or below one mem_exclusive cpuset should not cause swapping on nodes\nin another non-overlapping mem_exclusive cpuset, nor provoke oom_killing of a\ntask in another such cpuset.  Heavy use of kernel memory for i/o caching and\nsuch by one job should not impact the memory available to jobs in other\nnon-overlapping mem_exclusive cpusets.\n\nThis patch enables providing hardwall, inescapable cpusets for memory\nallocations of each job, while sharing kernel memory allocations between\nseveral jobs, in an enclosing mem_exclusive cpuset.\n\nLike Dinakar\u0027s patch earlier to enable administering sched domains using the\ncpu_exclusive flag, this patch also provides a useful meaning to a cpuset flag\nthat had previously done nothing much useful other than restrict what cpuset\nconfigurations were allowed.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39ed3fdeec1290dd246dcf1da6b278566987a084",
      "tree": "46b4f08e2c61eca5871c4805ec4448f1408f2e69",
      "parents": [
        "580b2e3c0183818adf6151e60270405b02ea8504"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Tue Sep 06 15:17:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:33 2005 -0700"
      },
      "message": "[PATCH] futex: remove duplicate code\n\nThis patch cleans up the error path of futex_fd() by removing duplicate\ncode.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e752dd6cc66a3e6a11396928998baf390cc00420",
      "tree": "b24b388d80acec6527e66b07f0d308d48319c476",
      "parents": [
        "a97c9bf33f4612e2aed6f000f6b1d268b6814f3c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Sep 06 15:17:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:33 2005 -0700"
      },
      "message": "[PATCH] fix send_sigqueue() vs thread exit race\n\nposix_timer_event() first checks that the thread (SIGEV_THREAD_ID case)\ndoes not have PF_EXITING flag, then it calls send_sigqueue() which locks\ntask list.  But if the thread exits in between the kernel will oops\n(-\u003esighand \u003d\u003d NULL after __exit_sighand).\n\nThis patch moves the PF_EXITING check into the send_sigqueue(), it must be\ndone atomically under tasklist_lock.  When send_sigqueue() detects exiting\nthread it returns -1.  In that case posix_timer_event will send the signal\nto thread group.\n\nAlso, this patch fixes task_struct use-after-free in posix_timer_event.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0730ded5be28653675ed314fdd878b8db5f88aa4",
      "tree": "e224523373424f4402b70d351caa48e94133a9ab",
      "parents": [
        "5acd57936c3224fd86e838201e528e0169373e9b"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Sep 06 15:17:37 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:32 2005 -0700"
      },
      "message": "[PATCH] remove a redundant variable in sys_prctl()\n\nThe patch removes a redundant variable `sig\u0027 from sys_prctl().\n\nFor some reason, when sys_prctl is called with option \u003d\u003d PR_SET_PDEATHSIG\nthen the value of arg2 is assigned to an int variable named sig.  Then sig\nis tested with valid_signal() and later used to set the value of\ncurrent-\u003epdeath_signal .\n\nThere is no reason to use this intermediate variable since valid_signal()\ntakes a unsigned long argument, so it can handle being passed arg2\ndirectly, and if the call to valid_signal is OK, then we know the value of\narg2 is in the range zero to _NSIG and thus it\u0027ll easily fit in a plain int\nand thus there\u0027s no problem assigning it later to current-\u003epdeath_signal\n(which is an int).\n\nThe patch gets rid of the pointless variable `sig\u0027.\nThis reduces the size of kernel/sys.o in 2.6.13-rc6-mm1 by 32 bytes on my\nsystem.\n\nPatch has been compile tested, boot tested, and just to make damn sure I\ndidn\u0027t break anything I wrote a quick test app that calls\nprctl(PR_SET_PDEATHSIG ...) with the entire range of values for a\nunsigned long, and it behaves as expected with and without the patch.\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6c9c0b52b8c6b68b05bb06efd7079a8fc5e9ba60",
      "tree": "9b7387c8175cc877d0006a0f1e2905eb5102a0fa",
      "parents": [
        "439c430e3d448b16112de3f3d92bef6ee2639d89"
      ],
      "author": {
        "name": "Peter Staubach",
        "email": "staubach@redhat.com",
        "time": "Tue Sep 06 15:17:35 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:31 2005 -0700"
      },
      "message": "[PATCH] largefile support for accounting\n\nThere is a problem in the accounting subsystem in the kernel can not\ncorrectly handle files larger than 2GB.  The output file containing the\nprocess accounting data can grow very large if the system is large enough\nand active enough.  If the 2GB limit is reached, then the system simply\nstops storing process accounting data.\n\nAnother annoying problem is that once the system reaches this 2GB limit,\nthen every process which exits will receive a signal, SIGXFSZ.  This signal\nis generated because an attempt was made to write beyond the limit for the\nfile descriptor.  This signal makes it look like every process has exited\ndue to a signal, when in fact, they have not.\n\nThe solution is to add the O_LARGEFILE flag to the list of flags used to\nopen the accounting file.  The rest of the accounting support is already\nlargefile safe.\n\nThe changes were tested by constructing a large file (just short of 2GB),\nenabling accounting, and then running enough commands to cause the\naccounting data generated to increase the size of the file to 2GB.  Without\nthe changes, the file grows to 2GB and the last command run in the test\nscript appears to exit due a signal when it has not.  With the changes,\nthings work as expected and quietly.\n\nThere are some user level changes required so that it can deal with\nlargefiles, but those are being handled separately.\n\nSigned-off-by: Peter Staubach \u003cstaubach@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc505a478d3fffcfb269b72f64df4510305cfe81",
      "tree": "e8a788fb93bc18a10be134ab6218365f53d2d1dc",
      "parents": [
        "2d237c63659c098a662b1b09d43460f04c498436"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Tue Sep 06 15:17:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:31 2005 -0700"
      },
      "message": "[PATCH] do_notify_parent_cldstop() cleanup\n\nThis patch simplifies the usage of do_notify_parent_cldstop(), it lessens\nthe source and .text size slightly, and makes the code (in my opinion) a\nbit more readable.\n\nI am sending this patch now because I\u0027m afraid Paul will touch\ndo_notify_parent_cldstop() really soon, It\u0027s better to cleanup first.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f26fdd59929e1144c6caf72adcaf4561d6e682a4",
      "tree": "85081e47a7c5943ac1d262e806e4138e14360ecc",
      "parents": [
        "f8eeaaf4180334a8e5c3582fe62a5f8176a8c124"
      ],
      "author": {
        "name": "Karsten Wiese",
        "email": "annabellesgarden@yahoo.de",
        "time": "Tue Sep 06 15:17:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:29 2005 -0700"
      },
      "message": "[PATCH] CHECK_IRQ_PER_CPU() to avoid dead code in __do_IRQ()\n\nIRQ_PER_CPU is not used by all architectures.  This patch introduces the\nmacros ARCH_HAS_IRQ_PER_CPU and CHECK_IRQ_PER_CPU() to avoid the generation\nof dead code in __do_IRQ().\n\nARCH_HAS_IRQ_PER_CPU is defined by architectures using IRQ_PER_CPU in their\ninclude/asm_ARCH/irq.h file.\n\nThrough grepping the tree I found the following architectures currently use\nIRQ_PER_CPU:\n\n        cris, ia64, ppc, ppc64 and parisc.\n\nSigned-off-by: Karsten Wiese \u003cannabellesgarden@yahoo.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "230649da7cb73914b8b2a1ffc802a2951e970454",
      "tree": "ea18d1246118221640d1aebc89d6f1ba11b4869c",
      "parents": [
        "b80068543794864f533163c586be2a1a9880a65d"
      ],
      "author": {
        "name": "Mika Kukkonen",
        "email": "mikukkon@gmail.com",
        "time": "Tue Sep 06 15:17:17 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:28 2005 -0700"
      },
      "message": "[PATCH] create_workqueue_thread() signedness fix\n\nWith \"-W -Wno-unused -Wno-sign-compare\" I get the following compile warning:\n\n  CC      kernel/workqueue.o\nkernel/workqueue.c: In function `workqueue_cpu_callback\u0027:\nkernel/workqueue.c:504: warning: ordered comparison of pointer with integer zero\n\nOn error create_workqueue_thread() returns NULL, not negative pointer, so\nfollowing trivial patch suggests itself.\n\nSigned-off-by: Mika Kukkonen \u003cmikukkon@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "378bac820be6a0ec95df8151524de73ad2b2d2ac",
      "tree": "457827b58dcbf923e151b08128d84c33d13c1149",
      "parents": [
        "19b4946ca9d1e35d4c641dcebe27378de34f3ddd"
      ],
      "author": {
        "name": "Thomas Koeller",
        "email": "thomas@koeller.dyndns.org",
        "time": "Tue Sep 06 15:17:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:26 2005 -0700"
      },
      "message": "[PATCH] flush icache early when loading module\n\nChange the sequence of operations performed during module loading to flush\nthe instruction cache before module parameters are processed.  If a module\nhas parameters of an unusual type that cannot be handled using the standard\naccessor functions param_set_xxx and param_get_xxx, it has to to provide a\nset of accessor functions for this type.  This requires module code to be\nexecuted during parameter processing, which is of course only possible\nafter the icache has been flushed.\n\nSigned-off-by: Thomas Koeller \u003cthomas@koeller.dyndns.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "486d46aefe7ded0d343e306be740edd972aff740",
      "tree": "e750143e578503b77a66eff21595b16730506802",
      "parents": [
        "9f4a6dce10941380ad7365cc9b0ef038ed56cbf9"
      ],
      "author": {
        "name": "Alex Williamson",
        "email": "alex.williamson@hp.com",
        "time": "Tue Sep 06 15:17:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:24 2005 -0700"
      },
      "message": "[PATCH] optimize writer path in time_interpolator_get_counter()\n\n      Christoph Lameter \u003cclameter@engr.sgi.com\u003e\n\nWhen using a time interpolator that is susceptible to jitter there\u0027s\npotentially contention over a cmpxchg used to prevent time from going\nbackwards.  This is unnecessary when the caller holds the xtime write\nseqlock as all readers will be blocked from returning until the write is\ncomplete.  We can therefore allow writers to insert a new value and exit\nrather than fight with CPUs who only hold a reader lock.\n\nSigned-off-by: Alex Williamson \u003calex.williamson@hp.com\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fe21773d655c2c64641ec2cef499289ea175c817",
      "tree": "ebc1f49f0b7135aa05bbf3a5463a6e1c238add89",
      "parents": [
        "c3d8c1414573be8cf7c8fdc1e076935697c7f6af"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Sep 06 15:16:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:18 2005 -0700"
      },
      "message": "[PATCH] Provide better printk() support for SMP machines\n\nThe attached patch prevents oopses interleaving with characters from\nother printks on other CPUs by only breaking the lock if the oops is\nhappening on the machine holding the lock.\n\nIt might be better if the oops generator got the lock and then called an\ninner vprintk routine that assumed the caller holds the lock, thus\nmaking oops reports \"atomic\".\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8446f1d391f3d27e6bf9c43d4cbcdac0ca720417",
      "tree": "738853af877c9a391b4f2db467e7f90c6e2e38ed",
      "parents": [
        "4732efbeb997189d9f9b04708dc26bf8613ed721"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 06 15:16:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:17 2005 -0700"
      },
      "message": "[PATCH] detect soft lockups\n\nThis patch adds a new kernel debug feature: CONFIG_DETECT_SOFTLOCKUP.\n\nWhen enabled then per-CPU watchdog threads are started, which try to run\nonce per second.  If they get delayed for more than 10 seconds then a\ncallback from the timer interrupt detects this condition and prints out a\nwarning message and a stack dump (once per lockup incident).  The feature\nis otherwise non-intrusive, it doesnt try to unlock the box in any way, it\nonly gets the debug info out, automatically, and on all CPUs affected by\nthe lockup.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nSigned-Off-By: Matthias Urlichs \u003csmurf@smurf.noris.de\u003e\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4732efbeb997189d9f9b04708dc26bf8613ed721",
      "tree": "885308bb2b521e52e13aaa8a67c78b2ab3c18cd8",
      "parents": [
        "5b039e681b8c5f30aac9cc04385cc94be45d0823"
      ],
      "author": {
        "name": "Jakub Jelinek",
        "email": "jakub@redhat.com",
        "time": "Tue Sep 06 15:16:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:17 2005 -0700"
      },
      "message": "[PATCH] FUTEX_WAKE_OP: pthread_cond_signal() speedup\n\nATM pthread_cond_signal is unnecessarily slow, because it wakes one waiter\n(which at least on UP usually means an immediate context switch to one of\nthe waiter threads).  This waiter wakes up and after a few instructions it\nattempts to acquire the cv internal lock, but that lock is still held by\nthe thread calling pthread_cond_signal.  So it goes to sleep and eventually\nthe signalling thread is scheduled in, unlocks the internal lock and wakes\nthe waiter again.\n\nNow, before 2003-09-21 NPTL was using FUTEX_REQUEUE in pthread_cond_signal\nto avoid this performance issue, but it was removed when locks were\nredesigned to the 3 state scheme (unlocked, locked uncontended, locked\ncontended).\n\nFollowing scenario shows why simply using FUTEX_REQUEUE in\npthread_cond_signal together with using lll_mutex_unlock_force in place of\nlll_mutex_unlock is not enough and probably why it has been disabled at\nthat time:\n\nThe number is value in cv-\u003e__data.__lock.\n        thr1            thr2            thr3\n0       pthread_cond_wait\n1       lll_mutex_lock (cv-\u003e__data.__lock)\n0       lll_mutex_unlock (cv-\u003e__data.__lock)\n0       lll_futex_wait (\u0026cv-\u003e__data.__futex, futexval)\n0                       pthread_cond_signal\n1                       lll_mutex_lock (cv-\u003e__data.__lock)\n1                                       pthread_cond_signal\n2                                       lll_mutex_lock (cv-\u003e__data.__lock)\n2                                         lll_futex_wait (\u0026cv-\u003e__data.__lock, 2)\n2                       lll_futex_requeue (\u0026cv-\u003e__data.__futex, 0, 1, \u0026cv-\u003e__data.__lock)\n                          # FUTEX_REQUEUE, not FUTEX_CMP_REQUEUE\n2                       lll_mutex_unlock_force (cv-\u003e__data.__lock)\n0                         cv-\u003e__data.__lock \u003d 0\n0                         lll_futex_wake (\u0026cv-\u003e__data.__lock, 1)\n1       lll_mutex_lock (cv-\u003e__data.__lock)\n0       lll_mutex_unlock (cv-\u003e__data.__lock)\n          # Here, lll_mutex_unlock doesn\u0027t know there are threads waiting\n          # on the internal cv\u0027s lock\n\nNow, I believe it is possible to use FUTEX_REQUEUE in pthread_cond_signal,\nbut it will cost us not one, but 2 extra syscalls and, what\u0027s worse, one of\nthese extra syscalls will be done for every single waiting loop in\npthread_cond_*wait.\n\nWe would need to use lll_mutex_unlock_force in pthread_cond_signal after\nrequeue and lll_mutex_cond_lock in pthread_cond_*wait after lll_futex_wait.\n\nAnother alternative is to do the unlocking pthread_cond_signal needs to do\n(the lock can\u0027t be unlocked before lll_futex_wake, as that is racy) in the\nkernel.\n\nI have implemented both variants, futex-requeue-glibc.patch is the first\none and futex-wake_op{,-glibc}.patch is the unlocking inside of the kernel.\n The kernel interface allows userland to specify how exactly an unlocking\noperation should look like (some atomic arithmetic operation with optional\nconstant argument and comparison of the previous futex value with another\nconstant).\n\nIt has been implemented just for ppc*, x86_64 and i?86, for other\narchitectures I\u0027m including just a stub header which can be used as a\nstarting point by maintainers to write support for their arches and ATM\nwill just return -ENOSYS for FUTEX_WAKE_OP.  The requeue patch has been\n(lightly) tested just on x86_64, the wake_op patch on ppc64 kernel running\n32-bit and 64-bit NPTL and x86_64 kernel running 32-bit and 64-bit NPTL.\n\nWith the following benchmark on UP x86-64 I get:\n\nfor i in nptl-orig nptl-requeue nptl-wake_op; do echo time elf/ld.so --library-path .:$i /tmp/bench; \\\nfor j in 1 2; do echo ( time elf/ld.so --library-path .:$i /tmp/bench ) 2\u003e\u00261; done; done\ntime elf/ld.so --library-path .:nptl-orig /tmp/bench\nreal 0m0.655s user 0m0.253s sys 0m0.403s\nreal 0m0.657s user 0m0.269s sys 0m0.388s\ntime elf/ld.so --library-path .:nptl-requeue /tmp/bench\nreal 0m0.496s user 0m0.225s sys 0m0.271s\nreal 0m0.531s user 0m0.242s sys 0m0.288s\ntime elf/ld.so --library-path .:nptl-wake_op /tmp/bench\nreal 0m0.380s user 0m0.176s sys 0m0.204s\nreal 0m0.382s user 0m0.175s sys 0m0.207s\n\nThe benchmark is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00001.txt\nOlder futex-requeue-glibc.patch version is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00002.txt\nOlder futex-wake_op-glibc.patch version is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00003.txt\nWill post a new version (just x86-64 fixes so that the patch\napplies against pthread_cond_signal.S) to libc-hacker ml soon.\n\nAttached is the kernel FUTEX_WAKE_OP patch as well as a simple-minded\ntestcase that will not test the atomicity of the operation, but at least\ncheck if the threads that should have been woken up are woken up and\nwhether the arithmetic operation in the kernel gave the expected results.\n\nAcked-by: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Jamie Lokier \u003cjamie@shareable.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Yoichi Yuasa \u003cyuasa@hh.iij4u.or.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d7ae79c72d072e3208c18ff2dc402a69229b7b1b",
      "tree": "cdc92d7602d9b93637ff0444910ebe2d2f97ee68",
      "parents": [
        "48c8b1134249432318c8e5d19adc37c45242c4b1"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@suse.cz",
        "time": "Tue Sep 06 15:16:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:16 2005 -0700"
      },
      "message": "[PATCH] swsusp: update documentation\n\nThis updates documentation a bit (mostly removing obsolete stuff), and\nmarks swsusp as no longer experimental in config.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54d5d42404e7705cf3804593189e963350d470e5",
      "tree": "7cf8a7fce163b19672193d8cf4ef6a7f6c131d9e",
      "parents": [
        "f63ed39c578a2a2d067356a85ce7c28a7c795d8a"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Tue Sep 06 15:16:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:15 2005 -0700"
      },
      "message": "[PATCH] x86/x86_64: deferred handling of writes to /proc/irqxx/smp_affinity\n\nWhen handling writes to /proc/irq, current code is re-programming rte\nentries directly. This is not recommended and could potentially cause\nchipset\u0027s to lockup, or cause missing interrupts.\n\nCONFIG_IRQ_BALANCE does this correctly, where it re-programs only when the\ninterrupt is pending. The same needs to be done for /proc/irq handling as well.\nOtherwise user space irq balancers are really not doing the right thing.\n\n- Changed pending_irq_balance_cpumask to pending_irq_migrate_cpumask for\n  lack of a generic name.\n- added move_irq out of IRQ_BALANCE, and added this same to X86_64\n- Added new proc handler for write, so we can do deferred write at irq\n  handling time.\n- Display of /proc/irq/XX/smp_affinity used to display CPU_MASKALL, instead\n  it now shows only active cpu masks, or exactly what was set.\n- Provided a common move_irq implementation, instead of duplicating\n  when using generic irq framework.\n\nTested on i386/x86_64 and ia64 with CONFIG_PCI_MSI turned on and off.\nTested UP builds as well.\n\nMSI testing: tbd: I have cards, need to look for a x-over cable, although I\ndid test an earlier version of this patch.  Will test in a couple days.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nAcked-by: Zwane Mwaikambo \u003czwane@holomorphy.com\u003e\nGrudgingly-acked-by: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Coywolf Qi Hunt \u003ccoywolf@lovecn.org\u003e\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "344babaa9d39b10b85cadec4e5335d43b52b4ec0",
      "tree": "7ba5f46394251a478c071a64dff941369769a18c",
      "parents": [
        "4706df3d3c42af802597d82c8b1542c3d52eab23"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Sep 07 01:15:17 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Wed Sep 07 01:15:17 2005 -0400"
      },
      "message": "[kernel-doc] fix various DocBook build problems/warnings\n\nMost serious is fixing include/sound/pcm.h, which breaks the DocBook\nbuild.\n\nThe other stuff is just filling in things that cause warnings.\n"
    },
    {
      "commit": "ed75e8d58010fdc06e2c3a81bfbebae92314c7e3",
      "tree": "3f6f8dc5a34c9e03f613d4b907e02802ab075a9e",
      "parents": [
        "94c80b2598dbd2b8a6fe5f5c2c3af1beb37f66c7"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "LaurentVivier@wanadoo.fr",
        "time": "Sat Sep 03 15:57:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:20 2005 -0700"
      },
      "message": "[PATCH] UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage\n\n      Jeff Dike \u003cjdike@addtoit.com\u003e,\n      Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade_spam@yahoo.it\u003e,\n      Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\n\nAdds a new ptrace(2) mode, called PTRACE_SYSEMU, resembling PTRACE_SYSCALL\nexcept that the kernel does not execute the requested syscall; this is useful\nto improve performance for virtual environments, like UML, which want to run\nthe syscall on their own.\n\nIn fact, using PTRACE_SYSCALL means stopping child execution twice, on entry\nand on exit, and each time you also have two context switches; with SYSEMU you\navoid the 2nd stop and so save two context switches per syscall.\n\nAlso, some architectures don\u0027t have support in the host for changing the\nsyscall number via ptrace(), which is currently needed to skip syscall\nexecution (UML turns any syscall into getpid() to avoid it being executed on\nthe host).  Fixing that is hard, while SYSEMU is easier to implement.\n\n* This version of the patch includes some suggestions of Jeff Dike to avoid\n  adding any instructions to the syscall fast path, plus some other little\n  changes, by myself, to make it work even when the syscall is executed with\n  SYSENTER (but I\u0027m unsure about them). It has been widely tested for quite a\n  lot of time.\n\n* Various fixed were included to handle the various switches between\n  various states, i.e. when for instance a syscall entry is traced with one of\n  PT_SYSCALL / _SYSEMU / _SINGLESTEP and another one is used on exit.\n  Basically, this is done by remembering which one of them was used even after\n  the call to ptrace_notify().\n\n* We\u0027re combining TIF_SYSCALL_EMU with TIF_SYSCALL_TRACE or TIF_SINGLESTEP\n  to make do_syscall_trace() notice that the current syscall was started with\n  SYSEMU on entry, so that no notification ought to be done in the exit path;\n  this is a bit of a hack, so this problem is solved in another way in next\n  patches.\n\n* Also, the effects of the patch:\n\"Ptrace - i386: fix Syscall Audit interaction with singlestep\"\nare cancelled; they are restored back in the last patch of this series.\n\nDetailed descriptions of the patches doing this kind of processing follow (but\nI\u0027ve already summed everything up).\n\n* Fix behaviour when changing interception kind #1.\n\n  In do_syscall_trace(), we check the status of the TIF_SYSCALL_EMU flag\n  only after doing the debugger notification; but the debugger might have\n  changed the status of this flag because he continued execution with\n  PTRACE_SYSCALL, so this is wrong.  This patch fixes it by saving the flag\n  status before calling ptrace_notify().\n\n* Fix behaviour when changing interception kind #2:\n  avoid intercepting syscall on return when using SYSCALL again.\n\n  A guest process switching from using PTRACE_SYSEMU to PTRACE_SYSCALL\n  crashes.\n\n  The problem is in arch/i386/kernel/entry.S.  The current SYSEMU patch\n  inhibits the syscall-handler to be called, but does not prevent\n  do_syscall_trace() to be called after this for syscall completion\n  interception.\n\n  The appended patch fixes this.  It reuses the flag TIF_SYSCALL_EMU to\n  remember \"we come from PTRACE_SYSEMU and now are in PTRACE_SYSCALL\", since\n  the flag is unused in the depicted situation.\n\n* Fix behaviour when changing interception kind #3:\n  avoid intercepting syscall on return when using SINGLESTEP.\n\n  When testing 2.6.9 and the skas3.v6 patch, with my latest patch and had\n  problems with singlestepping on UML in SKAS with SYSEMU.  It looped\n  receiving SIGTRAPs without moving forward.  EIP of the traced process was\n  the same for all SIGTRAPs.\n\nWhat\u0027s missing is to handle switching from PTRACE_SYSCALL_EMU to\nPTRACE_SINGLESTEP in a way very similar to what is done for the change from\nPTRACE_SYSCALL_EMU to PTRACE_SYSCALL_TRACE.\n\nI.e., after calling ptrace(PTRACE_SYSEMU), on the return path, the debugger is\nnotified and then wake ups the process; the syscall is executed (or skipped,\nwhen do_syscall_trace() returns 0, i.e.  when using PTRACE_SYSEMU), and\ndo_syscall_trace() is called again.  Since we are on the return path of a\nSYSEMU\u0027d syscall, if the wake up is performed through ptrace(PTRACE_SYSCALL),\nwe must still avoid notifying the parent of the syscall exit.  Now, this\nbehaviour is extended even to resuming with PTRACE_SINGLESTEP.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57c4ce3cbfba1bb0da7f37b9328a713cbd5d0919",
      "tree": "916c1435e9cba3dd050e526637ee8bf51db140e8",
      "parents": [
        "6161b2ce8116b9a623260ab811e2c035b3fac2e5"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sat Sep 03 15:57:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:18 2005 -0700"
      },
      "message": "[PATCH] pm: clean up /sys/power/disk\n\nClean code up a bit, and only show suspend to disk as available when\nit is configured in.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6161b2ce8116b9a623260ab811e2c035b3fac2e5",
      "tree": "8cb36b11631c0843fb5a7e600626a2f6a230846b",
      "parents": [
        "99dc7d63e0dcb457580241055b2a39d011309db8"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sat Sep 03 15:57:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:17 2005 -0700"
      },
      "message": "[PATCH] pm: fix process freezing\n\nIf process freezing fails, some processes are frozen, and rest are left in\n\"were asked to be frozen\" state.  Thats wrong, we should leave it in some\nconsistent state.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "99dc7d63e0dcb457580241055b2a39d011309db8",
      "tree": "3be63831f5fa823ef7e5c99339e9a71c29d3ad08",
      "parents": [
        "dd5d666b7995e542b7f81a4bb1c7ad634f4f6c51"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sat Sep 03 15:57:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:17 2005 -0700"
      },
      "message": "[PATCH] swsusp: fix error handling and cleanups\n\nDrop printing during normal boot (when no image exists in swap), print\nmessage when drivers fail, fix error paths and consolidate near-identical\nfunctions in disk.c (and functions with just one statement).\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd5d666b7995e542b7f81a4bb1c7ad634f4f6c51",
      "tree": "de010e4bd66681ec75657746d652eb89f08142b7",
      "parents": [
        "6ed9fcec85d5ef0e34ea18affe95e4a246714565"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Sat Sep 03 15:57:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:17 2005 -0700"
      },
      "message": "[PATCH] swsusp: add locking to software_resume\n\nIt is trying to protect swsusp_resume_device and software_resume() from two\nusers banging it from userspace at the same time.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "56057e1a128a9aab516350500e5b154e70577929",
      "tree": "68f323a6e919d96dad59471decb3bea3ec6a36fc",
      "parents": [
        "46dacba52a19d1414ba249499a48382c16242d99"
      ],
      "author": {
        "name": "Michal Schmidt",
        "email": "xschmi00@stud.feec.vutbr.cz",
        "time": "Sat Sep 03 15:57:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:17 2005 -0700"
      },
      "message": "[PATCH] swsusp: simpler calculation of number of pages in PBE list\n\nThe function calc_nr uses an iterative algorithm to calculate the number of\npages needed for the image and the pagedir.  Exactly the same result can be\nobtained with a one-line expression.\n\nNote that this was even proved correct ;-).\n\nSigned-off-by: Michal Schmidt \u003cxschmi00@stud.feec.vutbr.cz\u003e\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c2ff18f4070f6303a81fd7d9d967d7c9e01b588f",
      "tree": "250a50e27885a179d0fee37cef31cf3a4d4627d3",
      "parents": [
        "583a4e88db1eadc52116e1f97b4519de655b2b80"
      ],
      "author": {
        "name": "Andreas Steinmetz",
        "email": "ast@domdv.de",
        "time": "Sat Sep 03 15:56:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:16 2005 -0700"
      },
      "message": "[PATCH] encrypt suspend data for easy wiping\n\nThe patch protects from leaking sensitive data after resume from suspend.\nDuring suspend a temporary key is created and this key is used to encrypt the\ndata written to disk.  When, during resume, the data was read back into memory\nthe temporary key is destroyed which simply means that all data written to\ndisk during suspend are then inaccessible so they can\u0027t be stolen lateron.\n\nThink of the following: you suspend while an application is running that keeps\nsensitive data in memory.  The application itself prevents the data from being\nswapped out.  Suspend, however, must write these data to swap to be able to\nresume lateron.  Without suspend encryption your sensitive data are then\nstored in plaintext on disk.  This means that after resume your sensitive data\nare accessible to all applications having direct access to the swap device\nwhich was used for suspend.  If you don\u0027t need swap after resume these data\ncan remain on disk virtually forever.  Thus it can happen that your system\ngets broken in weeks later and sensitive data which you thought were encrypted\nand protected are retrieved and stolen from the swap device.\n\nSigned-off-by: Andreas Steinmetz \u003cast@domdv.de\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2a23b5d1e119fd10e25b8e93464c8d549f5a5c5d",
      "tree": "60eede3a1a0a92837c0207de2750880d9a309db1",
      "parents": [
        "52fdd08903a1d1162e184114837e232640191627"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Sat Sep 03 15:56:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:14 2005 -0700"
      },
      "message": "[PATCH] remove busywait in refrigerator\n\nThis should make refrigerator sleep properly, not busywait after the first\nschedule() returns.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dae06ac43d56d23e50a2300d511b32a9e38cd657",
      "tree": "62bfa95e769ec5c731f02435b49025a15c45faf4",
      "parents": [
        "5d337b9194b1ce3b6fd5f3cb2799455ed2f9a3d1"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Sep 03 15:54:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:42 2005 -0700"
      },
      "message": "[PATCH] swap: update swsusp use of swap_info\n\nAha, swsusp dips into swap_info[], better update it to swap_lock.  It\u0027s\nbitflipping flags with 0xFF, so get_swap_page will allocate from only the one\nchosen device: let\u0027s change that to flip SWP_WRITEOK.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "129521dcc94f781890f8f668219ab79f0073ff9f",
      "tree": "9f70707c88da65577f38814fe37b24c4b4957d64",
      "parents": [
        "824b558bbe2c298b165cdb54c33718994dda30bb",
        "f505380ba7b98ec97bf25300c2a58aeae903530b"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 03 02:44:09 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 03 02:44:09 2005 -0400"
      },
      "message": "Merge linux-2.6 into linux-acpi-2.6 test\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "066286071d3542243baa68166acb779187c848b3",
      "tree": "ef6604f16ceb13842a30311654e6a64aac716c48",
      "parents": [
        "9a4595bc7e67962f13232ee55a64e063062c3a99"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Aug 15 12:33:26 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:11 2005 -0700"
      },
      "message": "[NETLINK]: Add \"groups\" argument to netlink_kernel_create\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fdb3bb723db469717c6d38fda667d8b0fa86ebd",
      "tree": "43d82e717922e6319cf8a8f9dc5ee902c651b491",
      "parents": [
        "020b4c12dbe3868d792a01d7c1470cd837abe10f"
      ],
      "author": {
        "name": "Harald Welte",
        "email": "laforge@netfilter.org",
        "time": "Tue Aug 09 19:40:55 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:35:08 2005 -0700"
      },
      "message": "[NETLINK]: Add properly module refcounting for kernel netlink sockets.\n\n- Remove bogus code for compiling netlink as module\n- Add module refcounting support for modules implementing a netlink\n  protocol\n- Add support for autoloading modules that implement a netlink protocol\n  as soon as someone opens a socket for that protocol\n\nSigned-off-by: Harald Welte \u003claforge@netfilter.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60cfff3516580f5c782cef4dc28f2974c4df8ed1",
      "tree": "30053bcf09c1b77699281ba3a56d8ffb4144966c",
      "parents": [
        "89ef1a21a174a4f581a4b6973f9a9f9ee28a9304",
        "212d6d2237f60bc28c1518f8abf9d3ed6c17574a"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Aug 26 22:11:28 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Aug 26 22:11:28 2005 -0400"
      },
      "message": "Auto-update from upstream\n"
    },
    {
      "commit": "212d6d2237f60bc28c1518f8abf9d3ed6c17574a",
      "tree": "693ac9cdb0693acb0f935d4b61a34e6a12056add",
      "parents": [
        "ca2f3daf779f5e89d14e9783fcfd7920842df9e9"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Thu Aug 25 12:47:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 26 16:38:47 2005 -0700"
      },
      "message": "[PATCH] completely disable cpu_exclusive sched domain\n\nAt the suggestion of Nick Piggin and Dinakar, totally disable\nthe facility to allow cpu_exclusive cpusets to define dynamic\nsched domains in Linux 2.6.13, in order to avoid problems\nfirst reported by John Hawkes (corrupt sched data structures\nand kernel oops).\n\nThis has been built for ppc64, i386, ia64, x86_64, sparc, alpha.\nIt has been built, booted and tested for cpuset functionality\non an SN2 (ia64).\n\nDinakar or Nick - could you verify that it for sure does avoid\nthe problems Hawkes reported.  Hawkes is out of town, and I don\u0027t\nhave the recipe to reproduce what he found.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca2f3daf779f5e89d14e9783fcfd7920842df9e9",
      "tree": "07ce4cc60957d842dac1cb3d44dd5441071cf90f",
      "parents": [
        "13142341ac867bb67e88204cbfcb8d90f9a861b7"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Thu Aug 25 12:47:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Aug 26 16:38:46 2005 -0700"
      },
      "message": "[PATCH] undo partial cpu_exclusive sched domain disabling\n\nThe partial disabling of Dinakar\u0027s new facility to allow\ncpu_exclusive cpusets to define dynamic sched domains\ndoesn\u0027t go far enough.  At the suggestion of Nick Piggin\nand Dinakar, let us instead totally disable this facility\nfor 2.6.13, in order to avoid problems first reported\nby John Hawkes (corrupt sched data structures and kernel oops).\n\nThis patch removes the partial disabling code in 2.6.13-rc7,\nin anticipation of the next patch, which will totally disable\nit instead.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "09d4a80e66cdf3e68cdb06e907f7bc0b242acbd0",
      "tree": "29e6a11bffc92f6b8393344cab209e1f2b8bf7a9",
      "parents": [
        "d0d59b98d7a0b3801ce03e695ba885b698a6d122",
        "9c2c38a122cc23d6a09b8004d60a33913683eedf"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:45:49 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:45:49 2005 -0400"
      },
      "message": "Merge HEAD from ../from-linus \n"
    },
    {
      "commit": "eb7b6b32644f7a48357e02f8004f88b3220f3494",
      "tree": "fff8771a500c1a28cb29490aa9722f061e16c1eb",
      "parents": [
        "76f58584824c61eb5b3bdbf019236815921d2e7c"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:08:25 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:14:20 2005 -0400"
      },
      "message": "[ACPI] IA64-related ACPI Kconfig fixes\n\nBuild issues were mostly in the ACPI\u003dn case -- don\u0027t do that.\nSelect ACPI from IA64_GENERIC.\nAdd some missing dependencies on ACPI.\n\nMark BLACKLIST_YEAR and some laptop-only ACPI drivers\nas X86-only.  Let me know when you get an IA64 Laptop.\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "3725822f7c7134249addcd4549aff086950c8090",
      "tree": "d7db18d3d5f75fe4309ddc7aa373f3213f845b41",
      "parents": [
        "40bb0c3ef52d872de348e10000eb5432a43a147d"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Wed Aug 24 04:15:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Aug 24 09:40:45 2005 -0700"
      },
      "message": "[PATCH] cpu_exclusive sched domains build fix\n\nAs reported by Paul Mackerras \u003cpaulus@samba.org\u003e, the previous patch\n\"cpu_exclusive sched domains fix\" broke the ppc64 build with\nCONFIC_CPUSET, yielding error messages:\n\nkernel/cpuset.c: In function \u0027update_cpu_domains\u0027:\nkernel/cpuset.c:648: error: invalid lvalue in unary \u0027\u0026\u0027\nkernel/cpuset.c:648: error: invalid lvalue in unary \u0027\u0026\u0027\n\nOn some arch\u0027s, the node_to_cpumask() is a function, returning\na cpumask_t.  But the for_each_cpu_mask() requires an lvalue mask.\n\nThe following patch fixes this build failure by making a copy\nof the cpumask_t on the stack.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d10689b68aff7b48e3de1a3f7fcd6567bd2905af",
      "tree": "c81c261274011d301dfbcfd1a3e13480b93c167e",
      "parents": [
        "ae75784bc576a1af70509c2f3ba2b70bb65a0c58"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Aug 23 01:04:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 23 20:02:52 2005 -0700"
      },
      "message": "[PATCH] cpu_exclusive sched domains on partial nodes temp fix\n\nThis keeps the kernel/cpuset.c routine update_cpu_domains() from\ninvoking the sched.c routine partition_sched_domains() if the cpuset in\nquestion doesn\u0027t fall on node boundaries.\n\nI have boot tested this on an SN2, and with the help of a couple of ad\nhoc printk\u0027s, determined that it does indeed avoid calling the\npartition_sched_domains() routine on partial nodes.\n\nI did not directly verify that this avoids setting up bogus sched\ndomains or avoids the oops that Hawkes saw.\n\nThis patch imposes a silent artificial constraint on which cpusets can\nbe used to define dynamic sched domains.\n\nThis patch should allow proceeding with this new feature in 2.6.13 for\nthe configurations in which it is useful (node alligned sched domains)\nwhile avoiding trying to setup sched domains in the less useful cases\nthat can cause the kernel corruption and oops.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Dinakar Guniguntala \u003cdino@in.ibm.com\u003e\nAcked-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c5640cb5f5a6fd780d99397eca028b575cb1206",
      "tree": "3f5eb4b4390ea71031eb2c93261052e6698cbdc1",
      "parents": [
        "3f024c1a4bc8ef9a149879351ce8b3aa749e0c2f"
      ],
      "author": {
        "name": "David Meybohm",
        "email": "dmeybohmlkml@bellsouth.net",
        "time": "Mon Aug 22 13:11:08 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 23 11:44:29 2005 -0700"
      },
      "message": "[PATCH] preempt race in getppid\n\nWith CONFIG_PREEMPT \u0026\u0026 !CONFIG_SMP, it\u0027s possible for sys_getppid to\nreturn a bogus value if the parent\u0027s task_struct gets reallocated after\ncurrent-\u003egroup_leader-\u003ereal_parent is read:\n\n        asmlinkage long sys_getppid(void)\n        {\n                int pid;\n                struct task_struct *me \u003d current;\n                struct task_struct *parent;\n\n                parent \u003d me-\u003egroup_leader-\u003ereal_parent;\nRACE HERE \u003d\u003e    for (;;) {\n                        pid \u003d parent-\u003etgid;\n        #ifdef CONFIG_SMP\n        {\n                        struct task_struct *old \u003d parent;\n\n                        /*\n                         * Make sure we read the pid before re-reading the\n                         * parent pointer:\n                         */\n                        smp_rmb();\n                        parent \u003d me-\u003egroup_leader-\u003ereal_parent;\n                        if (old !\u003d parent)\n                                continue;\n        }\n        #endif\n                        break;\n                }\n                return pid;\n        }\n\nIf the process gets preempted at the indicated point, the parent process\ncan go ahead and call exit() and then get wait()\u0027d on to reap its\ntask_struct. When the preempted process gets resumed, it will not do any\nfurther checks of the parent pointer on !CONFIG_SMP: it will read the\nbad pid and return.\n\nSo, the same algorithm used when SMP is enabled should be used when\npreempt is enabled, which will recheck -\u003ereal_parent in this case.\n\nSigned-off-by: David Meybohm \u003cdmeybohmlkml@bellsouth.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "024f474795af7a0d41bd6d60061d78bd66d13f56",
      "tree": "41dd079483713c7669b4c684686de3b701362d34",
      "parents": [
        "6cbe9de7a4353d1a1b77887b5459ac5304c0984a"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Thu Aug 18 11:24:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 18 12:53:58 2005 -0700"
      },
      "message": "[PATCH] Make RLIMIT_NICE ranges consistent with getpriority(2)\n\nAs suggested by Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e, make RLIMIT_NICE\nconsistent with getpriority before it becomes available in released glibc.\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Chris Wright \u003cchrisw@osdl.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd12f48d4e8774415b528d3991ae47c28f26e1ac",
      "tree": "d8083c3415d540adb7983bd23a80fb8420fa8414",
      "parents": [
        "ade6648b3b11a5d81f6f28135193ab6d85d621db"
      ],
      "author": {
        "name": "Bhavesh P. Davda",
        "email": "bhavesh@avaya.com",
        "time": "Wed Aug 17 12:26:33 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Aug 17 12:52:04 2005 -0700"
      },
      "message": "[PATCH] NPTL signal delivery deadlock fix\n\nThis bug is quite subtle and only happens in a very interesting\nsituation where a real-time threaded process is in the middle of a\ncoredump when someone whacks it with a SIGKILL.  However, this deadlock\nleaves the system pretty hosed and you have to reboot to recover.\n\nNot good for real-time priority-preemption applications like our\ntelephony application, with 90+ real-time (SCHED_FIFO and SCHED_RR)\nprocesses, many of them multi-threaded, interacting with each other for\nhigh volume call processing.\n\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "606867443764edac5a2c542f2fa0a12ef7a7c7fd",
      "tree": "61110afaef5e8be41be940815a8bd6065e32c5da",
      "parents": [
        "3462b925414a146d4c2252de97d20f89218d1ffb"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Wed Aug 10 11:29:15 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Aug 10 11:55:19 2005 -0700"
      },
      "message": "[PATCH] remove name length check in a workqueue\n\nWe have a chek in there to make sure that the name won\u0027t overflow\ntask_struct.comm[], but it\u0027s triggering for scsi with lots of HBAs, only\nscsi is using single-threaded workqueues which don\u0027t append the \"/%d\"\nanyway.\n\nAll too hard.  Just kill the BUG_ON.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n\n[ kthread_create() uses vsnprintf() and limits the thing, so no\n  actual overflow can actually happen regardless ]\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3077a260e9f316b611436b1506eec9cc5c4f8aa6",
      "tree": "43b7d5faa5f204904c713c463015792d9ff56b01",
      "parents": [
        "a242b44da6feb604c4c659b78f63dedb69b2d4a3"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Tue Aug 09 10:07:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 09 12:08:22 2005 -0700"
      },
      "message": "[PATCH] cpuset release ABBA deadlock fix\n\nFix possible cpuset_sem ABBA deadlock if \u0027notify_on_release\u0027 set.\n\nFor a particular usage pattern, creating and destroying cpusets fairly\nfrequently using notify_on_release, on a very large system, this deadlock\ncan be seen every few days.  If you are not using the cpuset\nnotify_on_release feature, you will never see this deadlock.\n\nThe existing code, on task exit (or cpuset deletion) did:\n\n  get cpuset_sem\n  if cpuset marked notify_on_release and is ready to release:\n    compute cpuset path relative to /dev/cpuset mount point\n    call_usermodehelper() forks /sbin/cpuset_release_agent with path\n  drop cpuset_sem\n\nUnfortunately, the fork in call_usermodehelper can allocate memory, and\nallocating memory can require cpuset_sem, if the mems_generation values\nchanged in the interim.  This results in an ABBA deadlock, trying to obtain\ncpuset_sem when it is already held by the current task.\n\nTo fix this, I put the cpuset path (which must be computed while holding\ncpuset_sem) in a temporary buffer, to be used in the call_usermodehelper\ncall of /sbin/cpuset_release_agent only _after_ dropping cpuset_sem.\n\nSo the new logic is:\n\n  get cpuset_sem\n  if cpuset marked notify_on_release and is ready to release:\n    compute cpuset path relative to /dev/cpuset mount point\n    stash path in kmalloc\u0027d buffer\n  drop cpuset_sem\n  call_usermodehelper() forks /sbin/cpuset_release_agent with path\n  free path\n\nThe sharp eyed reader might notice that this patch does not contain any\ncalls to kmalloc.  The existing code in the check_for_release() routine was\nalready kmalloc\u0027ing a buffer to hold the cpuset path.  In the old code, it\njust held the buffer for a few lines, over the cpuset_release_agent() call\nthat in turn invoked call_usermodehelper().  In the new code, with the\napplication of this patch, it returns that buffer via the new char\n**ppathbuf parameter, for later use and freeing in cpuset_release_agent(),\nwhich is called after cpuset_sem is dropped.  Whereas the old code has just\none call to cpuset_release_agent(), right in the check_for_release()\nroutine, the new code has three calls to cpuset_release_agent(), from the\nvarious places that a cpuset can be released.\n\nThis patch has been build and booted on SN2, and passed a stress test that\npreviously hit the deadlock within a few seconds.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c306895167c8384b88bc02945a0d226a04218fa5",
      "tree": "d3f298c9cf8f36787acae2c829e64f05a392162c",
      "parents": [
        "e8ed11b9dc07df0134248542ca8e7d40751a6052"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Aug 04 16:49:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 04 16:57:49 2005 -0700"
      },
      "message": "[PATCH] revert \"timer exit cleanup\"\n\nRevert this June 17 patch: it broke persistence of timers across execve().\n\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: george anzinger \u003cgeorge@mvista.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c36f19e02a96488f550fdb678c92500afca3109b",
      "tree": "b446faa5bd5a0e506b20def0e5f0a1f210dce30a",
      "parents": [
        "d95a1b4818f2fe38a3cfc9a7d5817dc9a1a69329"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu Aug 04 11:36:26 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Aug 04 08:20:47 2005 -0700"
      },
      "message": "[PATCH] Remove suspend() calls from shutdown path\n\nThis removes the calls to device_suspend() from the shutdown path that\nwere added sometime during 2.6.13-rc*.  They aren\u0027t working properly on\na number of configs (I got reports from both ppc powerbook users and x86\nusers) causing the system to not shutdown anymore.\n\nI think it isn\u0027t the right approach at the moment anyway.  We have\nalready a shutdown() callback for the drivers that actually care about\nshutdown and the suspend() code isn\u0027t yet in a good enough shape to be\nso much generalized.  Also, the semantics of suspend and shutdown are\nslightly different on a number of setups and the way this was patched in\nprovides little way for drivers to cleanly differenciate.  It should\nhave been at least a different message.\n\nFor 2.6.13, I think we should revert to 2.6.12 behaviour and have a\nworking suspend back.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "842bbaaa7394820c8f1fe0629cd15478653caf86",
      "tree": "5934040b40357f479b16d638ffd2fe435f4837e8",
      "parents": [
        "561fb765b97f287211a2c73a844c5edb12f44f1d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Aug 01 21:11:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Aug 01 21:38:01 2005 -0700"
      },
      "message": "[PATCH] Module per-cpu alignment cannot always be met\n\nThe module code assumes noone will ever ask for a per-cpu area more than\nSMP_CACHE_BYTES aligned.  However, as these cases show, gcc asks sometimes\nasks for 32-byte alignment for the per-cpu section on a module, and if\nCONFIG_X86_L1_CACHE_SHIFT is 4, we hit that BUG_ON().  This is obviously an\nunusual combination, as there have been few reports, but better to warn\nthan die.\n\nSee:\n\thttp://www.ussg.iu.edu/hypermail/linux/kernel/0409.0/0768.html\n\nAnd more recently:\n\thttp://bugs.gentoo.org/show_bug.cgi?id\u003d97006\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6cb54819d7b1867053e2dfd8c0ca3a8dc65a7eff",
      "tree": "1a1422dc2e103fe92dd86bfa26b8b39b3f2413d5",
      "parents": [
        "5d546f54324e04747e82ccbb4ea85f54bdcacd6d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 01 13:39:13 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Aug 01 10:03:56 2005 -0700"
      },
      "message": "[PATCH] remove sys_set_zone_reclaim()\n\nThis removes sys_set_zone_reclaim() for now.  While i\u0027m sure Martin is\ntrying to solve a real problem, we must not hard-code an incomplete and\ninsufficient approach into a syscall, because syscalls are pretty much\nfor eternity.  I am quite strongly convinced that this syscall must not\nhit v2.6.13 in its current form.\n\nFirstly, the syscall lacks basic syscall design: e.g. it allows the\nglobal setting of VM policy for unprivileged users. (!) [ Imagine an\nOracle installation and a SAP installation on the same NUMA box fighting\nover the \u0027optimal\u0027 setting for this flag. What will they do? Will they\ntry to set the flag to their own preferred value every second or so? ]\n\nSecondly, it was added based on a single datapoint from Martin:\n\n http://marc.theaimsgroup.com/?l\u003dlinux-mm\u0026m\u003d111763597218177\u0026w\u003d2\n\nwhere Martin characterizes the numbers the following way:\n\n \u0027 Run-to-run variability for \"make -j\" is huge, so these numbers aren\u0027t\n   terribly useful except to see that with reclaim the benchmark still\n   finishes in a reasonable amount of time. \u0027\n\nin other words: the fundamental problem has likely not been solved, only\na tendential move into the right direction has been observed, and a\nhandful of numbers were picked out of a set of hugely variable results,\nwithout showing the variability data. How much variance is there\nrun-to-run?\n\nI\u0027d really suggest to first walk the walk and see what\u0027s needed to get\nstable \u0026 predictable kernel compilation numbers on that NUMA box, before\nadding random syscalls to tune a particular aspect of the VM ... which\napproach might not even matter once the whole picture has been analyzed\nand understood!\n\nThe third, most important point is that the syscall exposes VM tuning\ninternals in a completely unstructured way. What sense does it make to\nhave a _GLOBAL_ per-node setting for \u0027should we go to another node for\nreclaim\u0027? If then it might make sense to do this per-app, via numalib or\nso.\n\nThe change is minimalistic in that it doesnt remove the syscall and the\nunderlying infrastructure changes, only the user-visible changes.  We\ncould perhaps add a CAP_SYS_ADMIN-only sysctl for this hack, a\u0027ka\n/proc/sys/vm/swappiness, but even that looks quite counterproductive\nwhen the generic approach is that we are trying to reduce the number of\nexternal factors in the VM balance picture.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c70f5d6610c601ea2ae4ae4e49f66c80801e895f",
      "tree": "288ab7efcb1285474e7f7277002cba8de236bbf1",
      "parents": [
        "6d1d07e41a1de478a0da3cc14b4a8054ef09931c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Jul 30 10:22:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jul 30 10:49:59 2005 -0700"
      },
      "message": "[PATCH] revert bogus softirq changes\n\nThis snuck in with an x86_64 change.  Thanks to Richard Purdie\n\u003crpurdie@rpsys.net\u003e for spotting it.\n\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1108bae41e2ac596f46bc4cd8876b93063203d2b",
      "tree": "dafda7d00016ab17d34e7a83239c35b6b682812a",
      "parents": [
        "d6d2a2ab05da6e44bd127fe375078bb7c36a0ad0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Jul 29 12:50:57 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 29 12:02:09 2005 -0700"
      },
      "message": "[PATCH] reboot: remove device_suspend(PMSG_FREEZE) from kernel_kexec\n\nIf device_suspend(PMSG_FREEZE) is not ready to be called in\nkernel_restart it is definitely not ready to be called in the even more\nfickle kernel_kexec.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "78fa74a23b16bdb0d944272b696915c4e0bb3ee1",
      "tree": "5f0d83021afeb7adffce9b41557e1d2e3c8c08bd",
      "parents": [
        "a2d76bd8fa29f9b6dbf3ee8f6bc7bdda21bc5ce8"
      ],
      "author": {
        "name": "George Anzinger",
        "email": "george@mvista.com",
        "time": "Thu Jul 28 21:16:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 28 21:46:05 2005 -0700"
      },
      "message": "[PATCH] posix timers: fix normalization problem\n\n(We found this (after a customer complained) and it is in the kernel.org\nkernel.  Seems that for CLOCK_MONOTONIC absolute timers and clock_nanosleep\ncalls both the request time and wall_to_monotonic are subtracted prior to\nthe normalize resulting in an overflow in the existing normalize test.\nThis causes the result to be shifted ~4 seconds ahead instead of ~2 seconds\nback in time.)\n\nThe normalize code in posix-timers.c fails when the tv_nsec member is ~1.2\nseconds negative.  This can happen on absolute timers (and\nclock_nanosleeps) requested on CLOCK_MONOTONIC (both the request time and\nwall_to_monotonic are subtracted resulting in the possibility of a number\nclose to -2 seconds.)\n\nThis fix uses the set_normalized_timespec() (which does not have an\noverflow problem) to fix the problem and as a side effect makes the code\ncleaner.\n\nSigned-off-by: George Anzinger \u003cgeorge@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed6b676ca8b50e0b538e61c283d52fd04f007abf",
      "tree": "753ea613ce334c41f835f6aac21074b137d24713",
      "parents": [
        "3829ee6b1be03d5aa3005fe7d19f30088b539836"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Jul 28 21:15:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 28 21:46:02 2005 -0700"
      },
      "message": "[PATCH] x86_64: Switch to the interrupt stack when running a softirq in local_bh_enable()\n\nThis avoids some potential stack overflows with very deep softirq callchains.\ni386 does this too.\n\nTOADD CFI annotation\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4ff4d7f9d85a2bc714307eb9113617182e62845",
      "tree": "845bea10c10850e6bd842367aafddca66ca24a06",
      "parents": [
        "49302d0c42592b37f49ae96e0f06a3599cf5a8a0"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Jul 27 10:41:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:46:37 2005 -0700"
      },
      "message": "[PATCH] Avoid device suspend on reboot\n\nMy fairly ordinary x86 test box gets stuck during reboot on the\nwait_for_completion() in ide_do_drive_cmd():\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77933d7276ee8fa0e2947641941a6f7a100a327b",
      "tree": "e3a42724642410f5257c794a71b34642092eedd5",
      "parents": [
        "03e259a9cdbd0583e71468293aaa1ccadbdaeff1"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl@dif.dk",
        "time": "Wed Jul 27 11:46:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:20 2005 -0700"
      },
      "message": "[PATCH] clean up inline static vs static inline\n\n`gcc -W\u0027 likes to complain if the static keyword is not at the beginning of\nthe declaration.  This patch fixes all remaining occurrences of \"inline\nstatic\" up with \"static inline\" in the entire kernel tree (140 occurrences in\n47 files).\n\nWhile making this change I came across a few lines with trailing whitespace\nthat I also fixed up, I have also added or removed a blank line or two here\nand there, but there are no functional changes in the patch.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e77e17161ccb8bd877bf83b3611cd318e451c605",
      "tree": "55fb0a366a2f1e3364f0088d5699cbf09b37d29a",
      "parents": [
        "d9fd8a6d443b509147280f058d4e59f0b796a323"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jul 27 11:45:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:06 2005 -0700"
      },
      "message": "[PATCH] kernel/crash_dump.c: add kerneldoc\n\nAdd kerneldoc to kernel/crash_dump.c\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d9fd8a6d443b509147280f058d4e59f0b796a323",
      "tree": "427385e403fc0d4282be19732a00ddfd224c1461",
      "parents": [
        "207a7ba8dc000e1b13acac97f3736810dd86e8e2"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jul 27 11:45:11 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:06 2005 -0700"
      },
      "message": "[PATCH] kernel/cpuset.c: add kerneldoc, fix typos\n\nAdd kerneldoc to kernel/cpuset.c\n\nFix cpuset typos in init/Kconfig\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nAcked-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "207a7ba8dc000e1b13acac97f3736810dd86e8e2",
      "tree": "de7baa1aa4a7752c6ea447938e73817de899d141",
      "parents": [
        "c293621bbf678a3d85e3ed721c3921c8a670610d"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jul 27 11:45:10 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:06 2005 -0700"
      },
      "message": "[PATCH] kernel/capability.c: add kerneldoc\n\nAdd kerneldoc to kernel/capability.c\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "951f22d5b1f0eaae35dafc669e3774a0c2084d10",
      "tree": "66c0131b576dadb98026da11d624df453c4c9a7c",
      "parents": [
        "8449d003f323ca7a00eec38905d984ba5ec83a29"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Jul 27 11:44:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:26:04 2005 -0700"
      },
      "message": "[PATCH] s390: spin lock retry\n\nSplit spin lock and r/w lock implementation into a single try which is done\ninline and an out of line function that repeatedly tries to get the lock\nbefore doing the cpu_relax().  Add a system control to set the number of\nretries before a cpu is yielded.\n\nThe reason for the spin lock retry is that the diagnose 0x44 that is used to\ngive up the virtual cpu is quite expensive.  For spin locks that are held only\nfor a short period of time the costs of the diagnoses outweights the savings\nfor spin locks that are held for a longer timer.  The default retry count is\n1000.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d912d1ff218195c248c770eb677726695e07aa40",
      "tree": "6718b67656e3cf0ec0c03b585f43f8815809cdcd",
      "parents": [
        "b7343f01e326374e69666ca6001bdb6a7c67e9f7"
      ],
      "author": {
        "name": "George Anzinger",
        "email": "george@mvista.com",
        "time": "Wed Jul 27 11:43:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:25:51 2005 -0700"
      },
      "message": "[PATCH] itimer fixes\n\nFix the recent off-by-one fix in the itimer code:\n\n1. The repeating timer is figured using the requested time\n\t(not +1 as we know where we are in the jiffie).\n\n2. The tests for interval too large are left to the time_val to jiffie code.\n\nSigned-off-by: George Anzinger \u003cgeorge@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bba0e4670a4e1841a96b561dcc60ebe335049891",
      "tree": "613d90ff9d665edd9a6ad769c7d9757922507fd5",
      "parents": [
        "9a14d4c898285623d1f5c338b659fa82cf4480fb"
      ],
      "author": {
        "name": "Nigel Cunningham",
        "email": "ncunningham@cyclades.com",
        "time": "Wed Jul 27 11:43:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:25:50 2005 -0700"
      },
      "message": "[PATCH] Address BUG: using smp_processor_id() in preemptible [00000001] code\n\nThis patch fixes a warning in the disable_nonboot_cpus call in\nkernel/power/smp.c.\n\nSigned-off by: Nigel Cunningham \u003cnigel@suspend2.net\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d46523ea32a79fbc8cd1237f9441f45cc3f02456",
      "tree": "0afe4590170ad25e38005f72431680ba47ba6860",
      "parents": [
        "18586e721636527cb5177467fb17e2350615978a"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 25 16:28:39 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 15:40:00 2005 -0700"
      },
      "message": "[PATCH] fix MAX_USER_RT_PRIO and MAX_RT_PRIO\n\nHere\u0027s the patch again to fix the code to handle if the values between\nMAX_USER_RT_PRIO and MAX_RT_PRIO are different.\n\nWithout this patch, an SMP system will crash if the values are\ndifferent.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Dean Nelson \u003cdcn@sgi.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "18586e721636527cb5177467fb17e2350615978a",
      "tree": "96d34b10d000fa8b1df16ae8f4c73761013371b5",
      "parents": [
        "fc00a6274b786f6863b32c79ff6f92aa0960b789"
      ],
      "author": {
        "name": "Andreas Steinmetz",
        "email": "ast@domdv.de",
        "time": "Sat Jul 23 13:42:04 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 15:30:51 2005 -0700"
      },
      "message": "[PATCH] Fix RLIMIT_RTPRIO breakage\n\nRLIMIT_RTPRIO is supposed to grant non privileged users the right to use\nSCHED_FIFO/SCHED_RR scheduling policies with priorites bounded by the\nRLIMIT_RTPRIO value via sched_setscheduler(). This is usually used by\naudio users.\n\nUnfortunately this is broken in 2.6.13rc3 as you can see in the excerpt\nfrom sched_setscheduler below:\n\n        /*\n         * Allow unprivileged RT tasks to decrease priority:\n         */\n        if (!capable(CAP_SYS_NICE)) {\n                /* can\u0027t change policy */\n                if (policy !\u003d p-\u003epolicy)\n                        return -EPERM;\n\nAfter the above unconditional test which causes sched_setscheduler to\nfail with no regard to the RLIMIT_RTPRIO value the following check is made:\n\n               /* can\u0027t increase priority */\n                if (policy !\u003d SCHED_NORMAL \u0026\u0026\n                    param-\u003esched_priority \u003e p-\u003ert_priority \u0026\u0026\n                    param-\u003esched_priority \u003e\n                                p-\u003esignal-\u003erlim[RLIMIT_RTPRIO].rlim_cur)\n                        return -EPERM;\n\nThus I do believe that the RLIMIT_RTPRIO value must be taken into\naccount for the policy check, especially as the RLIMIT_RTPRIO limit is\nof no use without this change.\n\nThe attached patch fixes this problem.\n\nSigned-off-by: Andreas Steinmetz \u003cast@domdv.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fdde86ac50357b6a811e3574e47d189e81a21444",
      "tree": "b5e8d3d295da10b84ba6538359e20c5435b3085a",
      "parents": [
        "804ebf46d51653e736108074473d9493398f2df9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 12:01:17 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:44 2005 -0700"
      },
      "message": "[PATCH] swpsuspend: Have suspend to disk use factors of sys_reboot\n\nThe suspend to disk code was a poor copy of the code in\nsys_reboot now that we have kernel_power_off, kernel_restart\nand kernel_halt use them instead of poorly duplicating them inline.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2f048ea81df94f72dee0d42b3d9b941c03b8c9c5",
      "tree": "1a60d6cc74585629750030c26c05ca471ca39546",
      "parents": [
        "ff31977782a05504f2586ec9e3e5ab4b09a4c893"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 11:49:23 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:43 2005 -0700"
      },
      "message": "[PATCH] Call emergency_reboot from panic\n\nWe know the system is in trouble so there is no question if this\nis an emergecy :)\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ff31977782a05504f2586ec9e3e5ab4b09a4c893",
      "tree": "3cf1d3ab1be8688a4de9bca44d8dac276f6038e2",
      "parents": [
        "62b3a04d75d2dc9480d5ad3b60f4258e548a6a83"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 11:47:32 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:43 2005 -0700"
      },
      "message": "[PATCH] Use kernel_power_off in sysrq-o\n\nWe already do all of the gymnastics to run from process context\nto call the power off code so call into the power off code cleanly.\n\nThis especially helps acpi as part of it\u0027s shutdown logic should\nrun acpi_shutdown called from device_shutdown which was not\nbeing called from here.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c9034735eccbf82608a4602c59aaf6053ea9416",
      "tree": "219e8cd4b5cfffeb261f42a2bd8e512be19cba40",
      "parents": [
        "abcd9e51f5b832439b119d530db1353c12fd4073"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 11:29:55 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:41 2005 -0700"
      },
      "message": "[PATCH] Add emergency_restart()\n\nWhen the kernel is working well and we want to restart cleanly\nkernel_restart is the function to use.   But in many instances\nthe kernel wants to reboot when thing are expected to be working\nvery badly such as from panic or a software watchdog handler.\n\nThis patch adds the function emergency_restart() so that\ncallers can be clear what semantics they expect when calling\nrestart.  emergency_restart() is expected to be callable\nfrom interrupt context and possibly reliable in even more\ntrying circumstances.\n\nThis is an initial generic implementation for all architectures.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "abcd9e51f5b832439b119d530db1353c12fd4073"
}
