)]}'
{
  "log": [
    {
      "commit": "5bb6b1ea67a73f0665a41726dd7138977b992c6c",
      "tree": "d16d962dded41088032250b24f0cbee735f3c97c",
      "parents": [
        "51a96c77815e7f139892a6e9c8275a50e9baebdf"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Nov 19 21:11:09 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 23 10:29:08 2010 +0100"
      },
      "message": "sched: Add some clock info to sched_debug\n\nAdd more clock information to /proc/sched_debug, Thomas wanted to see\nthe sched_clock_stable state.\n\nRequested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c676329abb2b8359d9a5d734dec0c81779823fd6",
      "tree": "b6c33715176221a87100228399c2a6f5049e44ea",
      "parents": [
        "95ae3c59fa8ad616c73745e21154b5af0fb10168"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue May 25 10:48:51 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jun 09 10:34:49 2010 +0200"
      },
      "message": "sched_clock: Add local_clock() API and improve documentation\n\nFor people who otherwise get to write: cpu_clock(smp_processor_id()),\nthere is now: local_clock().\n\nAlso, as per suggestion from Andrew, provide some documentation on\nthe various clock interfaces, and minimize the unsigned long long vs\nu64 mess.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nLKML-Reference: \u003c1275052414.1645.52.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b6ac23af2c66e114d3a87ef28d56f1ceec283007",
      "tree": "f514445bea36dbeb2bc37f663a6f94275d484515",
      "parents": [
        "c0d97e9ca2cfa66bdfd1ed8ecb5dcd230924d675"
      ],
      "author": {
        "name": "Divyesh Shah",
        "email": "dpshah@google.com",
        "time": "Thu Apr 15 08:54:59 2010 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Apr 15 08:54:59 2010 +0200"
      },
      "message": "blkio: fix for modular blk-cgroup build\n\nAfter merging the block tree, 20100414\u0027s linux-next build (x86_64\nallmodconfig) failed like this:\n\nERROR: \"get_gendisk\" [block/blk-cgroup.ko] undefined!\nERROR: \"sched_clock\" [block/blk-cgroup.ko] undefined!\n\nThis happens because the two symbols aren\u0027t exported and hence not available\nwhen blk-cgroup code is built as a module. I\u0027ve tried to stay consistent with\nthe use of EXPORT_SYMBOL or EXPORT_SYMBOL_GPL with the other symbols in the\nrespective files.\n\nSigned-off-by: Divyesh Shah \u003cdpshah@google.com\u003e\nAcked-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.cn\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "b9f8fcd55bbdb037e5332dbdb7b494f0b70861ac",
      "tree": "71b2f8a175269e03e39a5976dc9d24f82b52ec91",
      "parents": [
        "1a551ae715825bb2a2107a2dd68de024a1fa4e32"
      ],
      "author": {
        "name": "David Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 13 18:25:02 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 15 09:04:36 2009 +0100"
      },
      "message": "sched: Fix cpu_clock() in NMIs, on !CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nRelax stable-sched-clock architectures to not save/disable/restore\nhardirqs in cpu_clock().\n\nThe background is that I was trying to resolve a sparc64 perf\nissue when I discovered this problem.\n\nOn sparc64 I implement pseudo NMIs by simply running the kernel\nat IRQ level 14 when local_irq_disable() is called, this allows\nperformance counter events to still come in at IRQ level 15.\n\nThis doesn\u0027t work if any code in an NMI handler does\nlocal_irq_save() or local_irq_disable() since the \"disable\" will\nkick us back to cpu IRQ level 14 thus letting NMIs back in and\nwe recurse.\n\nThe only path which that does that in the perf event IRQ\nhandling path is the code supporting frequency based events.  It\nuses cpu_clock().\n\ncpu_clock() simply invokes sched_clock() with IRQs disabled.\n\nAnd that\u0027s a fundamental bug all on it\u0027s own, particularly for\nthe HAVE_UNSTABLE_SCHED_CLOCK case.  NMIs can thus get into the\nsched_clock() code interrupting the local IRQ disable code\nsections of it.\n\nFurthermore, for the not-HAVE_UNSTABLE_SCHED_CLOCK case, the IRQ\ndisabling done by cpu_clock() is just pure overhead and\ncompletely unnecessary.\n\nSo the core problem is that sched_clock() is not NMI safe, but\nwe are invoking it from NMI contexts in the perf events code\n(via cpu_clock()).\n\nA less important issue is the overhead of IRQ disabling when it\nisn\u0027t necessary in cpu_clock().\n\nCONFIG_HAVE_UNSTABLE_SCHED_CLOCK architectures are not\naffected by this patch.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003c20091213.182502.215092085.davem@davemloft.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "152f9d0710a62708710161bce1b29fa8292c8c11",
      "tree": "1a9fb02d236a0328a711eccdef9e29112e216ff7",
      "parents": [
        "79e1dd05d1a22e95ab6d54d21836f478b3b56976"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 30 20:36:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 30 22:56:10 2009 +0200"
      },
      "message": "sched_clock: Fix atomicity/continuity bug by using cmpxchg64()\n\nCommit def0a9b2573 (sched_clock: Make it NMI safe) assumed\ncmpxchg() of 64bit values was available on X86_32.\n\nThat is not so - and causes some subtle scheduler misbehavior due\nto incorrect timestamps off to up by ~4 seconds.\n\nTwo symptoms are known right now:\n\n - interactivity problems seen by Arjan: up to 600 msecs\n   latencies instead of the expected 20-40 msecs. These\n   latencies are very visible on the desktop.\n\n - incorrect CPU stats: occasionally too high percentages in \u0027top\u0027,\n   and crazy CPU usage stats.\n\nReported-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20090930170754.0886ff2e@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "def0a9b2573e00ab0b486cb5382625203ab4c4a6",
      "tree": "1e3086fc320c244297b5b63cce47065bcfb71e8c",
      "parents": [
        "cf450a7355a116af793998c118a6bcf7f5a8367e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Sep 18 20:14:01 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 18 20:47:30 2009 +0200"
      },
      "message": "sched_clock: Make it NMI safe\n\nArjan complained about the suckyness of TSC on modern machines, and\nasked if we could do something about that for PERF_SAMPLE_TIME.\n\nMake cpu_clock() NMI safe by removing the spinlock and using\ncmpxchg. This also makes it smaller and more robust.\n\nAffects architectures that use HAVE_UNSTABLE_SCHED_CLOCK, i.e. IA64\nand x86.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "92d23f703c608fcb2c8edd74a3fd0f4031e18606",
      "tree": "ecd2e7f94fea20188eb75cabbcd48a7f7ab79dbc",
      "parents": [
        "091bf7624d1c90cec9e578a18529f615213ff847"
      ],
      "author": {
        "name": "Ron",
        "email": "ron@voicetronix.com",
        "time": "Fri May 08 22:54:49 2009 +0930"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat May 09 10:08:19 2009 +0200"
      },
      "message": "sched: Fix fallback sched_clock()\u0027s offset when using jiffies\n\nAccount for the initial offset to the jiffy count.\n\n[ Impact: fix printk timestamps on architectures using fallback sched_clock() ]\n\nSigned-off-by: Ron Lee \u003cron@debian.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8302294f43250dc337108c51882a6007f2b1e2e0",
      "tree": "85acd4440799c46a372df9cad170fa0c21e59096",
      "parents": [
        "4fe70410d9a219dabb47328effccae7e7f2a6e26",
        "2e572895bf3203e881356a4039ab0fa428ed2639"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 21:54:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:49:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core-v2\u0027 into tracing-for-linus\n\nConflicts:\n\tinclude/linux/slub_def.h\n\tlib/Kconfig.debug\n\tmm/slob.c\n\tmm/slub.c\n"
    },
    {
      "commit": "1b49061d400c9e51e3ac2aac026a099fe599b9bb",
      "tree": "54c632cd7f0be2573897c1463a247e69fb769940",
      "parents": [
        "14131f2f98ac350ee9e73faed916d2238a8b6a0d",
        "83ce400928680a6c8123d492684b27857f5a2d95"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:21:59 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 27 08:35:19 2009 +0100"
      },
      "message": "Merge branch \u0027sched/clock\u0027 into tracing/ftrace\n\nConflicts:\n\tkernel/sched_clock.c\n"
    },
    {
      "commit": "8325d9c09dedf45476f4d6261d1b6a72e4a7453f",
      "tree": "5b7f6f3b125aec59ec6a60d22130844a3addc8e9",
      "parents": [
        "83ce400928680a6c8123d492684b27857f5a2d95"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Feb 26 21:40:16 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:56:07 2009 +0100"
      },
      "message": "sched_clock: cleanups\n\n- remove superfluous checks in __update_sched_clock()\n- skip sched_clock_tick() for sched_clock_stable\n- reinstate the simple !HAVE_UNSTABLE_SCHED_CLOCK code to please the bloatwatch\n\nSigned-off-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b342501cd31e5546d0c9ca8ceff5ded1832f9e5b",
      "tree": "3cd5778565a45a74e8ad0640093927a77d4d625e",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 20:20:29 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 21:20:22 2009 +0100"
      },
      "message": "sched: allow architectures to specify sched_clock_stable\n\nAllow CONFIG_HAVE_UNSTABLE_SCHED_CLOCK architectures to still specify\nthat their sched_clock() implementation is reliable.\n\nThis will be used by x86 to switch on a faster sched_clock_cpu()\nimplementation on certain CPU types.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6409c4da289d6905f7ae2bd0630438368439bda2",
      "tree": "a89ab72b160acabe7e83200f73ba3a2cb3b2a0be",
      "parents": [
        "af39241b90a345556b8884adff87096afe71b050"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 12 21:21:14 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 18:44:05 2009 +0100"
      },
      "message": "sched: sched_clock() improvement: use in_nmi()\n\nmake sure we dont execute more complex sched_clock() code in NMI context.\n\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1c5745aa380efb6417b5681104b007c8612fb496",
      "tree": "263b81742f7973c0dd86efe414a79a324c0769e4",
      "parents": [
        "6a94cb73064c952255336cc57731904174b2c58f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 22 23:05:28 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 31 09:53:21 2008 +0100"
      },
      "message": "sched_clock: prevent scd-\u003eclock from moving backwards, take #2\n\nRedo:\n\n  5b7dba4: sched_clock: prevent scd-\u003eclock from moving backwards\n\nwhich had to be reverted due to s2ram hangs:\n\n  ca7e716: Revert \"sched_clock: prevent scd-\u003eclock from moving backwards\"\n\n... this time with resume restoring GTOD later in the sequence\ntaken into account as well.\n\nThe \"timekeeping_suspended\" flag is not very nice but we cannot call into\nGTOD before it has been properly resumed and the scheduler will run very\nearly in the resume sequence.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ca7e716c7833aeaeb8fedd6d004c5f5d5e14d325",
      "tree": "70a7846a35d880ee3efe3d664d71d3711af64a7d",
      "parents": [
        "5279585ff2bedc8180da5bdf8aa3ff1736466de2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 14 15:46:01 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 14 16:23:17 2008 -0800"
      },
      "message": "Revert \"sched_clock: prevent scd-\u003eclock from moving backwards\"\n\nThis reverts commit 5b7dba4ff834259a5623e03a565748704a8fe449, which\ncaused a regression in hibernate, reported by and bisected by Fabio\nComolli.\n\nThis revert fixes\n\n http://bugzilla.kernel.org/show_bug.cgi?id\u003d12155\n http://bugzilla.kernel.org/show_bug.cgi?id\u003d12149\n\nBisected-by: Fabio Comolli \u003cfabio.comolli@gmail.com\u003e\nRequested-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5b7dba4ff834259a5623e03a565748704a8fe449",
      "tree": "8fa9be3a308d1b5f2eb22d0a02dbe887a479ee3e",
      "parents": [
        "a5d8c3483a6e19aca95ef6a2c5890e33bfa5b293"
      ],
      "author": {
        "name": "Dave Kleikamp",
        "email": "shaggy@linux.vnet.ibm.com",
        "time": "Thu Oct 09 13:21:30 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 11:17:04 2008 +0200"
      },
      "message": "sched_clock: prevent scd-\u003eclock from moving backwards\n\nWhen sched_clock_cpu() couples the clocks between two cpus, it may\nincrement scd-\u003eclock beyond the GTOD tick window that __update_sched_clock()\nuses to clamp the clock.  A later call to __update_sched_clock() may move\nthe clock back to scd-\u003etick_gtod + TICK_NSEC, violating the clock\u0027s\nmonotonic property.\n\nThis patch ensures that scd-\u003eclock will not be set backward.\n\nSigned-off-by: Dave Kleikamp \u003cshaggy@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "354879bb977e06695993435745f06a0f6d39ce2b",
      "tree": "b811b4ec423fac8bdb671dafbf422aa4245bdcb3",
      "parents": [
        "efc2dead2c82cae31943828f6d977c483942b0eb"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Aug 25 17:15:34 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 25 17:39:57 2008 +0200"
      },
      "message": "sched_clock: fix cpu_clock()\n\nThis patch fixes 3 issues:\n\na) it removes the dependency on jiffies, because jiffies are incremented\n   by a single CPU, and the tick is not synchronized between CPUs. Therefore\n   relying on it to calculate a window to clip whacky TSC values doesn\u0027t work\n   as it can drift around.\n\n   So instead use [GTOD, GTOD+TICK_NSEC) as the window.\n\nb) __update_sched_clock() did (roughly speaking):\n\n   delta \u003d sched_clock() - scd-\u003etick_raw;\n   clock +\u003d delta;\n\n   Which gives exponential growth, instead of linear.\n\nc) allows the sched_clock_cpu() value to warp the u64 without breaking.\n\nthe results are more reliable sched_clock() deltas:\n\n           before       after   sched_clock\n\ncpu_clock: 15750        51312   51488\ncpu_clock: 59719        51052   50947\ncpu_clock: 15879        51249   51061\ncpu_clock: 1            50933   51198\ncpu_clock: 1            50931   51039\ncpu_clock: 1            51093   50981\ncpu_clock: 1            51043   51040\ncpu_clock: 1            50959   50938\ncpu_clock: 1            50981   51011\ncpu_clock: 1            51364   51212\ncpu_clock: 1            51219   51273\ncpu_clock: 1            51389   51048\ncpu_clock: 1            51285   51611\ncpu_clock: 1            50964   51137\ncpu_clock: 1            50973   50968\ncpu_clock: 1            50967   50972\ncpu_clock: 1            58910   58485\ncpu_clock: 1            51082   51025\ncpu_clock: 1            50957   50958\ncpu_clock: 1            50958   50957\ncpu_clock: 1006128      51128   50971\ncpu_clock: 1            51107   51155\ncpu_clock: 1            51371   51081\ncpu_clock: 1            51104   51365\ncpu_clock: 1            51363   51309\ncpu_clock: 1            51107   51160\ncpu_clock: 1            51139   51100\ncpu_clock: 1            51216   51136\ncpu_clock: 1            51207   51215\ncpu_clock: 1            51087   51263\ncpu_clock: 1            51249   51177\ncpu_clock: 1            51519   51412\ncpu_clock: 1            51416   51255\ncpu_clock: 1            51591   51594\ncpu_clock: 1            50966   51374\ncpu_clock: 1            50966   50966\ncpu_clock: 1            51291   50948\ncpu_clock: 1            50973   50867\ncpu_clock: 1            50970   50970\ncpu_clock: 998306       50970   50971\ncpu_clock: 1            50971   50970\ncpu_clock: 1            50970   50970\ncpu_clock: 1            50971   50971\ncpu_clock: 1            50970   50970\ncpu_clock: 1            51351   50970\ncpu_clock: 1            50970   51352\ncpu_clock: 1            50971   50970\ncpu_clock: 1            50970   50970\ncpu_clock: 1            51321   50971\ncpu_clock: 1            50974   51324\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c1955a3d4762e7a9bf84035eb3c4886a900f0d15",
      "tree": "a00dcd1736c612017df7094a91d8a6435b7a49c9",
      "parents": [
        "4a273f209cc95d148f79b4c96d3d03997b44ffda"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Mon Aug 11 08:59:03 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 11 08:59:03 2008 +0200"
      },
      "message": "sched_clock: delay using sched_clock()\n\nSome arch\u0027s can\u0027t handle sched_clock() being called too early - delay\nthis until sched_clock_init() has been called.\n\nReported-by: Bill Gatliff \u003cbgat@billgatliff.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nTested-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCC: Russell King - ARM Linux \u003clinux@arm.linux.org.uk\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4a273f209cc95d148f79b4c96d3d03997b44ffda",
      "tree": "0d3d0aec4e676baacc2afd2e731b8905257a0b32",
      "parents": [
        "56b906126d33904d4d67615d0d5b95dbdf1f27ca"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 30 10:22:07 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 31 17:21:01 2008 +0200"
      },
      "message": "sched clock: couple local and remote clocks\n\nWhen taking the time of a remote CPU, use the opportunity to\ncouple (sync) the clocks to each other. (in a monotonic way)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "56b906126d33904d4d67615d0d5b95dbdf1f27ca",
      "tree": "49ff0678cbb0f388fc5fd42e71ec5916fd655193",
      "parents": [
        "18e4e36c66d6edbdefc639692206cdf01e468713"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 30 10:15:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 31 17:20:55 2008 +0200"
      },
      "message": "sched clock: simplify __update_sched_clock()\n\n- return the current clock instead of letting callers\n  fetch it from scd-\u003eclock\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "18e4e36c66d6edbdefc639692206cdf01e468713",
      "tree": "271a70892fa5808459a1cfc30aa3b5631cd6647d",
      "parents": [
        "50526968e99afbca34924abcb04658b6dd5c5ea5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 30 10:13:35 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 31 17:20:49 2008 +0200"
      },
      "message": "sched: eliminate scd-\u003eprev_raw\n\neliminate prev_raw and use tick_raw instead.\n\nIt\u0027s enough to base the current time on the scheduler tick timestamp\nalone - the monotonicity and maximum checks will prevent any damage.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "50526968e99afbca34924abcb04658b6dd5c5ea5",
      "tree": "694bf4fae96efb10261e9a30514adf052d994360",
      "parents": [
        "e4e4e534faa3c2be4e165ce414f44b76ada7208c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 30 09:39:48 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 31 17:20:42 2008 +0200"
      },
      "message": "sched clock: clean up sched_clock_cpu()\n\n- simplify the remote clock rebasing\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "e4e4e534faa3c2be4e165ce414f44b76ada7208c",
      "tree": "615280ce53bdba4f99c95616d2a1527c3b863c39",
      "parents": [
        "39675e89fb472c1b9c8e740e00acb1df2bbc6be7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Apr 14 08:50:02 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 31 17:20:29 2008 +0200"
      },
      "message": "sched clock: revert various sched_clock() changes\n\nFound an interactivity problem on a quad core test-system - simple\nCPU loops would occasionally delay the system un an unacceptable way.\n\nAfter much debugging with Peter Zijlstra it turned out that the problem\nis caused by the string of sched_clock() changes - they caused the CPU\nclock to jump backwards a bit - which confuses the scheduler arithmetics.\n\n(which is unsigned for performance reasons)\n\nSo revert:\n\n # c300ba2: sched_clock: and multiplier for TSC to gtod drift\n # c0c8773: sched_clock: only update deltas with local reads.\n # af52a90: sched_clock: stop maximum check on NO HZ\n # f7cce27: sched_clock: widen the max and min time\n\nThis solves the interactivity problems.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Mike Galbraith \u003cefault@gmx.de\u003e\n"
    },
    {
      "commit": "2c3d103ba90827cfb478bf10464d9b5b9cea369c",
      "tree": "96c795c57a69a2a94ff1f077b1285136f4647b25",
      "parents": [
        "e26873bb10f722f10b1af9de05119a3d7cbc07b2"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Fri Jul 25 19:45:00 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 16:35:03 2008 +0200"
      },
      "message": "sched: move sched_clock before first use\n\nMove sched_clock() up to stop warning: weak declaration of `sched_clock\u0027\nafter first use results in unspecified behavior (if -fno-unit-at-a-time).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\nCc: Ben Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Linuxppc-dev@ozlabs.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "361833efac4d277d209008e1e0658e597bc1bdef",
      "tree": "ef3b3f3bbe274f1e59cc1521566a85584777ace7",
      "parents": [
        "54ef76f37bcccf8c16fbaaed13c3c40825195958",
        "c300ba252829e9325e08f0af60687add94445b25"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 14 12:19:13 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 14 12:19:13 2008 +0200"
      },
      "message": "Merge branch \u0027sched/clock\u0027 into sched/devel\n"
    },
    {
      "commit": "c300ba252829e9325e08f0af60687add94445b25",
      "tree": "93c583012a3f26617e95aea516c02716ce254f5d",
      "parents": [
        "a83bc47c33ab182f1e48977fd5a04024d713c75e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 09 00:15:33 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:28 2008 +0200"
      },
      "message": "sched_clock: and multiplier for TSC to gtod drift\n\nThe sched_clock code currently tries to keep all CPU clocks of all CPUS\nsomewhat in sync. At every clock tick it records the gtod clock and\nuses that and jiffies and the TSC to calculate a CPU clock that tries to\nstay in sync with all the other CPUs.\n\nftrace depends heavily on this timer and it detects when this timer\n\"jumps\".  One problem is that the TSC and the gtod also drift.\nWhen the TSC is 0.1% faster or slower than the gtod it is very noticeable\nin ftrace. To help compensate for this, I\u0027ve added a multiplier that\ntries to keep the CPU clock updating at the same rate as the gtod.\n\nI\u0027ve tried various ways to get it to be in sync and this ended up being\nthe most reliable. At every scheduler tick we calculate the new multiplier:\n\n  multi \u003d delta_gtod / delta_TSC\n\nThis means we perform a 64 bit divide at the tick (once a HZ). A shift\nis used to handle the accuracy.\n\nOther methods that failed due to dynamic HZ are:\n\n(not used)  multi +\u003d (gtod - tsc) / delta_gtod\n(not used)  multi +\u003d (gtod - (last_tsc + delta_tsc)) / delta_gtod\n\nas well as other variants.\n\nThis code still allows for a slight drift between TSC and gtod, but\nit keeps the damage down to a minimum.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a83bc47c33ab182f1e48977fd5a04024d713c75e",
      "tree": "759eb1afc83271ee2815dbd1214635ec7b506b5c",
      "parents": [
        "c0c87734f125d2fa8ebc70310f3257fa6209f2b6"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 09 00:15:32 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:27 2008 +0200"
      },
      "message": "sched_clock: record TSC after gtod\n\nTo read the gtod we need to grab the xtime lock for read. Reading the gtod\nbefore the TSC can cause a bigger gab if the xtime lock is contended.\n\nThis patch simply reverses the order to read the TSC after the gtod.\nThe locking in the reading of the gtod handles any barriers one might\nthink is needed.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c0c87734f125d2fa8ebc70310f3257fa6209f2b6",
      "tree": "c94f9f6c1e8dcc68c2a30caaff64db7e81a65510",
      "parents": [
        "2b8a0cf4890d7537a77b51caa8f508e4a05a0e67"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Jul 09 00:15:31 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:27 2008 +0200"
      },
      "message": "sched_clock: only update deltas with local reads.\n\nReading the CPU clock should try to stay accurate within the CPU.\nBy reading the CPU clock from another CPU and updating the deltas can\ncause unneeded jumps when reading from the local CPU.\n\nThis patch changes the code to update the last read TSC only when read\nfrom the local CPU.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b8a0cf4890d7537a77b51caa8f508e4a05a0e67",
      "tree": "a591ef66a6340bf03e6380b6f2aa76ef2fc45ce2",
      "parents": [
        "af52a90a14cdaa54ecbfb6e6982abb13466a4b56"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 07 19:49:41 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:26 2008 +0200"
      },
      "message": "sched_clock: fix calculation of other CPU\n\nThe algorithm to calculate the \u0027now\u0027 of another CPU is not correct.\nAt each scheduler tick, each CPU records the last sched_clock and\ngtod (tick_raw and tick_gtod respectively). If the TSC is somewhat the\nsame in speed between two clocks the algorithm would be:\n\n  tick_gtod1 + (now1 - tick_raw1) \u003d tick_gtod2 + (now2 - tick_raw2)\n\nTo calculate now2 we would have:\n\n  now2 \u003d (tick_gtod1 - tick_gtod2) + (tick_raw2 - tick_raw1) + now1\n\nCurrently the algorithm is:\n\n  now2 \u003d (tick_gtod1 - tick_gtod2) + (tick_raw1 - tick_raw2) + now1\n\nThis solves most of the rest of the issues I\u0027ve had with timestamps in\nftace.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "af52a90a14cdaa54ecbfb6e6982abb13466a4b56",
      "tree": "2488d6d7943b167987c33f984f7109c3dc4ae783",
      "parents": [
        "f7cce27f5605b9e137b829a47949cb2d3c7e1cab"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 07 14:16:52 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:26 2008 +0200"
      },
      "message": "sched_clock: stop maximum check on NO HZ\n\nWorking with ftrace I would get large jumps of 11 millisecs or more with\nthe clock tracer. This killed the latencing timings of ftrace and also\ncaused the irqoff self tests to fail.\n\nWhat was happening is with NO_HZ the idle would stop the jiffy counter and\nbefore the jiffy counter was updated the sched_clock would have a bad\ndelta jiffies to compare with the gtod with the maximum.\n\nThe jiffies would stop and the last sched_tick would record the last gtod.\nOn wakeup, the sched clock update would compare the gtod + delta jiffies\n(which would be zero) and compare it to the TSC. The TSC would have\ncorrectly (with a stable TSC) moved forward several jiffies. But because the\njiffies has not been updated yet the clock would be prevented from moving\nforward because it would appear that the TSC jumped too far ahead.\n\nThe clock would then virtually stop, until the jiffies are updated. Then\nthe next sched clock update would see that the clock was very much behind\nsince the delta jiffies is now correct. This would then jump the clock\nforward by several jiffies.\n\nThis caused ftrace to report several milliseconds of interrupts off\nlatency at every resume from NO_HZ idle.\n\nThis patch adds hooks into the nohz code to disable the checking of the\nmaximum clock update when nohz is in effect. It resumes the max check\nwhen nohz has updated the jiffies again.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f7cce27f5605b9e137b829a47949cb2d3c7e1cab",
      "tree": "fbe270ccfb5cee3d055a52b6351ade2d34c5d74b",
      "parents": [
        "62c43dd9864dbd52ff158922d1d08c75f20335af"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 07 14:16:51 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:25 2008 +0200"
      },
      "message": "sched_clock: widen the max and min time\n\nWith keeping the max and min sched time within one jiffy of the gtod clock\nwas too tight. Just before a schedule tick the max could easily be hit, as\nwell as just after a schedule_tick the min could be hit. This caused the\nclock to jump around by a jiffy.\n\nThis patch widens the minimum to\n   last gtod + (delta_jiffies ? delta_jiffies - 1 : 0) * TICK_NSECS\n\nand the maximum to\n    last gtod + (2 + delta_jiffies) * TICK_NSECS\n\nThis keeps the minum to gtod or if one jiffy less than delta jiffies\nand the maxim 2 jiffies ahead of gtod. This may cause unstable TSCs to be\na bit more sporadic, but it helps keep a clock with a stable TSC working well.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "62c43dd9864dbd52ff158922d1d08c75f20335af",
      "tree": "9b8ce91f634b56e1420759f6872c6bfc21deec97",
      "parents": [
        "70ff05554f91a1edda1f11684da1dbde09e2feea"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Mon Jul 07 14:16:50 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 11 15:53:25 2008 +0200"
      },
      "message": "sched_clock: record from last tick\n\nThe sched_clock code tries to keep within the gtod time by one tick (jiffy).\nThe current code mistakenly keeps track of the delta jiffies between\nupdates of the clock, where the the delta is used to compare with the\nnumber of jiffies that have past since an update of the gtod. The gtod is\nupdated at each schedule tick not each sched_clock update. After one\njiffy passes the clock is updated fine. But the delta is taken from the\nlast update so if the next update happens before the next tick the delta\njiffies used will be incorrect.\n\nThis patch changes the code to check the delta of jiffies between ticks\nand not updates to match the comparison of the updates with the gtod.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2d452c9b10caeec455eb5e56a0ef4ed485178213",
      "tree": "8c7af10fa4b2f69307a1b4e0a997ed9d4e2ed32d",
      "parents": [
        "4c9fe8ad813b257a2b9ddf0f752105a75a7dae63"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jun 29 15:01:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Jun 29 15:05:00 2008 +0200"
      },
      "message": "sched: sched_clock_cpu() based cpu_clock(), lockdep fix\n\nVegard Nossum reported:\n\n\u003e WARNING: at kernel/lockdep.c:2738 check_flags+0x142/0x160()\n\nwhich happens due to:\n\n unsigned long long cpu_clock(int cpu)\n {\n         unsigned long long clock;\n         unsigned long flags;\n\n         raw_local_irq_save(flags);\n\nas lower level functions can take locks, we must not do that, use\nproper lockdep-annotated irq save/restore.\n\nReported-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4c9fe8ad813b257a2b9ddf0f752105a75a7dae63",
      "tree": "fd8264ab8a8840fbaeb8a894ee35fb2a8c57b924",
      "parents": [
        "55e12e5e7b1d7e7c05a4be10cb5fd092c039aa78"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:49:35 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:49:06 2008 +0200"
      },
      "message": "sched: export cpu_clock\n\nthe rcutorture module relies on cpu_clock.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "76a2a6ee8a0660a29127f05989ac59ae1ce865fa",
      "tree": "93ae1dd3cc5f564fc1e9d30bcdb0cd313f67221a",
      "parents": [
        "c09595f63bb1909c5dc4dca288f4fe818561b5f3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Jun 27 13:41:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jun 27 14:31:30 2008 +0200"
      },
      "message": "sched: sched_clock_cpu() based cpu_clock()\n\nwith sched_clock_cpu() being reasonably in sync between cpus (max 1 jiffy\ndifference) use this to provide cpu_clock().\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a381759d6ad5c5dea5a981918e0b4493e9b66ac7",
      "tree": "059df197fe2974c655fc098e3aaf6968a3cc2a3c",
      "parents": [
        "6363ca57c76b7b83639ca8c83fc285fa26a7880e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu May 29 10:07:15 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 29 11:29:19 2008 +0200"
      },
      "message": "sched: fix sched_clock_cpu()\n\nMake sched_clock_cpu() return 0 before it has been initialized and avoid\ncorrupting its state due to doing so.\n\nThis fixes the weird printk timestamp jump reported.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd",
      "tree": "3752f9ea8e014ec40e95a1b197b0a3d18e1056a8",
      "parents": [
        "a5574cf65b5f03ce9ade3918764fe22e5e2371e3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat May 03 18:29:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:56:18 2008 +0200"
      },
      "message": "sched: add optional support for CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nthis replaces the rq-\u003eclock stuff (and possibly cpu_clock()).\n\n - architectures that have an \u0027imperfect\u0027 hardware clock can set\n   CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\n - the \u0027jiffie\u0027 window might be superfulous when we update tick_gtod\n   before the __update_sched_clock() call in sched_clock_tick()\n\n - cpu_clock() might be implemented as:\n\n     sched_clock_cpu(smp_processor_id())\n\n   if the accuracy proves good enough - how far can TSC drift in a\n   single jiffie when considering the filtering and idle hooks?\n\n[ mingo@elte.hu: various fixes and cleanups ]\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ]
}
