)]}'
{
  "commit": "20377f32dcb77941d450728da18cce5b1a7faec5",
  "tree": "ef92da7c1fabcc68685021655842b3b18a6ee773",
  "parents": [
    "e27fc9641e8ddc8146f8e01f06e5eba2469698de"
  ],
  "author": {
    "name": "Frederic Weisbecker",
    "email": "fweisbec@gmail.com",
    "time": "Fri Dec 10 22:11:10 2010 +0100"
  },
  "committer": {
    "name": "Paul E. McKenney",
    "email": "paulmck@linux.vnet.ibm.com",
    "time": "Fri Dec 17 12:34:18 2010 -0800"
  },
  "message": "rcu: Stop chasing QS if another CPU did it for us\n\nWhen a CPU is idle and others CPUs handled its extended\nquiescent state to complete grace periods on its behalf,\nit will catch up with completed grace periods numbers\nwhen it wakes up.\n\nBut at this point there might be no more grace period to\ncomplete, but still the woken CPU always keeps its stale\nqs_pending value and will then continue to chase quiescent\nstates even if its not needed anymore.\n\nThis results in clusters of spurious softirqs until a new\nreal grace period is started. Because if we continue to\nchase quiescent states but we have completed every grace\nperiods, rcu_report_qs_rdp() is puzzled and makes that\nstate run into infinite loops.\n\nAs suggested by Lai Jiangshan, just reset qs_pending if\nsomeone completed every grace periods on our behalf.\n\nSuggested-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "120820ffc6575cc38764850e62aadf1b5640bcd6",
      "old_mode": 33188,
      "old_path": "kernel/rcutree.c",
      "new_id": "916f42b39f1ec4c08062eb73a034c2054c20c815",
      "new_mode": 33188,
      "new_path": "kernel/rcutree.c"
    }
  ]
}
