)]}'
{
  "commit": "dff1672d9199fffddb58fa7970ccf59005fc35f3",
  "tree": "a9740f65dfc203d183cb06ce0faeed0de5cef58b",
  "parents": [
    "facc4e159672b4ed10aa18147bfa187b013c9505"
  ],
  "author": {
    "name": "Paul E. McKenney",
    "email": "paul.mckenney@linaro.org",
    "time": "Tue Nov 29 15:57:13 2011 -0800"
  },
  "committer": {
    "name": "Paul E. McKenney",
    "email": "paulmck@linux.vnet.ibm.com",
    "time": "Sun Dec 11 10:32:09 2011 -0800"
  },
  "message": "rcu: Keep invoking callbacks if CPU otherwise idle\n\nThe rcu_do_batch() function that invokes callbacks for TREE_RCU and\nTREE_PREEMPT_RCU normally throttles callback invocation to avoid degrading\nscheduling latency.  However, as long as the CPU would otherwise be idle,\nthere is no downside to continuing to invoke any callbacks that have passed\nthrough their grace periods.  In fact, processing such callbacks in a\ntimely manner has the benefit of increasing the probability that the\nCPU can enter the power-saving dyntick-idle mode.\n\nTherefore, this commit allows callback invocation to continue beyond the\npreset limit as long as the scheduler does not have some other task to\nrun and as long as context is that of the idle task or the relevant\nRCU kthread.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c0ed3765ec39095421493c1668376c8c84ab4ac0",
      "old_mode": 33188,
      "old_path": "kernel/rcutree.c",
      "new_id": "4ec4b14cfba6620ad4d69436c26fb9acf583ac6c",
      "new_mode": 33188,
      "new_path": "kernel/rcutree.c"
    },
    {
      "type": "modify",
      "old_id": "9bcfbc9d16c6456990a83869c295d264dc183434",
      "old_mode": 33188,
      "old_path": "kernel/rcutree.h",
      "new_id": "fddff92d66760870682655f2bfccda602a3e1905",
      "new_mode": 33188,
      "new_path": "kernel/rcutree.h"
    },
    {
      "type": "modify",
      "old_id": "dbcea6b93aea6277a7306193c2aa36fc28e62740",
      "old_mode": 33188,
      "old_path": "kernel/rcutree_plugin.h",
      "new_id": "adb6e666c6f456d59f888b1b8ee3cefecd19bc47",
      "new_mode": 33188,
      "new_path": "kernel/rcutree_plugin.h"
    }
  ]
}
