)]}'
{
  "log": [
    {
      "commit": "1f564ad6d4182859612cbae452122e5eb2d62a76",
      "tree": "ef98ce12ed64853437c35a81e29f0d1c09a4393b",
      "parents": [
        "0aa366f351d044703e25c8425e508170e80d83b1"
      ],
      "author": {
        "name": "Bob Picco",
        "email": "bob.picco@hp.com",
        "time": "Wed Jul 18 15:51:28 2007 -0700"
      },
      "committer": {
        "name": "Tony Luck",
        "email": "tony.luck@intel.com",
        "time": "Fri Jul 20 11:23:02 2007 -0700"
      },
      "message": "[IA64] remove time interpolator\n\nRemove time_interpolator code (This is generic code, but\nonly user was ia64.  It has been superseded by the\nCONFIG_GENERIC_TIME code).\n\nSigned-off-by: Bob Picco \u003cbob.picco@hp.com\u003e\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Peter Keilty \u003cpeter.keilty@hp.com\u003e\nSigned-off-by: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "f4304ab21513b834c8fe3403927c60c2b81a72d7",
      "tree": "212c8fa327d9cf3f29cccf172f0707a3eb6524f8",
      "parents": [
        "771ee3b04eaac6184312825eb600b4c598f027a5"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Fri Feb 16 01:27:26 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:13:56 2007 -0800"
      },
      "message": "[PATCH] HZ free ntp\n\nDistangle the NTP update from HZ.  This is necessary for dynamic tick enabled\nkernels.\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3db5db4fcdafc85b99d171336a7d2f25765ccd13",
      "tree": "5fb1f991a7eb0de9fcab48d1a889f4324c823077",
      "parents": [
        "fc0ecff698165ae8e178efa086e0dd1f385206b1"
      ],
      "author": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Sat Feb 10 01:45:40 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 10:51:31 2007 -0800"
      },
      "message": "[PATCH] use cycle_t instead of u64 in struct time_interpolator\n\nThe 32bit and 64bit PARISC Linux kernels suffers from the problem, that the\ngettimeofday() call sometimes returns non-monotonic times.\n\nThe easiest way to fix this, is to drop the PARISC-specific implementation\nand switch over to the generic TIME_INTERPOLATION framework.\n\nBut in order to make it even compile on 32bit PARISC, the patch below which\ntouches the generic Linux code, is mandatory.\n\nMore information and the full patch with the parisc-specific changes is included in this thread: http://lists.parisc-linux.org/pipermail/parisc-linux/2006-December/031003.html\n\nAs far as I could see, this patch does not change anything for the existing\narchitectures which use this framework (IA64 and SPARC64), since \"cycles_t\"\nis defined there as unsigned 64bit-integer anyway (which then makes this\npatch a no-change for them).\n\nSigned-off-by: Helge Deller \u003cdeller@gmx.de\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7236e978a3883406ca06ee79e0739743c7c92a85",
      "tree": "86b3f05dd67fe018c754ff75f04d3c875dfd08aa",
      "parents": [
        "7f7bbbe50b8a28f4dfaa4cea939ddb50198c4a99"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Fri Oct 06 00:43:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 06 08:53:40 2006 -0700"
      },
      "message": "[PATCH] provide tickadj define\n\nProvide a tickadj compatibility define for archs still using it.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "70bc42f90a3f4721c89dbe865e6c95da8565b41c",
      "tree": "b98b1b19584c4dfcec283715a14a701139ea32d1",
      "parents": [
        "0883d899ef862c1b0f8b2c2d38098470c193a3dd"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Sep 30 23:28:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] kernel/time/ntp.c: possible cleanups\n\nThis patch contains the following possible cleanups:\n- make the following needlessly global function static:\n  - ntp_update_frequency()\n- make the following needlessly global variables static:\n  - time_state\n  - time_offset\n  - time_constant\n  - time_reftime\n- remove the following read-only global variable:\n  - time_precision\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0883d899ef862c1b0f8b2c2d38098470c193a3dd",
      "tree": "414fcb7849c285bed87928b4d5be21304cd6724e",
      "parents": [
        "f19923937321244e7dc334767eb4b67e0e3d5c74"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] ntp: cleanup defines and comments\n\nRemove a few unused defines and remove obsolete information from comments.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f19923937321244e7dc334767eb4b67e0e3d5c74",
      "tree": "be82956c645bab0cb13e73677116417d4c5ce311",
      "parents": [
        "04b617e71e363e640e88be1e43f53fa6a3afef9f"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:28 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] ntp: convert to the NTP4 reference model\n\nThis converts the kernel ntp model into a model which matches the nanokernel\nreference implementations.  The previous patches already increased the\nresolution and precision of the computations, so that this conversion becomes\nquite simple.\n\n\u003clinux@horizon.com\u003e explains:\n\nThe original NTP kernel interface was defined in units of microseconds.\nThat\u0027s what Linux implements.  As computers have gotten faster and can now\nsplit microseconds easily, a new kernel interface using nanosecond units was\ndefined (\"the nanokernel\", confusing as that name is to OS hackers), and\nthere\u0027s an STA_NANO bit in the adjtimex() status field to tell the application\nwhich units it\u0027s using.\n\nThe current ntpd supports both, but Linux loses some possible timing\nresolution because of quantization effects, and the ntpd hackers would really\nlike to be able to drop the backwards compatibility code.\n\nUlrich Windl has been maintaining a patch set to do the conversion for years,\nbut it\u0027s hard to keep in sync.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "04b617e71e363e640e88be1e43f53fa6a3afef9f",
      "tree": "b59e8e75e4671bc5e10f4fcaace85d4658d4d0f0",
      "parents": [
        "97eebe138caaf78354b1fad233e63bafdcc4fd54"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:27 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:27 2006 -0700"
      },
      "message": "[PATCH] ntp: convert time_freq to nsec value\n\nThis converts time_freq to a scaled nsec value and adds around 6bit of extra\nresolution.  This pushes the time_freq to its 32bit limits so the calculatons\nhave to be done with 64bit.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "97eebe138caaf78354b1fad233e63bafdcc4fd54",
      "tree": "15c006598c953b373af1c164ba344ef7105a7251",
      "parents": [
        "8f807f8d2137ba728d22820103131038639b68a9"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:26 2006 -0700"
      },
      "message": "[PATCH] ntp: remove time_tolerance\n\ntime_tolerance isn\u0027t changed at all in the kernel, so simply remove it, this\nsimplifies the next patch, as it avoids a number of conversions.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f807f8d2137ba728d22820103131038639b68a9",
      "tree": "cea8d4eedbffc17ea9a01808afacb0e02dbbe206",
      "parents": [
        "3d3675cc3d04d7fd4bb11e8c1ea79e5ade4f5e44"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:26 2006 -0700"
      },
      "message": "[PATCH] ntp: add time_adjust to tick length\n\nThis folds update_ntp_one_tick() into second_overflow() and adds time_adjust\nto the tick length, this makes time_next_adjust unnecessary.  This slightly\nchanges the adjtime() behaviour, instead of applying it to the next tick, it\u0027s\napplied to the next second.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3d3675cc3d04d7fd4bb11e8c1ea79e5ade4f5e44",
      "tree": "7beeef2896cb92e06b0a2ee8fa62b17f1732b72b",
      "parents": [
        "dc6a43e46f1b6de22701f97bec022e97088cfa90"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:25 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:26 2006 -0700"
      },
      "message": "[PATCH] ntp: prescale time_offset\n\nThis converts time_offset into a scaled per tick value.  This avoids now\ncompletely the crude compensation in second_overflow().\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b0ee75561beadc4db4d9a899c8ef4a7db50aa0ab",
      "tree": "e50354c74ce17f6ea78dc1d7fac608788de517f3",
      "parents": [
        "4c7ee8de956fc250fe31e2fa91f6da980fabe317"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Sep 30 23:28:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:26 2006 -0700"
      },
      "message": "[PATCH] ntp: add ntp_update_frequency\n\nThis introduces ntp_update_frequency() and deinlines ntp_clear() (as it\u0027s not\nperformance critical).  ntp_update_frequency() calculates the base tick length\nusing tick_usec and adds a base adjustment, in case the frequency doesn\u0027t\ndivide evenly by HZ.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c7ee8de956fc250fe31e2fa91f6da980fabe317",
      "tree": "e2d7c207a7ca9f785c256513686f6d7f7234ef93",
      "parents": [
        "c902e0a0102f1095eec4b3511c13c84ca2bc4577"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Sat Sep 30 23:28:22 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:26 2006 -0700"
      },
      "message": "[PATCH] NTP: Move all the NTP related code to ntp.c\n\nMove all the NTP related code to ntp.c\n\n[akpm@osdl.org: cleanups, build fix]\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee6baf884b27739cca110e5167a2edfa061ca19f",
      "tree": "27db3ed3a2d2c441fe0cda5811954421b5e0512c",
      "parents": [
        "7f1cbe51ffc1273bcded36742ede4b6ebef1b640"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Sep 12 20:36:03 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 13 07:32:15 2006 -0700"
      },
      "message": "[PATCH] headers_check: remove \u003casm/timex.h\u003e from user export\n\nThere\u0027s useful stuff in \u003clinux/timex.h\u003e but \u003casm/timex.h\u003e has nothing for\nuserspace.  Stop exporting it, and include it only from within the existing\n#ifdef __KERNEL__ part of \u003clinux/timex.h\u003e\n\nThis fixes a \u0027make headers_check\u0027 failure on i386 because asm-i386/timex.h\nincludes both asm-i386/tsc.h and asm-i386/processor.h, neither of which are\nexported to userspace.  It\u0027s not entirely clear _why_ it includes either of\nthese, but it does.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "19923c190e0932bf0ac1e1d06a48f5c3678dd0de",
      "tree": "2a32f5f16b3bbebd74c0f4910493c7f28a70fd84",
      "parents": [
        "6415ce9a922a1446e7ee0ac9b016082232ebe373"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Mon Jun 26 00:25:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:21 2006 -0700"
      },
      "message": "[PATCH] fix and optimize clock source update\n\nThis fixes the clock source updates in update_wall_time() to correctly\ntrack the time coming in via current_tick_length().  Optimize the fast\npaths to be as short as possible to keep the overhead low.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "260a42309b31cbc54eb4b6b85649e412bcad053f",
      "tree": "51efc7bb51075b0d25d0e8465d3c056e6a57fe16",
      "parents": [
        "ad596171ed635c51a9eef829187af100cbf8dcf7"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Mon Jun 26 00:25:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 09:58:20 2006 -0700"
      },
      "message": "[PATCH] Time: Let user request precision from current_tick_length()\n\nChange the current_tick_length() function so it takes an argument which\nspecifies how much precision to return in shifted nanoseconds.  This provides\na simple way to convert between NTPs internal nanoseconds shifted by\n(SHIFT_SCALE - 10) to other shifted nanosecond units that are used by the\nclocksource abstraction.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "3158e9411a66fb98d495ac441c242264f31aaf3e",
      "tree": "7b3bad47214c09c9dcd7ff27316c6de23f4c7cb0",
      "parents": [
        "88959ea968709c35e8b979ac9f5a398fa748091a"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Sun Mar 26 01:37:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:57 2006 -0800"
      },
      "message": "[PATCH] consolidate sys32/compat_adjtimex\n\nCreate compat_sys_adjtimex and use it an all appropriate places.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ddcfa878d5b10b0ab94251a4229a8a9daaf93ed",
      "tree": "b24bbd7ccb1a8accb0bc2e6f8c0d3b92f0bf66ea",
      "parents": [
        "e4294b3ecd1da9abeb66709c89f71b1ba888b3b1"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Mar 25 03:08:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:02 2006 -0800"
      },
      "message": "[PATCH] remove pps support\n\nThis removes the support for pps.  It\u0027s completely unused within the kernel\nand is basically in the way for further cleanups.  It should be easier to\nreadd proper support for it after the rest has been converted to NTP4\n(where the pps mechanisms are quite different from NTP3 anyway).\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\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": "726c14bf499e91e7ede4f1728830aba05c675061",
      "tree": "c9dfbc8f8fe7facc58e07e5699b6d97c41bd2b8e",
      "parents": [
        "dd942ae331425812930cd01766178b7e28e65f2d"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Fri Feb 17 10:30:23 2006 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 17 08:24:29 2006 -0800"
      },
      "message": "[PATCH] Provide an interface for getting the current tick length\n\nThis provides an interface for arch code to find out how many\nnanoseconds are going to be added on to xtime by the next call to\ndo_timer.  The value returned is a fixed-point number in 52.12 format\nin nanoseconds.  The reason for this format is that it gives the\nfull precision that the timekeeping code is using internally.\n\nThe motivation for this is to fix a problem that has arisen on 32-bit\npowerpc in that the value returned by do_gettimeofday drifts apart\nfrom xtime if NTP is being used.  PowerPC is now using a lockless\ndo_gettimeofday based on reading the timebase register and performing\nsome simple arithmetic.  (This method of getting the time is also\nexported to userspace via the VDSO.)  However, the factor and offset\nit uses were calculated based on the nominal tick length and weren\u0027t\nbeing adjusted when NTP varied the tick length.\n\nNote that 64-bit powerpc has had the lockless do_gettimeofday for a\nlong time now.  It also had an extremely hairy routine that got called\nfrom the 32-bit compat routine for adjtimex, which adjusted the\nfactor and offset according to what it thought the timekeeping code\nwas going to do.  Not only was this only called if a 32-bit task did\nadjtimex (i.e. not if a 64-bit task did adjtimex), it was also\nduplicating computations from kernel/timer.c and it wasn\u0027t clear that\nit was (still) correct.\n\nThe simple solution is to ask the timekeeping code how long the\ncurrent jiffy will be on each timer interrupt, after calling\ndo_timer.  If this jiffy will be a different length from the last one,\nwe then need to compute new values for the factor and offset used in\nthe lockless do_gettimeofday.  In this way we can keep xtime and\ndo_gettimeofday in sync, even when NTP is varying the tick length.\n\nNote that when adjtimex varies the tick length, it almost always\nintroduces the variation from the next tick on.  The only case I could\nsee where adjtimex would vary the length of the current tick is when\nan old-style adjtime adjustment is being cancelled.  (It\u0027s not clear\nto me why the adjustment has to be cancelled immediately rather than\nfrom the next tick on.)  Thus I don\u0027t see any real need for a hook in\nadjtimex; the rare case of an old-style adjustment being cancelled can\nbe fixed up at the next tick.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1bb34a412750291e4e5e9f1d0fe7ae1b7e976098",
      "tree": "00d481a2ff4302f444fbf7c31e5e661f79dc85a9",
      "parents": [
        "9c0cbd54ce0397017a823484f9a8054ab369b8a2"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Sun Oct 30 15:01:42 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:18 2005 -0800"
      },
      "message": "[PATCH] NTP shift_right cleanup\n\nCreate a macro shift_right() that avoids the numerous ugly conditionals in the\nNTP code that look like:\n\n        if(a \u003c 0)\n                b \u003d -(-a \u003e\u003e shift);\n        else\n                b \u003d a \u003e\u003e shift;\n\nReplacing it with:\n\n        b \u003d shift_right(a, shift);\n\nThis should have zero effect on the logic, however it should probably have\na bit of testing just to be sure.\n\nAlso replace open-coded min/max with the macros.\n\nSigned-off-by : John Stultz \u003cjohnstul@us.ibm.com\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b149ee2233edf08fb59b11e879a2c5941929bcb8",
      "tree": "4ee8e066c4d69ac98afc37ab0ab62ae54271ce02",
      "parents": [
        "6c231b7bab0aa6860cd9da2de8a064eddc34c146"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Tue Sep 06 15:17:46 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:34 2005 -0700"
      },
      "message": "[PATCH] NTP: ntp-helper functions\n\nThis patch cleans up a commonly repeated set of changes to the NTP state\nvariables by adding two helper inline functions:\n\nntp_clear(): Clears the ntp state variables\n\nntp_synced(): Returns 1 if the system is synced with a time server.\n\nThis was compile tested for alpha, arm, i386, x86-64, ppc64, s390, sparc,\nsparc64.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
