)]}'
{
  "commit": "45eacc692771bd2b1ea3d384e6345cab3da10861",
  "tree": "47b131fb39077451fe247a96c0fc98ab142b79fa",
  "parents": [
    "67dd331c5d811b2e50c935a24c82f31b61c6dcd3"
  ],
  "author": {
    "name": "Frederic Weisbecker",
    "email": "fweisbec@gmail.com",
    "time": "Wed May 15 22:16:32 2013 +0200"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@kernel.org",
    "time": "Fri May 31 11:31:50 2013 +0200"
  },
  "message": "vtime: Use consistent clocks among nohz accounting\n\nWhile computing the cputime delta of dynticks CPUs,\nwe are mixing up clocks of differents natures:\n\n* local_clock() which takes care of unstable clock\nsources and fix these if needed.\n\n* sched_clock() which is the weaker version of\nlocal_clock(). It doesn\u0027t compute any fixup in case\nof unstable source.\n\nIf the clock source is stable, those two clocks are the\nsame and we can safely compute the difference against\ntwo random points.\n\nOtherwise it results in random deltas as sched_clock()\ncan randomly drift away, back or forward, from local_clock().\n\nAs a consequence, some strange behaviour with unstable tsc\nhas been observed such as non progressing constant zero cputime.\n(The \u0027top\u0027 command showing no load).\n\nFix this by only using local_clock(), or its irq safe/remote\nequivalent, in vtime code.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSuggested-by: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Li Zhong \u003czhong@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "71a5782d8c592fc027cd1e0ce7c4c5a99787c11f",
      "old_mode": 33188,
      "old_path": "include/linux/vtime.h",
      "new_id": "b1dd2db80076d87d77236b76e9314557a185ae5c",
      "new_mode": 33188,
      "new_path": "include/linux/vtime.h"
    },
    {
      "type": "modify",
      "old_id": "58453b8272fdbab9422bf6c040683397c269ba82",
      "old_mode": 33188,
      "old_path": "kernel/sched/core.c",
      "new_id": "e1a27f91872377c2526d28aead495e8241b1e92d",
      "new_mode": 33188,
      "new_path": "kernel/sched/core.c"
    },
    {
      "type": "modify",
      "old_id": "cc2dc3eea8a3a55d7c86cc9896bfe9d235c18cab",
      "old_mode": 33188,
      "old_path": "kernel/sched/cputime.c",
      "new_id": "b5ccba22603b51a92c2aa1f0ef647a878dd4e2c3",
      "new_mode": 33188,
      "new_path": "kernel/sched/cputime.c"
    }
  ]
}
