)]}'
{
  "log": [
    {
      "commit": "fa4da365bc7772c2cd6d5405bdf151612455f957",
      "tree": "a688173e5ba7428e934dee1ea2905c2bbe92ef50",
      "parents": [
        "9886f444129171569461d8c39983e16f4871e3b4"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Apr 09 15:41:44 2012 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Apr 10 11:42:07 2012 +0200"
      },
      "message": "clockevents: tTack broadcast device mode change in tick_broadcast_switch_to_oneshot()\n\nIn the commit 77b0d60c5adf39c74039e2142a1d3cd1e4d53799,\n\"clockevents: Leave the broadcast device in shutdown mode when not needed\",\nwe were bailing out too quickly in tick_broadcast_switch_to_oneshot(),\nwith out tracking the broadcast device mode change to \u0027TICKDEV_MODE_ONESHOT\u0027.\n\nThis breaks the platforms which need broadcast device oneshot services during\ndeep idle states. tick_broadcast_oneshot_control() thinks that it is\nin periodic mode and fails to take proper decisions based on the\nCLOCK_EVT_NOTIFY_BROADCAST_[ENTER, EXIT] notifications during deep\nidle entry/exit.\n\nFix this by tracking the broadcast device mode as \u0027TICKDEV_MODE_ONESHOT\u0027,\nbefore leaving the broadcast HW device in shutdown mode if there are no active\nrequests for the moment.\n\nReported-and-tested-by: Santosh Shilimkar \u003csantosh.shilimkar@ti.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: johnstul@us.ibm.com\nLink: http://lkml.kernel.org/r/1334011304.12400.81.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6f103929f8979d2638e58d7f7fda0beefcb8ee7e",
      "tree": "e1ef3fc388c177e8e8ca4b6daa797fe7f9306d84",
      "parents": [
        "3872c48b14259d8c0a00c9fff06a4a4123f7f4eb"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Tue Mar 27 15:09:37 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Apr 06 13:24:17 2012 +0200"
      },
      "message": "nohz: Fix stale jiffies update in tick_nohz_restart()\n\nFix tick_nohz_restart() to not use a stale ktime_t \"now\" value when\ncalling tick_do_update_jiffies64(now).\n\nIf we reach this point in the loop it means that we crossed a tick\nboundary since we grabbed the \"now\" timestamp, so at this point \"now\"\nrefers to a time in the old jiffy, so using the old value for \"now\" is\nincorrect, and is likely to give us a stale jiffies value.\n\nIn particular, the first time through the loop the\ntick_do_update_jiffies64(now) call is always a no-op, since the\ncaller, tick_nohz_restart_sched_tick(), will have already called\ntick_do_update_jiffies64(now) with that \"now\" value.\n\nNote that tick_nohz_stop_sched_tick() already uses the correct\napproach: when we notice we cross a jiffy boundary, grab a new\ntimestamp with ktime_get(), and *then* update jiffies.\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nCc: Ben Segall \u003cbsegall@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: stable@vger.kernel.org\nLink: http://lkml.kernel.org/r/1332875377-23014-1-git-send-email-ncardwell@google.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "3872c48b14259d8c0a00c9fff06a4a4123f7f4eb",
      "tree": "94e5f5c1898896436e9534aa182d8c3aef255826",
      "parents": [
        "cb85a6ed67e979c59a29b7b4e8217e755b951cf4"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 31 12:45:43 2012 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 31 12:45:43 2012 +0200"
      },
      "message": "tick: Document TICK_ONESHOT config option\n\nThis option has been selected from arch code as it was assumed that\nit\u0027s necessary to support oneshot mode clockevent devices. But it\u0027s\njust a core internal helper to compile tick-oneshot.c if NOHZ or\nHIG_RES_TIMERS are selected.\n\nReported-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bcd550745fc54f789c14e7526e0633222c505faa",
      "tree": "c3fe11a6503b7ffdd4406a9fece5c40b3e2a3f6d",
      "parents": [
        "93f378883cecb9dcb2cf5b51d9d24175906659da",
        "646783a389828e76e813f50791f7999429c821bc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:16:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:16:48 2012 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull timer core updates from Thomas Gleixner.\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  ia64: vsyscall: Add missing paranthesis\n  alarmtimer: Don\u0027t call rtc_timer_init() when CONFIG_RTC_CLASS\u003dn\n  x86: vdso: Put declaration before code\n  x86-64: Inline vdso clock_gettime helpers\n  x86-64: Simplify and optimize vdso clock_gettime monotonic variants\n  kernel-time: fix s/then/than/ spelling errors\n  time: remove no_sync_cmos_clock\n  time: Avoid scary backtraces when warning of \u003e 11% adj\n  alarmtimer: Make sure we initialize the rtctimer\n  ntp: Fix leap-second hrtimer livelock\n  x86, tsc: Skip refined tsc calibration on systems with reliable TSC\n  rtc: Provide flag for rtc devices that don\u0027t support UIE\n  ia64: vsyscall: Use seqcount instead of seqlock\n  x86: vdso: Use seqcount instead of seqlock\n  x86: vdso: Remove bogus locking in update_vsyscall_tz()\n  time: Remove bogus comments\n  time: Fix change_clocksource locking\n  time: x86: Fix race switching from vsyscall to non-vsyscall clock\n"
    },
    {
      "commit": "c5e14e763046b11dd8bf57b5dc9f3ab444af8e60",
      "tree": "8f3c68218ef4ffadeb5c0620b9d2fe6e1fd17281",
      "parents": [
        "68fe7b23d559763a2e19e5fc1cf7036e4aaecb10"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 24 12:46:23 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 24 12:46:23 2012 +0100"
      },
      "message": "alarmtimer: Don\u0027t call rtc_timer_init() when CONFIG_RTC_CLASS\u003dn\n\nrtc_timer_init() is not available when CONFIG_RTC_CLASS\u003dn. Provide a\nproper wrapper in the RTC section of alarmtimer.c\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "88b28adf6fcdd6d10a1cfc7765bb200d7366a265",
      "tree": "2a5e792dbd6e3a8971e8c163dac7f6a85f52f101",
      "parents": [
        "335dd85895abeca1957d5eaa3013dfe8dc60c7d7"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Mar 14 21:28:56 2012 -0600"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Mar 23 16:49:21 2012 -0700"
      },
      "message": "kernel-time: fix s/then/than/ spelling errors\n\nUse than for comparisons, like more than.\n\nCC: John Stultz \u003cjohn.stultz@linaro.org\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "335dd85895abeca1957d5eaa3013dfe8dc60c7d7",
      "tree": "7ab7ae63376047f6b9fb05b98db6d8ef252c1b5e",
      "parents": [
        "e919cfd42da54d400e7e0385f22cae3672dcf874"
      ],
      "author": {
        "name": "Cesar Eduardo Barros",
        "email": "cesarb@cesarb.net",
        "time": "Sat Feb 11 17:54:59 2012 -0200"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Mar 23 16:25:20 2012 -0700"
      },
      "message": "time: remove no_sync_cmos_clock\n\nCommit 9863c90f682fba34cdc26c3437e8c00da6c83fa4 (x86, vmware: Remove\ndeprecated VMI kernel support) removed the only place which set\nno_sync_cmos_clock. Since that commit, this variable is never set.\n\nSigned-off-by: Cesar Eduardo Barros \u003ccesarb@cesarb.net\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "e919cfd42da54d400e7e0385f22cae3672dcf874",
      "tree": "2fad9b552439188e2e48b0d3b0cacce52dc71b95",
      "parents": [
        "ad30dfa94c5cc23931c822922a50bd163ab293a5"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Mar 22 19:14:46 2012 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Mar 23 16:25:16 2012 -0700"
      },
      "message": "time: Avoid scary backtraces when warning of \u003e 11% adj\n\nFolks have been getting a number of warnings about time\nadjustments \u003e 11%. The WARN_ON leaves a big useless backtrace\nso this patch removes it for a printk_once().\n\nI\u0027m still working to narrow down the cause of the \u003e 11% adjustment.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "ad30dfa94c5cc23931c822922a50bd163ab293a5",
      "tree": "574daa8c88b38161fe6139ba2b3fcda42538f32d",
      "parents": [
        "6b43ae8a619d17c4935c3320d2ef9e92bdeed05d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Mar 23 15:52:25 2012 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Mar 23 16:23:12 2012 -0700"
      },
      "message": "alarmtimer: Make sure we initialize the rtctimer\n\njonghwan Choi reported seeing warnings with the alarmtimer\ncode at suspend/resume time, and pointed out that the\nrtctimer isn\u0027t being properly initialized.\n\nThis patch corrects this issue.\n\nReported-by: jonghwan Choi \u003cjhbird.choi@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "7bfe0e66d5da32961f0060fc5d96b739b1ed64b9",
      "tree": "6d5dcf77248b574bb0c50930bbf9030aafb99fce",
      "parents": [
        "6a76a6992341faab0ef31e7d97000e0cf336d0ba",
        "10ce3cc919f50c2043b41ca968b43c26a3672600"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:20:18 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:20:18 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull input subsystem updates from Dmitry Torokhov:\n \"- we finally merged driver for USB version of Synaptics touchpads\n    (I guess most commonly found in IBM/Lenovo keyboard/touchpad combo);\n\n   - a bunch of new drivers for embedded platforms (Cypress\n     touchscreens, DA9052 OnKey, MAX8997-haptic, Ilitek ILI210x\n     touchscreens, TI touchscreen);\n\n   - input core allows clients to specify desired clock source for\n     timestamps on input events (EVIOCSCLOCKID ioctl);\n\n   - input core allows querying state of all MT slots for given event\n     code via EVIOCGMTSLOTS ioctl;\n\n   - various driver fixes and improvements.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (45 commits)\n  Input: ili210x - add support for Ilitek ILI210x based touchscreens\n  Input: altera_ps2 - use of_match_ptr()\n  Input: synaptics_usb - switch to module_usb_driver()\n  Input: convert I2C drivers to use module_i2c_driver()\n  Input: convert SPI drivers to use module_spi_driver()\n  Input: omap4-keypad - move platform_data to \u003clinux/platform_data\u003e\n  Input: kxtj9 - who_am_i check value and initial data rate fixes\n  Input: add driver support for MAX8997-haptic\n  Input: tegra-kbc - revise device tree support\n  Input: of_keymap - add device tree bindings for simple key matrices\n  Input: wacom - fix physical size calculation for 3rd-gen Bamboo\n  Input: twl4030-vibra - really switch from #if to #ifdef\n  Input: hp680_ts_input - ensure arguments to request_irq and free_irq are compatible\n  Input: max8925_onkey - avoid accessing input device too early\n  Input: max8925_onkey - allow to be used as a wakeup source\n  Input: atmel-wm97xx - convert to dev_pm_ops\n  Input: atmel-wm97xx - set driver owner\n  Input: add cyttsp touchscreen maintainer entry\n  Input: cyttsp - remove useless checks in cyttsp_probe()\n  Input: usbtouchscreen - add support for Data Modul EasyTouch TP 72037\n  ...\n"
    },
    {
      "commit": "6b43ae8a619d17c4935c3320d2ef9e92bdeed05d",
      "tree": "007df06a9cf0d4d2b72ed7dd8d646e853de80e9b",
      "parents": [
        "57779dc2b3b75bee05ef5d1ada47f615f7a13932"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Mar 15 13:04:03 2012 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Mar 22 19:43:43 2012 -0700"
      },
      "message": "ntp: Fix leap-second hrtimer livelock\n\nSince commit 7dffa3c673fbcf835cd7be80bb4aec8ad3f51168 the ntp\nsubsystem has used an hrtimer for triggering the leapsecond\nadjustment. However, this can cause a potential livelock.\n\nThomas diagnosed this as the following pattern:\nCPU 0                                                    CPU 1\ndo_adjtimex()\n  spin_lock_irq(\u0026ntp_lock);\n    process_adjtimex_modes();\t\t\t\t timer_interrupt()\n      process_adj_status();                                do_timer()\n        ntp_start_leap_timer();                             write_lock(\u0026xtime_lock);\n          hrtimer_start();                                  update_wall_time();\n             hrtimer_reprogram();                            ntp_tick_length()\n               tick_program_event()                            spin_lock(\u0026ntp_lock);\n                 clockevents_program_event()\n\t\t   ktime_get()\n                     seq \u003d req_seqbegin(xtime_lock);\n\nThis patch tries to avoid the problem by reverting back to not using\nan hrtimer to inject leapseconds, and instead we handle the leapsecond\nprocessing in the second_overflow() function.\n\nThe downside to this change is that on systems that support highres\ntimers, the leap second processing will occur on a HZ tick boundary,\n(ie: ~1-10ms, depending on HZ)  after the leap second instead of\npossibly sooner (~34us in my tests w/ x86_64 lapic).\n\nThis patch applies on top of tip/timers/core.\n\nCC: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReported-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nDiagnoised-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "f695cf94837de53864180400cbac42cfa370426f",
      "tree": "9bb91a9b8c5a1291a083a37e790da00d477b18f8",
      "parents": [
        "a939e817aa7e199d2fff05a67cb745be32dd5c2d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Mar 14 16:38:15 2012 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Mar 15 18:17:54 2012 -0700"
      },
      "message": "time: Fix change_clocksource locking\n\nchange_clocksource() fails to grab locks or call timekeeping_update(),\nwhich leaves a race window for time inconsistencies.\n\nThis adds proper locking and a call to timekeeping_update() to fix this.\n\nCC: Andy Lutomirski \u003cluto@amacapital.net\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "a078c6d0e6288fad6d83fb6d5edd91ddb7b6ab33",
      "tree": "473eb7484d966e65c51487c72d47502096ab7b99",
      "parents": [
        "f910381a55cdaa097030291f272f6e6e4380c39a"
      ],
      "author": {
        "name": "Sasha Levin",
        "email": "levinsasha928@gmail.com",
        "time": "Thu Mar 15 12:36:14 2012 -0400"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Mar 15 21:41:34 2012 +0100"
      },
      "message": "ntp: Fix integer overflow when setting time\n\n\u0027long secs\u0027 is passed as divisor to div_s64, which accepts a 32bit\ndivisor. On 64bit machines that value is trimmed back from 8 bytes\nback to 4, causing a divide by zero when the number is bigger than\n(1 \u003c\u003c 32) - 1 and all 32 lower bits are 0.\n\nUse div64_long() instead.\n\nSigned-off-by: Sasha Levin \u003clevinsasha928@gmail.com\u003e\nCc: johnstul@us.ibm.com\nLink: http://lkml.kernel.org/r/1331829374-31543-2-git-send-email-levinsasha928@gmail.com\nCc: stable@vger.kernel.org\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b675b3667f6729dcd1036a2a129b35445947f905",
      "tree": "0d58791e9063d3ca2c352da6f3e7df2bdb876f9d",
      "parents": [
        "104a5f3cad8f2f27cadbdf0029400ecd9e17ccc0",
        "192cfd58774b4d17b2fe8bdc77d89c2ef4e0591d"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Mar 09 10:55:17 2012 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Mar 09 10:55:17 2012 -0800"
      },
      "message": "Merge commit \u0027v3.3-rc6\u0027 into next\n"
    },
    {
      "commit": "97ac984d2feec885d10f900591431088eab42021",
      "tree": "e66e4e2ecb428d6ea45a6495b0675e3531ba23d1",
      "parents": [
        "8682df25ca9afd3aac30f2c72d00bd98de2118e8",
        "cc06268c6a87db156af2daed6e96a936b955cc82"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 15 20:29:18 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 15 20:29:18 2012 +0100"
      },
      "message": "Merge branch \u0027fortglx/3.4/time\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n"
    },
    {
      "commit": "15f827be93928890bba965bc175caee50c4406d2",
      "tree": "f858d834563a8f47327fbd4792dcf3b5499901b9",
      "parents": [
        "430ee8819553f66fe00e36f676a45886d76e7e8b"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Jan 24 18:59:43 2012 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 15 15:23:09 2012 +0100"
      },
      "message": "nohz: Remove ts-\u003eEinidle checks before restarting the tick\n\nts-\u003einidle is set by tick_nohz_idle_enter() and unset by\ntick_nohz_idle_exit(). However these two calls are assumed\nto be always paired. This means that by the time we call\ntick_nohz_idle_exit(), ts-\u003einidle is supposed to be always\nset to 1.\n\nRemove the checks for ts-\u003einidle in tick_nohz_idle_exit().\nThis simplifies a bit the code and improves its debuggability\n(ie: ensure the call is paired with a tick_nohz_idle_enter()\ncall).\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/1327427984-23282-2-git-send-email-fweisbec@gmail.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "430ee8819553f66fe00e36f676a45886d76e7e8b",
      "tree": "e45859ba70d207635a21a27fffa438ecb3a60155",
      "parents": [
        "77b0d60c5adf39c74039e2142a1d3cd1e4d53799"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Thu Dec 01 17:00:22 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 15 15:23:09 2012 +0100"
      },
      "message": "nohz: Remove update_ts_time_stat from tick_nohz_start_idle\n\nThere is no reason to call update_ts_time_stat from tick_nohz_start_idle\nanymore (after e0e37c20 sched: Eliminate the ts-\u003eidle_lastupdate field)\nwhen we updated idle_lastupdate unconditionally.\n\nWe haven\u0027t set idle_active yet and do not provide last_update_time so\nthe whole call end up being just 2 wasted branches.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nLink: http://lkml.kernel.org/r/1322755222-6951-1-git-send-email-mhocko@suse.cz\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "77b0d60c5adf39c74039e2142a1d3cd1e4d53799",
      "tree": "9c009072825bedc6423df543b6b8e12a342cfeb7",
      "parents": [
        "7ada1dd62804ca9ce1cb8666c6e563cd92fa50c1"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Fri Nov 04 17:18:21 2011 -0700"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Feb 15 15:23:09 2012 +0100"
      },
      "message": "clockevents: Leave the broadcast device in shutdown mode when not needed\n\nPlatforms with Always Running APIC Timer doesn\u0027t use the broadcast timer\nbut the kernel is leaving the broadcast timer (HPET in this case)\nin oneshot mode.\n\nOn these platforms, before the switch to oneshot mode, broadcast device is\nactually in shutdown mode. Code checks for empty tick_broadcast_mask and\navoids going into the periodic mode.\n\nDuring switch to oneshot mode, add the same tick_broadcast_mask checks in the\ntick_broadcast_switch_to_oneshot() and avoid the broadcast device going into\nthe oneshot mode.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: venki@google.com\nLink: http://lkml.kernel.org/r/1320452301.15071.16.camel@sbsiddha-desk.sc.intel.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a80b83b7b8456e9b475346c2e01d7e210883208c",
      "tree": "fb05acce28923e0e62b1b13cd39b9e1eee9bd0ae",
      "parents": [
        "4065d1e7b2164cff4af57b58fac887df2fe75d2a"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Feb 03 00:19:07 2012 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Fri Feb 03 00:24:58 2012 -0800"
      },
      "message": "Input: add infrastructure for selecting clockid for event time stamps\n\nAs noted by Arve and others, since wall time can jump backwards, it is\ndifficult to use for input because one cannot determine if one event\noccurred before another or for how long a key was pressed.\n\nHowever, the timestamp field is part of the kernel ABI, and cannot be\nchanged without possibly breaking existing users.\n\nThis patch adds a new IOCTL that allows a clockid to be set in the\nevdev_client struct that will specify which time base to use for event\ntimestamps (ie: CLOCK_MONOTONIC instead of CLOCK_REALTIME).\n\nFor now we only support CLOCK_MONOTONIC and CLOCK_REALTIME, but\nin the future we could support other clockids if appropriate.\n\nThe default remains CLOCK_REALTIME, so we don\u0027t change the ABI.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nReviewed-by: Daniel Kurtz \u003cdjkurtz@google.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "cc06268c6a87db156af2daed6e96a936b955cc82",
      "tree": "7edfb767cf3a58b82c8ee299d3689943b87d1d3d",
      "parents": [
        "058892e632aa53be8255c2f0a42f9ace7bed66bb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Nov 13 23:19:49 2011 +0000"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:31 2012 -0800"
      },
      "message": "time: Move common updates to a function\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "058892e632aa53be8255c2f0a42f9ace7bed66bb",
      "tree": "3528cc45b80245fc8d3eba00d3cda80f782d0fe1",
      "parents": [
        "92c1d3ed4dc0b8cfb10e85ed0c9934db41efc027"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Nov 13 23:19:48 2011 +0000"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:29 2012 -0800"
      },
      "message": "time: Reorder so the hot data is together\n\nKeep all the interesting data in a single cache line.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "92c1d3ed4dc0b8cfb10e85ed0c9934db41efc027",
      "tree": "233556d74e7bd062d8e174bc0a33fdc2dc7f95b1",
      "parents": [
        "bd3312681f69207a40431981c1bce1afdc9b7975"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 14:05:44 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:27 2012 -0800"
      },
      "message": "time: Remove most of xtime_lock usage in timekeeping.c\n\nNow that ntp.c\u0027s locking is reworked, we can remove most\nof the xtime_lock usage in timekeeping.c\n\nThe remaining xtime_lock presence is really for jiffies access\nand the global load calculation.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "bd3312681f69207a40431981c1bce1afdc9b7975",
      "tree": "ad95aba265a7e6033e81cbc9b3054fac176ab6ce",
      "parents": [
        "ea7cf49a7633c2b70125f59b4e3553d9181cb15d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 13:48:36 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:25 2012 -0800"
      },
      "message": "ntp: Add ntp_lock to replace xtime_locking\n\nUse a ntp_lock spin lock to replace xtime_lock locking in ntp.c\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "ea7cf49a7633c2b70125f59b4e3553d9181cb15d",
      "tree": "877bca59752e387e93fc030079afc28515c86edf",
      "parents": [
        "8357929e6ae3661d5a3a7378a717f29873ea18c6"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 13:18:07 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:23 2012 -0800"
      },
      "message": "ntp: Access tick_length variable via ntp_tick_length()\n\nCurrently the NTP managed tick_length value is accessed globally,\nin preparations for locking cleanups, make sure it is accessed via\na function and mark it as static.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "8357929e6ae3661d5a3a7378a717f29873ea18c6",
      "tree": "49cee3ead7619a7a7a8ae2dd01c4a8b1f9e8add9",
      "parents": [
        "70471f2f061d59375e959b4e7d47ee62121babb1"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 13:06:21 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:20 2012 -0800"
      },
      "message": "ntp: Cleanup timex.h\n\nMove ntp_sycned to ntp.c and mark time_status as static.\nAlso yank function declaration for non-existant function.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "70471f2f061d59375e959b4e7d47ee62121babb1",
      "tree": "f2799ccaaed2d976748d6ecd8708c0886c142bf5",
      "parents": [
        "8fcce546be16130865550136831f71097d7fc228"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 12:48:10 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:18 2012 -0800"
      },
      "message": "time: Add timekeeper lock\n\nNow that all the timekeeping variables are stored in\nthe timekeeper structure, add a new lock to protect the\nstructure.\n\nFor now, this lock nests under the xtime_lock for writes.\n\nFor readers, we don\u0027t need to take xtime_lock anymore.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "8fcce546be16130865550136831f71097d7fc228",
      "tree": "a7670612d8196da348842c7c8d83336aa7922e90",
      "parents": [
        "01f71b47e08f2a062c4e77c94dfa9a7e0ae65fcb"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 11:46:39 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:16 2012 -0800"
      },
      "message": "time: Cleanup global variables and move them to the top\n\nMove global xtime_lock and timekeeping_suspended values up\nto the top of timekeeping.c\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "01f71b47e08f2a062c4e77c94dfa9a7e0ae65fcb",
      "tree": "bad9a642d8f55def709d71ecc9affe78ecc59e42",
      "parents": [
        "8ff2cb92dd1afcf23e7b5287c43a900b16f40bad"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 11:43:49 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:14 2012 -0800"
      },
      "message": "time: Move raw_time into timekeeper structure\n\nIn preparation for locking cleanups, move raw_time into\ntimekeeper structure.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "8ff2cb92dd1afcf23e7b5287c43a900b16f40bad",
      "tree": "52c3e19533e4f44a491603f5842595c4e2630da0",
      "parents": [
        "d9f7217aac6833cc634741f2f771a87fd1518fee"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 11:40:54 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:12 2012 -0800"
      },
      "message": "time: Move xtime into timekeeeper structure\n\nIn preparation for locking cleanups, move xtime into\ntimekeeper structure.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "d9f7217aac6833cc634741f2f771a87fd1518fee",
      "tree": "284a9a1597ec2166a0d2b43d108f1262be1f6b88",
      "parents": [
        "00c5fb774e3fa8c9d082c62eac7e3d178c006f56"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 11:29:32 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:09 2012 -0800"
      },
      "message": "time: Move wall_to_monotonic into the timekeeper structure\n\nIn preparation for locking cleanups, move wall_to_monotonic\ninto the timekeeper structure.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "00c5fb774e3fa8c9d082c62eac7e3d178c006f56",
      "tree": "986ae7cd7c10f7668d2c140093ebbc1591999ae1",
      "parents": [
        "a99cbf6b43a7b3b15f6139b2d9ac4ecceccd3c99"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 14 11:23:15 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jan 26 19:44:07 2012 -0800"
      },
      "message": "time: Move total_sleep_time into the timekeeper structure\n\nMove total_sleep_time into the timekeeper structure in preparation\nfor locking cleanups\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "98793265b429a3f0b3f1750e74d67cd4d740d162",
      "tree": "b0bd717673f0c21845cf053f3fb6b75d42530af5",
      "parents": [
        "b4a133da2eaccb844a7beaef16ffd9c76a0d21d3",
        "bd1b2a555952d959f47169056fca05acf7eff81f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jan 08 13:21:22 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (53 commits)\n  Kconfig: acpi: Fix typo in comment.\n  misc latin1 to utf8 conversions\n  devres: Fix a typo in devm_kfree comment\n  btrfs: free-space-cache.c: remove extra semicolon.\n  fat: Spelling s/obsolate/obsolete/g\n  SCSI, pmcraid: Fix spelling error in a pmcraid_err() call\n  tools/power turbostat: update fields in manpage\n  mac80211: drop spelling fix\n  types.h: fix comment spelling for \u0027architectures\u0027\n  typo fixes: aera -\u003e area, exntension -\u003e extension\n  devices.txt: Fix typo of \u0027VMware\u0027.\n  sis900: Fix enum typo \u0027sis900_rx_bufer_status\u0027\n  decompress_bunzip2: remove invalid vi modeline\n  treewide: Fix comment and string typo \u0027bufer\u0027\n  hyper-v: Update MAINTAINERS\n  treewide: Fix typos in various parts of the kernel, and fix some comments.\n  clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR\n  gpio: Kconfig: drop unknown symbol \u0027CS5535_GPIO\u0027\n  leds: Kconfig: Fix typo \u0027D2NET_V2\u0027\n  sound: Kconfig: drop unknown symbol ARCH_CLPS7500\n  ...\n\nFix up trivial conflicts in arch/powerpc/platforms/40x/Kconfig (some new\nkconfig additions, close to removed commented-out old ones)\n"
    },
    {
      "commit": "7affca3537d74365128e477b40c529d6f2fe86c8",
      "tree": "20be92bd240029182fc89c2c4f25401b7715dcae",
      "parents": [
        "356b95424cfb456e14a59eaa579422ce014c424b",
        "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jan 07 12:03:30 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\n* \u0027driver-core-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (73 commits)\n  arm: fix up some samsung merge sysdev conversion problems\n  firmware: Fix an oops on reading fw_priv-\u003efw in sysfs loading file\n  Drivers:hv: Fix a bug in vmbus_driver_unregister()\n  driver core: remove __must_check from device_create_file\n  debugfs: add missing #ifdef HAS_IOMEM\n  arm: time.h: remove device.h #include\n  driver-core: remove sysdev.h usage.\n  clockevents: remove sysdev.h\n  arm: convert sysdev_class to a regular subsystem\n  arm: leds: convert sysdev_class to a regular subsystem\n  kobject: remove kset_find_obj_hinted()\n  m86k: gpio - convert sysdev_class to a regular subsystem\n  mips: txx9_sram - convert sysdev_class to a regular subsystem\n  mips: 7segled - convert sysdev_class to a regular subsystem\n  sh: dma - convert sysdev_class to a regular subsystem\n  sh: intc - convert sysdev_class to a regular subsystem\n  power: suspend - convert sysdev_class to a regular subsystem\n  power: qe_ic - convert sysdev_class to a regular subsystem\n  power: cmm - convert sysdev_class to a regular subsystem\n  s390: time - convert sysdev_class to a regular subsystem\n  ...\n\nFix up conflicts with \u0027struct sysdev\u0027 removal from various platform\ndrivers that got changed:\n - arch/arm/mach-exynos/cpu.c\n - arch/arm/mach-exynos/irq-eint.c\n - arch/arm/mach-s3c64xx/common.c\n - arch/arm/mach-s3c64xx/cpu.c\n - arch/arm/mach-s5p64x0/cpu.c\n - arch/arm/mach-s5pv210/common.c\n - arch/arm/plat-samsung/include/plat/cpu.h\n - arch/powerpc/kernel/sysfs.c\nand fix up cpu_is_hotpluggable() as per Greg in include/linux/cpu.h\n"
    },
    {
      "commit": "376613e81ddc68f545fd5c87ffc3ad222b7abe5f",
      "tree": "e1cb1cd43d05f57e4584dd5f9ce3eb965d0ddff1",
      "parents": [
        "0db49b72bce26341274b74fd968501489a361ae3",
        "0518469d0a32be1e6dd8850ff274d52d72cdb52d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 13:57:44 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 13:57:44 2012 -0800"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, tsc: Skip TSC synchronization checks for tsc\u003dreliable\n  clocksource: Convert tcb_clksrc to use clocksource_register_hz/khz\n  clocksource: cris: Convert to clocksource_register_khz\n  clocksource: xtensa: Convert to clocksource_register_hz/khz\n  clocksource: um: Convert to clocksource_register_hz/khz\n  clocksource: parisc: Convert to clocksource_register_hz/khz\n  clocksource: m86k: Convert to clocksource_register_hz/khz\n  time: x86: Replace LATCH with PIT_LATCH in i8253 clocksource driver\n  time: x86: Remove CLOCK_TICK_RATE from acpi_pm clocksource driver\n  time: x86: Remove CLOCK_TICK_RATE from mach_timer.h\n  time: x86: Remove CLOCK_TICK_RATE from tsc code\n  time: Fix spelling mistakes in new comments\n  time: fix bogus comment in timekeeping_get_ns_raw\n"
    },
    {
      "commit": "ff4b8a57f0aaa2882d444ca44b2b9b333d22a4df",
      "tree": "d851c923f85566572112d4c0f884cff388a3cc05",
      "parents": [
        "805a6af8dba5dfdd35ec35dc52ec0122400b2610",
        "ea04018e6bc5ddb2f0466c0e5b986bd4901b7e8e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Jan 06 11:42:52 2012 -0800"
      },
      "message": "Merge branch \u0027driver-core-next\u0027 into Linux 3.2\n\nThis resolves the conflict in the arch/arm/mach-s3c64xx/s3c6400.c file,\nand it fixes the build error in the arch/x86/kernel/microcode_core.c\nfile, that the merge did not catch.\n\nThe microcode_core.c patch was provided by Stephen Rothwell\n\u003csfr@canb.auug.org.au\u003e who was invaluable in the merge issues involved\nwith the large sysdev removal process in the driver-core tree.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0db49b72bce26341274b74fd968501489a361ae3",
      "tree": "cdb076827aefb38d719d4c42f8ef291c36072fa8",
      "parents": [
        "35b740e4662ef386f0c60e1b60aaf5b44db9914c",
        "1ac9bc6943edf7d181b4b1cc734981350d4f6bae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 08:33:28 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 08:44:54 2012 -0800"
      },
      "message": "Merge branch \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027sched-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)\n  sched/tracing: Add a new tracepoint for sleeptime\n  sched: Disable scheduler warnings during oopses\n  sched: Fix cgroup movement of waking process\n  sched: Fix cgroup movement of newly created process\n  sched: Fix cgroup movement of forking process\n  sched: Remove cfs bandwidth period check in tg_set_cfs_period()\n  sched: Fix load-balance lock-breaking\n  sched: Replace all_pinned with a generic flags field\n  sched: Only queue remote wakeups when crossing cache boundaries\n  sched: Add missing rcu_dereference() around -\u003ereal_parent usage\n  [S390] fix cputime overflow in uptime_proc_show\n  [S390] cputime: add sparse checking and cleanup\n  sched: Mark parent and real_parent as __rcu\n  sched, nohz: Fix missing RCU read lock\n  sched, nohz: Set the NOHZ_BALANCE_KICK flag for idle load balancer\n  sched, nohz: Fix the idle cpu check in nohz_idle_balance\n  sched: Use jump_labels for sched_feat\n  sched/accounting: Fix parameter passing in task_group_account_field\n  sched/accounting: Fix user/system tick double accounting\n  sched/accounting: Re-use scheduler statistics for the root cgroup\n  ...\n\nFix up conflicts in\n - arch/ia64/include/asm/cputime.h, include/asm-generic/cputime.h\n\tusecs_to_cputime64() vs the sparse cleanups\n - kernel/sched/fair.c, kernel/time/tick-sched.c\n\tscheduler changes in multiple branches\n"
    },
    {
      "commit": "423d091dfe58d3109d84c408810a7cfa82f6f184",
      "tree": "43c4385d1dc7219582f924d42db1f3e203a577bd",
      "parents": [
        "1483b3823542c9721eddf09a077af1e02ac96b50",
        "919b83452b2e7c1dbced0456015508b4b9585db3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 08:02:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 06 08:02:40 2012 -0800"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (64 commits)\n  cpu: Export cpu_up()\n  rcu: Apply ACCESS_ONCE() to rcu_boost() return value\n  Revert \"rcu: Permit rt_mutex_unlock() with irqs disabled\"\n  docs: Additional LWN links to RCU API\n  rcu: Augment rcu_batch_end tracing for idle and callback state\n  rcu: Add rcutorture tests for srcu_read_lock_raw()\n  rcu: Make rcutorture test for hotpluggability before offlining CPUs\n  driver-core/cpu: Expose hotpluggability to the rest of the kernel\n  rcu: Remove redundant rcu_cpu_stall_suppress declaration\n  rcu: Adaptive dyntick-idle preparation\n  rcu: Keep invoking callbacks if CPU otherwise idle\n  rcu: Irq nesting is always 0 on rcu_enter_idle_common\n  rcu: Don\u0027t check irq nesting from rcu idle entry/exit\n  rcu: Permit dyntick-idle with callbacks pending\n  rcu: Document same-context read-side constraints\n  rcu: Identify dyntick-idle CPUs on first force_quiescent_state() pass\n  rcu: Remove dynticks false positives and RCU failures\n  rcu: Reduce latency of rcu_prepare_for_idle()\n  rcu: Eliminate RCU_FAST_NO_HZ grace-period hang\n  rcu: Avoid needlessly IPIing CPUs at GP end\n  ...\n"
    },
    {
      "commit": "3b87487ac5008072f138953b07505a7e3493327f",
      "tree": "b70e9422c1abe7ce0e771a52202572dbb0ee25aa",
      "parents": [
        "995b4103a78b9bef0ff834f9ecac42b2b56e01a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 30 13:24:40 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 30 13:24:40 2011 -0800"
      },
      "message": "Revert \"clockevents: Set noop handler in clockevents_exchange_device()\"\n\nThis reverts commit de28f25e8244c7353abed8de0c7792f5f883588c.\n\nIt results in resume problems for various people. See for example\n\n  http://thread.gmane.org/gmane.linux.kernel/1233033\n  http://thread.gmane.org/gmane.linux.kernel/1233389\n  http://thread.gmane.org/gmane.linux.kernel/1233159\n  http://thread.gmane.org/gmane.linux.kernel/1227868/focus\u003d1230877\n\nand the fedora and ubuntu bug reports\n\n  https://bugzilla.redhat.com/show_bug.cgi?id\u003d767248\n  https://bugs.launchpad.net/ubuntu/+source/linux/+bug/904569\n\nwhich got bisected down to the stable version of this commit.\n\nReported-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\nReported-by: Phil Miller \u003cmille121@illinois.edu\u003e\nReported-by: Philip Langdale \u003cphilipl@overt.org\u003e\nReported-by: Tim Gardner \u003ctim.gardner@canonical.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: stable@kernel.org    # for stable kernels that applied the original\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7239f65cf364180cdb100a4ed211b2a9f9a72119",
      "tree": "a23b2abe177b890303aa02c58ce964eacf2166df",
      "parents": [
        "4a858cfc9af87cc60b3113c3b7b377a4305eac6a"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 21 16:12:37 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 21 16:12:37 2011 -0800"
      },
      "message": "clockevents: remove sysdev.h\n\nThis isn\u0027t needed in the clockevents.c file, and the header file is\ngoing away soon, so just remove the #include\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b1b73d095084e754562961c443aa8f6587a55f8e",
      "tree": "f2927ab364b329175442b6abece86cba3528f969",
      "parents": [
        "c3b79770e51ab1fd4201f3b54edf30113b9ce74f"
      ],
      "author": {
        "name": "Kusanagi Kouichi",
        "email": "slash@ac.auone-net.jp",
        "time": "Mon Dec 19 18:13:19 2011 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 19 11:41:40 2011 +0100"
      },
      "message": "time/clocksource: Fix kernel-doc warnings\n\nFix various KernelDoc build warnings.\n\nSigned-off-by: Kusanagi Kouichi \u003cslash@ac.auone-net.jp\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20111219091320.0D5AF6FC03D@msa105.auone-net.jp\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6a54aebf6978e9f296a4d3da3e40af425163c22e",
      "tree": "8217c7114db02d8b69c22fc44880749426949bc3",
      "parents": [
        "067491b7313c41f49607fce782d29344d1472587",
        "dc47ce90c3a822cd7c9e9339fe4d5f61dcb26b50"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 15 08:21:21 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 15 08:21:30 2011 +0100"
      },
      "message": "Merge commit \u0027v3.2-rc5\u0027 into sched/core\n\nMerge reason: Pick up the latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d369a5d8fc70710236ae2d06a0e42dce483712df",
      "tree": "5f52ec10e01f46e575e358ec21302b3cc56693e2",
      "parents": [
        "15916a123e59b84d2fdfcccac84c99d1777f2a45"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 14 15:28:51 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 14 15:28:51 2011 -0800"
      },
      "message": "clocksource: convert sysdev_class to a regular subsystem\n\nAfter all sysdev classes are ported to regular driver core entities, the\nsysdev implementation will be entirely removed from the kernel.\n\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "1268fbc746ea1cd279886a740dcbad4ba5232225",
      "tree": "dc0ff36b4114992a3f67479e25132f5e99f36b9e",
      "parents": [
        "b58bdccaa8d908e0f71dae396468a0d3f7bb3125"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 17 18:48:14 2011 +0100"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:57 2011 -0800"
      },
      "message": "nohz: Remove tick_nohz_idle_enter_norcu() / tick_nohz_idle_exit_norcu()\n\nThose two APIs were provided to optimize the calls of\ntick_nohz_idle_enter() and rcu_idle_enter() into a single\nirq disabled section. This way no interrupt happening in-between would\nneedlessly process any RCU job.\n\nNow we are talking about an optimization for which benefits\nhave yet to be measured. Let\u0027s start simple and completely decouple\nidle rcu and dyntick idle logics to simplify.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "2bbb6817c0ac1b5f2a68d720f364f98eeb1ac4fd",
      "tree": "05bb5ba54671a8eaeca4fe4406a75e820317e473",
      "parents": [
        "280f06774afedf849f0b34248ed6aff57d0f6908"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Sat Oct 08 16:01:00 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:36 2011 -0800"
      },
      "message": "nohz: Allow rcu extended quiescent state handling seperately from tick stop\n\nIt is assumed that rcu won\u0027t be used once we switch to tickless\nmode and until we restart the tick. However this is not always\ntrue, as in x86-64 where we dereference the idle notifiers after\nthe tick is stopped.\n\nTo prepare for fixing this, add two new APIs:\ntick_nohz_idle_enter_norcu() and tick_nohz_idle_exit_norcu().\n\nIf no use of RCU is made in the idle loop between\ntick_nohz_enter_idle() and tick_nohz_exit_idle() calls, the arch\nmust instead call the new *_norcu() version such that the arch doesn\u0027t\nneed to call rcu_idle_enter() and rcu_idle_exit().\n\nOtherwise the arch must call tick_nohz_enter_idle() and\ntick_nohz_exit_idle() and also call explicitly:\n\n- rcu_idle_enter() after its last use of RCU before the CPU is put\nto sleep.\n- rcu_idle_exit() before the first use of RCU after the CPU is woken\nup.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "280f06774afedf849f0b34248ed6aff57d0f6908",
      "tree": "62ef683226d0569c0e6c3ba34ab2e6d85b2e047f",
      "parents": [
        "867f236bd12f5091df6dc7cc75f94d7fd982d78a"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Oct 07 18:22:06 2011 +0200"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:35 2011 -0800"
      },
      "message": "nohz: Separate out irq exit and idle loop dyntick logic\n\nThe tick_nohz_stop_sched_tick() function, which tries to delay\nthe next timer tick as long as possible, can be called from two\nplaces:\n\n- From the idle loop to start the dytick idle mode\n- From interrupt exit if we have interrupted the dyntick\nidle mode, so that we reprogram the next tick event in\ncase the irq changed some internal state that requires this\naction.\n\nThere are only few minor differences between both that\nare handled by that function, driven by the ts-\u003einidle\ncpu variable and the inidle parameter. The whole guarantees\nthat we only update the dyntick mode on irq exit if we actually\ninterrupted the dyntick idle mode, and that we enter in RCU extended\nquiescent state from idle loop entry only.\n\nSplit this function into:\n\n- tick_nohz_idle_enter(), which sets ts-\u003einidle to 1, enters\ndynticks idle mode unconditionally if it can, and enters into RCU\nextended quiescent state.\n\n- tick_nohz_irq_exit() which only updates the dynticks idle mode\nwhen ts-\u003einidle is set (ie: if tick_nohz_idle_enter() has been called).\n\nTo maintain symmetry, tick_nohz_restart_sched_tick() has been renamed\ninto tick_nohz_idle_exit().\n\nThis simplifies the code and micro-optimize the irq exit path (no need\nfor local_irq_save there). This also prepares for the split between\ndynticks and rcu extended quiescent state logics. We\u0027ll need this split to\nfurther fix illegal uses of RCU in extended quiescent states in the idle\nloop.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Guan Xuetao \u003cgxt@mprc.pku.edu.cn\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "9b2e4f1880b789be1f24f9684f7a54b90310b5c0",
      "tree": "1fa922e0616e298837a7079cb49118188a58186c",
      "parents": [
        "b804cb9e91c6c304959c69d4f9daeef4ffdba71c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paul.mckenney@linaro.org",
        "time": "Fri Sep 30 12:10:22 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sun Dec 11 10:31:24 2011 -0800"
      },
      "message": "rcu: Track idleness independent of idle tasks\n\nEarlier versions of RCU used the scheduling-clock tick to detect idleness\nby checking for the idle task, but handled idleness differently for\nCONFIG_NO_HZ\u003dy.  But there are now a number of uses of RCU read-side\ncritical sections in the idle task, for example, for tracing.  A more\nfine-grained detection of idleness is therefore required.\n\nThis commit presses the old dyntick-idle code into full-time service,\nso that rcu_idle_enter(), previously known as rcu_enter_nohz(), is\nalways invoked at the beginning of an idle loop iteration.  Similarly,\nrcu_idle_exit(), previously known as rcu_exit_nohz(), is always invoked\nat the end of an idle-loop iteration.  This allows the idle task to\nuse RCU everywhere except between consecutive rcu_idle_enter() and\nrcu_idle_exit() calls, in turn allowing architecture maintainers to\nspecify exactly where in the idle loop that RCU may be used.\n\nBecause some of the userspace upcall uses can result in what looks\nto RCU like half of an interrupt, it is not possible to expect that\nthe irq_enter() and irq_exit() hooks will give exact counts.  This\npatch therefore expands the -\u003edynticks_nesting counter to 64 bits\nand uses two separate bitfields to count process/idle transitions\nand interrupt entry/exit transitions.  It is presumed that userspace\nupcalls do not happen in the idle loop or from usermode execution\n(though usermode might do a system call that results in an upcall).\nThe counter is hard-reset on each process/idle transition, which\navoids the interrupt entry/exit error from accumulating.  Overflow\nis avoided by the 64-bitness of the -\u003edyntick_nesting counter.\n\nThis commit also adds warnings if a non-idle task asks RCU to enter\nidle state (and these checks will need some adjustment before applying\nFrederic\u0027s OS-jitter patches (http://lkml.org/lkml/2011/10/7/246).\nIn addition, validation of -\u003edynticks and -\u003edynticks_nesting is added.\n\nSigned-off-by: Paul E. McKenney \u003cpaul.mckenney@linaro.org\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "c9c024b3f3e07d087974db4c0dc46217fff3a6c0",
      "tree": "4dd125eef6c2f332d641876fac0e6f522b1d75c5",
      "parents": [
        "d68fb11c3dae75c8331538dcf083a65e697cc034"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 05 21:20:23 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Dec 06 11:38:32 2011 +0100"
      },
      "message": "alarmtimers: Fix time comparison\n\nThe expiry function compares the timer against current time and does\nnot expire the timer when the expiry time is \u003e\u003d now. That\u0027s wrong. If\nthe timer is set for now, then it must expire.\n\nMake the condition expiry \u003e now for breaking out the loop.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "69e1e811dcc436a6b129dbef273ad9ec22d095ce",
      "tree": "f07179af4989178733727683796927948db9059a",
      "parents": [
        "1c792db7f7957e2e34b9a164f08200e36a25dfd0"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Thu Dec 01 17:07:33 2011 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 06 09:06:32 2011 +0100"
      },
      "message": "sched, nohz: Track nr_busy_cpus in the sched_group_power\n\nIntroduce nr_busy_cpus in the struct sched_group_power [Not in sched_group\nbecause sched groups are duplicated for the SD_OVERLAP scheduler domain]\nand for each cpu that enters and exits idle, this parameter will\nbe updated in each scheduler group of the scheduler domain that this cpu\nbelongs to.\n\nTo avoid the frequent update of this state as the cpu enters\nand exits idle, the update of the stat during idle exit is\ndelayed to the first timer tick that happens after the cpu becomes busy.\nThis is done using NOHZ_IDLE flag in the struct rq\u0027s nohz_flags.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20111202010832.555984323@sbsiddha-desk.sc.intel.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "40c043b077c6e377c8440d71563c055d0c4f0f0a",
      "tree": "e0c1d672a1156d7840d3ef650ba1aa963c68e13a",
      "parents": [
        "f14aa871c7e1e58a01bf33a562ac314fae64517c",
        "de28f25e8244c7353abed8de0c7792f5f883588c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 05 16:53:43 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 05 16:53:43 2011 -0800"
      },
      "message": "Merge branch \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  clockevents: Set noop handler in clockevents_exchange_device()\n  tick-broadcast: Stop active broadcast device when replacing it\n  clocksource: Fix bug with max_deferment margin calculation\n  rtc: Fix some bugs that allowed accumulating time drift in suspend/resume\n  rtc: Disable the alarm in the hardware\n"
    },
    {
      "commit": "0518469d0a32be1e6dd8850ff274d52d72cdb52d",
      "tree": "c13038d099e04208feae565947783cf92ceae9ee",
      "parents": [
        "28a00184be261e3dc152ba0d664a067bbe235b6a",
        "f5a54dd7952e9032785cd1ef0dde72cd61025341"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 05 22:13:49 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 05 22:13:49 2011 +0100"
      },
      "message": "Merge branch \u0027fortglx/3.3/tip/timers/core\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n"
    },
    {
      "commit": "de28f25e8244c7353abed8de0c7792f5f883588c",
      "tree": "03f94969b51c454f5da2b52cc311e510c28c2080",
      "parents": [
        "c1be84309c58b1e7c6d626e28fba41a22b364c3d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 16:02:45 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 16:07:23 2011 +0100"
      },
      "message": "clockevents: Set noop handler in clockevents_exchange_device()\n\nIf a device is shutdown, then there might be a pending interrupt,\nwhich will be processed after we reenable interrupts, which causes the\noriginal handler to be run. If the old handler is the (broadcast)\nperiodic handler the shutdown state might hang the kernel completely.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "c1be84309c58b1e7c6d626e28fba41a22b364c3d",
      "tree": "4d4db4e9ef8ceb5b762d4c2334e68b73858a1b07",
      "parents": [
        "b1f919664d04a8d0ba29cb76673c7ca3325a2006"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 12:34:16 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 02 16:06:54 2011 +0100"
      },
      "message": "tick-broadcast: Stop active broadcast device when replacing it\n\nWhen a better rated broadcast device is installed, then the current\nactive device is not disabled, which results in two running broadcast\ndevices.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@vger.kernel.org\n"
    },
    {
      "commit": "b1f919664d04a8d0ba29cb76673c7ca3325a2006",
      "tree": "eeaafc566a9023a794eaefcda8a5201ba7ffa9bc",
      "parents": [
        "6a8943d9ec2567572fca25cf69ad45844d0141a3"
      ],
      "author": {
        "name": "Yang Honggang (Joseph)",
        "email": "eagle.rtlinux@gmail.com",
        "time": "Thu Dec 01 22:22:41 2011 -0500"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Dec 01 15:50:00 2011 -0800"
      },
      "message": "clocksource: Fix bug with max_deferment margin calculation\n\nIn order to leave a margin of 12.5% we should \u003e\u003e 3 not \u003e\u003e 5.\n\nCC: stable@kernel.org\nSigned-off-by: Yang Honggang (Joseph) \u003ceagle.rtlinux@gmail.com\u003e\n[jstultz: Modified commit subject]\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "a13b032776379fa6e2bfccf798969ca51e5fb052",
      "tree": "02d1d63341f5864c7515809e38845a60793619b4",
      "parents": [
        "babf000e62b812a602657bef68aeef75625206f2"
      ],
      "author": {
        "name": "Paul Bolle",
        "email": "pebolle@tiscali.nl",
        "time": "Thu Nov 24 12:27:26 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Nov 29 11:56:49 2011 +0100"
      },
      "message": "clockevents: drop unknown Kconfig symbol GENERIC_CLOCKEVENTS_MIGR\n\nThere\u0027s no Kconfig symbol GENERIC_CLOCKEVENTS_MIGR, so the check for it\nwill always fail.\n\nSigned-off-by: Paul Bolle \u003cpebolle@tiscali.nl\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "c28800a9c3caaf387d85ac665a25ebe99e480295",
      "tree": "401ba805709a65a9f5c1919b3dc763c70b64b38f",
      "parents": [
        "ce8f55c2a0ff652480c12a4f1f22ff5ce15e3a22",
        "27c9cd7e601632b3794e1c3344d37b86917ffb43"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 28 08:43:52 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 28 08:43:52 2011 -0800"
      },
      "message": "Merge branch \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  hrtimer: Fix extra wakeups from __remove_hrtimer()\n  timekeeping: add arch_offset hook to ktime_get functions\n  clocksource: Avoid selecting mult values that might overflow when adjusted\n  time: Improve documentation of timekeeeping_adjust()\n"
    },
    {
      "commit": "3f86f28ffc298e168692ce88791c1d64a03b655b",
      "tree": "0b0c8fa3e63e1f3e41f5da857f64d5395eb0d100",
      "parents": [
        "c9fad429d438fdd736ac6816b75d16c4cd626acd"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Oct 27 17:41:17 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 21 19:00:55 2011 -0800"
      },
      "message": "time: Fix spelling mistakes in new comments\n\nFixup spelling issues caught by Richard\n\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\nCC: Chen Jie \u003cchenj@lemote.com\u003e\nCC: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "c9fad429d438fdd736ac6816b75d16c4cd626acd",
      "tree": "165c5edface9e59d4634ff2a5d0e6dd135d9532a",
      "parents": [
        "367177e50189ab0a983b52f3d3f7eb2a1927db71"
      ],
      "author": {
        "name": "Dan McGee",
        "email": "dpmcgee@gmail.com",
        "time": "Mon Oct 17 13:58:43 2011 -0500"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Nov 21 19:00:46 2011 -0800"
      },
      "message": "time: fix bogus comment in timekeeping_get_ns_raw\n\nThe whole point of this function is to return a value not touched by\nNTP; unfortunately the comment got copied wholesale without adjustment\nfrom the timekeeping_get_ns function above.\n\nSigned-off-by: Dan McGee \u003cdpmcgee@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "d004e024058a0eaca097513ce62cbcf978913e0a",
      "tree": "94191734e099dd46b8998d813125efaa4a8a37d6",
      "parents": [
        "367177e50189ab0a983b52f3d3f7eb2a1927db71"
      ],
      "author": {
        "name": "Hector Palacios",
        "email": "hector.palacios@digi.com",
        "time": "Mon Nov 14 11:15:25 2011 +0100"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Nov 17 14:57:19 2011 -0800"
      },
      "message": "timekeeping: add arch_offset hook to ktime_get functions\n\nktime_get and ktime_get_ts were calling timekeeping_get_ns()\nbut later they were not calling arch_gettimeoffset() so architectures\nusing this mechanism returned 0 ns when calling these functions.\n\nThis happened for example when running Busybox\u0027s ping which calls\nsyscall(__NR_clock_gettime, CLOCK_MONOTONIC, ts) which eventually\ncalls ktime_get. As a result the returned ping travel time was zero.\n\nCC: stable@kernel.org\nSigned-off-by: Hector Palacios \u003chector.palacios@digi.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "367177e50189ab0a983b52f3d3f7eb2a1927db71",
      "tree": "fed5e93eb35d002e21cb3c2fafbfe38062aaa266",
      "parents": [
        "c2bc11113c50449f23c40b724fe410fc2380a8e9",
        "d65670a78cdbfae94f20a9e05ec705871d7cdf2b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 11 08:10:42 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 11 08:10:42 2011 +0100"
      },
      "message": "Merge branch \u0027formingo/3.2/tip/timers/core\u0027 of git://git.linaro.org/people/jstultz/linux into timers/core\n\nConflicts:\n\tkernel/time/timekeeping.c\n"
    },
    {
      "commit": "d65670a78cdbfae94f20a9e05ec705871d7cdf2b",
      "tree": "3c16dedb75fa5ab6c0fdc072cc8d73df01d43a17",
      "parents": [
        "e35f95b36e43f67a6f806172555a152c11ea0a78"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Oct 31 17:06:35 2011 -0400"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Nov 10 11:27:08 2011 -0800"
      },
      "message": "clocksource: Avoid selecting mult values that might overflow when adjusted\n\nFor some frequencies, the clocks_calc_mult_shift() function will\nunfortunately select mult values very close to 0xffffffff.  This\nhas the potential to overflow when NTP adjusts the clock, adding\nto the mult value.\n\nThis patch adds a clocksource.maxadj value, which provides\nan approximation of an 11% adjustment(NTP limits adjustments to\n500ppm and the tick adjustment is limited to 10%), which could\nbe made to the clocksource.mult value. This is then used to both\ncheck that the current mult value won\u0027t overflow/underflow, as\nwell as warning us if the timekeeping_adjust() code pushes over\nthat 11% boundary.\n\nv2: Fix max_adjustment calculation, and improve WARN_ONCE\nmessages.\n\nv3: Don\u0027t warn before maxadj has actually been set\n\nCC: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nCC: David Daney \u003cddaney.cavm@gmail.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Chen Jie \u003cchenj@lemote.com\u003e\nCC: zhangfx \u003czhangfx@lemote.com\u003e\nCC: stable@kernel.org\nReported-by: Chen Jie \u003cchenj@lemote.com\u003e\nReported-by: zhangfx \u003czhangfx@lemote.com\u003e\nTested-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "6e5fdeedca610df600aabc393c4b1f44b128fe49",
      "tree": "52a34c30bef1501f19c691a759b81b6f2603cd32",
      "parents": [
        "bdfa97bf7263657b83bc5b68567a3a60dde84c5b"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Thu May 26 16:00:52 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:05 2011 -0400"
      },
      "message": "kernel: Fix files explicitly needing EXPORT_SYMBOL infrastructure\n\nThese files were getting \u003clinux/module.h\u003e via an implicit non-obvious\npath, but we want to crush those out of existence since they cost\ntime during compiles of processing thousands of lines of headers\nfor no reason.  Give them the lightweight header that just contains\nthe EXPORT_SYMBOL infrastructure.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "c2bc11113c50449f23c40b724fe410fc2380a8e9",
      "tree": "f5a6a5f9c199d6b3ed7a973dfb7556ad2af2bf5a",
      "parents": [
        "e35f95b36e43f67a6f806172555a152c11ea0a78"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Oct 27 18:12:42 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 28 08:57:38 2011 +0200"
      },
      "message": "time: Improve documentation of timekeeeping_adjust()\n\nAfter getting a number of questions in private emails about the\nmath around admittedly very complex timekeeping_adjust() and\ntimekeeping_big_adjust(), I figure the code needs some better\ncomments.\n\nHopefully the explanations are clear enough and don\u0027t muddy the\nwater any worse.\n\nStill needs documentation for ntp_error, but I couldn\u0027t recall\nexactly the full explanation behind the code that\u0027s there\n(although I do recall once working it out when Roman first\nproposed it). Given a bit more time I can probably work it out,\nbut I don\u0027t want to hold back this documentation until then.\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nCc: Chen Jie \u003cchenj@lemote.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/r/1319764362-32367-1-git-send-email-john.stultz@linaro.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "39adff5f69d6849ca22353a88058c9f8630528c0",
      "tree": "b0c2d2de77ebc5c97fd19c29b81eeb03549553f8",
      "parents": [
        "8a4a8918ed6e4a361f4df19f199bbc2d0a89a46c",
        "e35f95b36e43f67a6f806172555a152c11ea0a78"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:15:03 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 17:15:03 2011 +0200"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (23 commits)\n  time, s390: Get rid of compile warning\n  dw_apb_timer: constify clocksource name\n  time: Cleanup old CONFIG_GENERIC_TIME references that snuck in\n  time: Change jiffies_to_clock_t() argument type to unsigned long\n  alarmtimers: Fix error handling\n  clocksource: Make watchdog reset lockless\n  posix-cpu-timers: Cure SMP accounting oddities\n  s390: Use direct ktime path for s390 clockevent device\n  clockevents: Add direct ktime programming function\n  clockevents: Make minimum delay adjustments configurable\n  nohz: Remove \"Switched to NOHz mode\" debugging messages\n  proc: Consider NO_HZ when printing idle and iowait times\n  nohz: Make idle/iowait counter update conditional\n  nohz: Fix update_ts_time_stat idle accounting\n  cputime: Clean up cputime_to_usecs and usecs_to_cputime macros\n  alarmtimers: Rework RTC device selection using class interface\n  alarmtimers: Add try_to_cancel functionality\n  alarmtimers: Add more refined alarm state tracking\n  alarmtimers: Remove period from alarm structure\n  alarmtimers: Remove interval cap limit hack\n  ...\n"
    },
    {
      "commit": "19b4a8d520a6e0176dd52aaa429261ad4fcaa545",
      "tree": "6dcf5a780718fc50b9cd79cc803daa7c7e080a02",
      "parents": [
        "3cfef9524677a4ecb392d6fbffe6ebce6302f1d4",
        "048b718029033af117870d3da47da12995be14a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:26:53 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 26 16:26:53 2011 +0200"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (45 commits)\n  rcu: Move propagation of -\u003ecompleted from rcu_start_gp() to rcu_report_qs_rsp()\n  rcu: Remove rcu_needs_cpu_flush() to avoid false quiescent states\n  rcu: Wire up RCU_BOOST_PRIO for rcutree\n  rcu: Make rcu_torture_boost() exit loops at end of test\n  rcu: Make rcu_torture_fqs() exit loops at end of test\n  rcu: Permit rt_mutex_unlock() with irqs disabled\n  rcu: Avoid having just-onlined CPU resched itself when RCU is idle\n  rcu: Suppress NMI backtraces when stall ends before dump\n  rcu: Prohibit grace periods during early boot\n  rcu: Simplify unboosting checks\n  rcu: Prevent early boot set_need_resched() from __rcu_pending()\n  rcu: Dump local stack if cannot dump all CPUs\u0027 stacks\n  rcu: Move __rcu_read_unlock()\u0027s barrier() within if-statement\n  rcu: Improve rcu_assign_pointer() and RCU_INIT_POINTER() documentation\n  rcu: Make rcu_assign_pointer() unconditionally insert a memory barrier\n  rcu: Make rcu_implicit_dynticks_qs() locals be correct size\n  rcu: Eliminate in_irq() checks in rcu_enter_nohz()\n  nohz: Remove nohz_cpu_mask\n  rcu: Document interpretation of RCU-lockdep splats\n  rcu: Allow rcutorture\u0027s stat_interval parameter to be changed at runtime\n  ...\n"
    },
    {
      "commit": "fc0763f53e3ff6a6bfa66934662a3446b9ca6f16",
      "tree": "2671d3f6275c9707a620032658ecb05025e4e9fa",
      "parents": [
        "d7bd2d68aa2ee2738a10c8ad9346b805e4ab2e1c"
      ],
      "author": {
        "name": "Shi, Alex",
        "email": "alex.shi@intel.com",
        "time": "Thu Jul 28 14:56:12 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Sep 28 21:38:29 2011 -0700"
      },
      "message": "nohz: Remove nohz_cpu_mask\n\nRCU no longer uses this global variable, nor does anyone else.  This\ncommit therefore removes this variable.  This reduces memory footprint\nand also removes some atomic instructions and memory barriers from\nthe dyntick-idle path.\n\nSigned-off-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "4523f6ada86853750565c68e17126af2e3df9b8a",
      "tree": "cf43d425a52ef79b73abbeff07524b77cee48364",
      "parents": [
        "9fb60336253edf73dedc527b2aa2bf32eae0d6da"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 14 10:54:29 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Sep 14 10:54:29 2011 +0200"
      },
      "message": "alarmtimers: Fix error handling\n\ncommit 8bc0daf (alarmtimers: Rework RTC device selection using class\ninterface) did not implement required error checks. Add them.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "2737c49f29a29f3d3645ba0778aa7a8798f32249",
      "tree": "28a56a7f4b31abe2ef79ff535755677781a70c3a",
      "parents": [
        "ddb6c9b58a19edcfac93ac670b066c836ff729f1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jun 16 16:58:34 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 13 11:12:00 2011 +0200"
      },
      "message": "locking, timer_stats: Annotate table_lock as raw\n\nThe table_lock lock can be taken in atomic context and therefore\ncannot be preempted on -rt - annotate it.\n\nIn mainline this change documents the low level nature of\nthe lock - otherwise there\u0027s no functional difference. Lockdep\nand Sparse checking will work as usual.\n\nReported-by: Andreas Sundebo \u003ckernel@sundebo.dk\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Andreas Sundebo \u003ckernel@sundebo.dk\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9fb60336253edf73dedc527b2aa2bf32eae0d6da",
      "tree": "926cb7ca98eaacea06c8b951ee8b3a1330522c82",
      "parents": [
        "e8abccb719377af63cb0f1fed289db405e3def16"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Sep 12 13:32:23 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Sep 13 09:58:29 2011 +0200"
      },
      "message": "clocksource: Make watchdog reset lockless\n\nKGDB needs to trylock watchdog_lock when trying to reset the\nclocksource watchdog after the system has been stopped to avoid a\npotential deadlock. When the trylock fails TSC usually becomes\nunstable.\n\nWe can be more clever by using an atomic counter and checking it in\nthe clocksource_watchdog callback. We restart the watchdog whenever\nthe counter is \u003e 0 and only decrement the counter when we ran through\na full update cycle.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\nAcked-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/alpine.LFD.2.02.1109121326280.2723@ionos\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "65516f8a7c2028381f0dae4c16ddb621c96158cc",
      "tree": "1f6192832c77e25499331b074398e165c1220197",
      "parents": [
        "d1748302f70be7469809809283fe164156a34231"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Aug 23 15:29:43 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 08 11:10:56 2011 +0200"
      },
      "message": "clockevents: Add direct ktime programming function\n\nThere is at least one architecture (s390) with a sane clockevent device\nthat can be programmed with the equivalent of a ktime. No need to create\na delta against the current time, the ktime can be used directly.\n\nA new clock device function \u0027set_next_ktime\u0027 is introduced that is called\nwith the unmodified ktime for the timer if the clock event device has the \nCLOCK_EVT_FEAT_KTIME bit set.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20110823133142.815350967@de.ibm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "d1748302f70be7469809809283fe164156a34231",
      "tree": "c81137f4126f2fe1451c28441415c1cd0fa0f7cd",
      "parents": [
        "29c158e81c733ac7d6a75c5ee929f34fb9f92983"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Aug 23 15:29:42 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 08 11:10:56 2011 +0200"
      },
      "message": "clockevents: Make minimum delay adjustments configurable\n\nThe automatic increase of the min_delta_ns of a clockevents device\nshould be done in the clockevents code as the minimum delay is an\nattribute of the clockevents device.\n\nIn addition not all architectures want the automatic adjustment, on a\nmassively virtualized system it can happen that the programming of a\nclock event fails several times in a row because the virtual cpu has\nbeen rescheduled quickly enough. In that case the minimum delay will\nerroneously be increased with no way back. The new config symbol\nGENERIC_CLOCKEVENTS_MIN_ADJUST is used to enable the automatic\nadjustment. The config option is selected only for x86.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20110823133142.494157493@de.ibm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "29c158e81c733ac7d6a75c5ee929f34fb9f92983",
      "tree": "ba15b52ae3474f2451b3c2301413da05606ccdaf",
      "parents": [
        "a25cac5198d4ff2842ccca63b423962848ad24b2"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Aug 23 13:20:46 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 08 11:10:55 2011 +0200"
      },
      "message": "nohz: Remove \"Switched to NOHz mode\" debugging messages\n\nWhen performing cpu hotplug tests the kernel printk log buffer gets flooded\nwith pointless \"Switched to NOHz mode...\" messages. Especially when afterwards\nanalyzing a dump this might have removed more interesting stuff out of the\nbuffer.\nAssuming that switching to NOHz mode simply works just remove the printk.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nLink: http://lkml.kernel.org/r/20110823112046.GB2540@osiris.boeblingen.de.ibm.com\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "09a1d34f8535ecf9a347ea76f7597730c2bc0c8d",
      "tree": "5de69591f64e995737a62cf26d8bb3a927b27d79",
      "parents": [
        "6beea0cda8ce71c01354e688e5735c47e331e84f"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Wed Aug 24 09:39:30 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 08 11:10:55 2011 +0200"
      },
      "message": "nohz: Make idle/iowait counter update conditional\n\nget_cpu_{idle,iowait}_time_us update idle/iowait counters\nunconditionally if the given CPU is in the idle loop.\n\nThis doesn\u0027t work well outside of CPU governors which are singletons\nso nobody (except for IRQ) can race with them.\n\nWe will need to use both functions from /proc/stat handler to properly\nhandle nohz idle/iowait times.\n\nMake the update depend on a non NULL last_update_time argument.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nLink: http://lkml.kernel.org/r/11f23179472635ce52e78921d47a20216b872f23.1314172057.git.mhocko@suse.cz\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6beea0cda8ce71c01354e688e5735c47e331e84f",
      "tree": "7556787053d608134184d98413cce744d54507fc",
      "parents": [
        "ef0e0f5ed9bde6d1e3376169785a463ad2160e6d"
      ],
      "author": {
        "name": "Michal Hocko",
        "email": "mhocko@suse.cz",
        "time": "Wed Aug 24 09:37:48 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 08 11:10:55 2011 +0200"
      },
      "message": "nohz: Fix update_ts_time_stat idle accounting\n\nupdate_ts_time_stat currently updates idle time even if we are in\niowait loop at the moment. The only real users of the idle counter\n(via get_cpu_idle_time_us) are CPU governors and they expect to get\ncumulative time for both idle and iowait times.\nThe value (idle_sleeptime) is also printed to userspace by print_cpu\nbut it prints both idle and iowait times so the idle part is misleading.\n\nLet\u0027s clean this up and fix update_ts_time_stat to account both counters\nproperly and update consumers of idle to consider iowait time as well.\nIf we do this we might use get_cpu_{idle,iowait}_time_us from other\ncontexts as well and we will get expected values.\n\nSigned-off-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nLink: http://lkml.kernel.org/r/e9c909c221a8da402c4da07e4cd968c3218f8eb1.1314172057.git.mhocko@suse.cz\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "8bc0dafb5cf38a19484dfb16e2c6d29e85820046",
      "tree": "af2f0000b9cc95567cc4bab5966ef6fd887c6f1f",
      "parents": [
        "9082c465a5403f4a98734193e078552991a2e283"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jul 14 18:35:13 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:30 2011 -0700"
      },
      "message": "alarmtimers: Rework RTC device selection using class interface\n\nThis allows cleaner detection of the RTC device being registered, rather\nthen probing any time someone calls alarmtimer_get_rtcdev.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "9082c465a5403f4a98734193e078552991a2e283",
      "tree": "387e564f326488abe9ee84b0c723294ea573de1e",
      "parents": [
        "a28cde81ab13cc251748a4c4ef06883dd09a10ea"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 12:41:36 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:29 2011 -0700"
      },
      "message": "alarmtimers: Add try_to_cancel functionality\n\nThere\u0027s a number of edge cases when cancelling a alarm, so\nto be sure we accurately do so, introduce try_to_cancel, which\nreturns proper failure errors if it cannot. Also modify cancel\nto spin until the alarm is properly disabled.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "a28cde81ab13cc251748a4c4ef06883dd09a10ea",
      "tree": "b38ce180912957731cfe736d1d3f978342d099e1",
      "parents": [
        "9e26476243e438f4534a562660c1296a15a9e202"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 12:30:21 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:27 2011 -0700"
      },
      "message": "alarmtimers: Add more refined alarm state tracking\n\nIn order to allow for functionality like try_to_cancel, add\nmore refined  state tracking (similar to hrtimers).\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "9e26476243e438f4534a562660c1296a15a9e202",
      "tree": "d70609d91f0aab85ad9768500b7e57623d9e3eae",
      "parents": [
        "d77e23accec56bf2ba12187fe77a2f500a511282"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 12:09:24 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:26 2011 -0700"
      },
      "message": "alarmtimers: Remove period from alarm structure\n\nNow that periodic alarmtimers are managed by the handler function,\nremove the period value from the alarm structure and let the handlers\nmanage the interval on their own.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "d77e23accec56bf2ba12187fe77a2f500a511282",
      "tree": "f6d875739df0e4c9b48628ce2eaad8581eb736b1",
      "parents": [
        "dce75a8c71819ed4c7efdcd53c9b6f6356dc8cb5"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 11:40:23 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:24 2011 -0700"
      },
      "message": "alarmtimers: Remove interval cap limit hack\n\nNow that the alarmtimers code has been refactored, the interval\ncap limit can be removed.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "dce75a8c71819ed4c7efdcd53c9b6f6356dc8cb5",
      "tree": "76d25888bb83814fc1f9d5f8838483730ca59882",
      "parents": [
        "54da23b720d5d612f8f1669f9ed3744008fb7382"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 11:31:03 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:23 2011 -0700"
      },
      "message": "alarmtimers: Add alarm_forward functionality\n\nIn order to avoid wasting time expiring and re-adding very high freq\nperiodic alarmtimers, introduce alarm_forward() which is similar to\nhrtimer_forward and moves the timer to the next future expiration time\nand returns the number of overruns.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "54da23b720d5d612f8f1669f9ed3744008fb7382",
      "tree": "52bfd90a34c4ad9de858ecb30d212104d0176845",
      "parents": [
        "4b41308d2d0398409620613c7eaaaf52c738b042"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 11:08:07 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:22 2011 -0700"
      },
      "message": "alarmtimers: Push rearming peroidic timers down into alamrtimer handler\n\nThis patch pushes the periodic alarmtimer re-arming down into the alarmtimer\nhandler, mimicking how hrtimers handle this.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "4b41308d2d0398409620613c7eaaaf52c738b042",
      "tree": "47a6becae6272eb9c06e57a0a9d1698b8f1811c8",
      "parents": [
        "6af7e471e5a7746b8024d70b4363d3dfe41d36b8"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 10:37:59 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 14:55:20 2011 -0700"
      },
      "message": "alarmtimers: Change alarmtimer functions to return alarmtimer_restart values\n\nIn order to properly fix the denial of service issue with high freq\nperiodic alarm timers, we need to push the re-arming logic into the\nalarm timer handler, much as the hrtimer code does.\n\nThis patch introduces alarmtimer_restart enum and changes the\nalarmtimer handler declarations to use it as a return value. Further,\nto ease following changes, it extends the alarmtimer handler functions\nto also take the time at expiration. No logic is yet modified.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "6af7e471e5a7746b8024d70b4363d3dfe41d36b8",
      "tree": "33b1af81dfadefcc367307939acbb0d28c07c7c1",
      "parents": [
        "ea7802f630d356acaf66b3c0b28c00a945fc35dc"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 10:26:09 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 10:26:09 2011 -0700"
      },
      "message": "alarmtimers: Avoid possible denial of service with high freq periodic timers\n\nIts possible to jam up the alarm timers by setting very small interval\ntimers, which will cause the alarmtimer subsystem to spend all of its time\nfiring and restarting timers. This can effectivly lock up a box.\n\nA deeper fix is needed, closely mimicking the hrtimer code, but for now\njust cap the interval to 100us to avoid userland hanging the system.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: stable@kernel.org\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "ea7802f630d356acaf66b3c0b28c00a945fc35dc",
      "tree": "9eb23fe08c124bfab7af964c3a4c614ac61c93aa",
      "parents": [
        "971c90bfa2f0b4fe52d6d9002178d547706f1343"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Aug 04 07:51:56 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 07:10:09 2011 -0700"
      },
      "message": "alarmtimers: Memset itimerspec passed into alarm_timer_get\n\nFollowing common_timer_get, zero out the itimerspec passed in.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: stable@kernel.org\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "971c90bfa2f0b4fe52d6d9002178d547706f1343",
      "tree": "f3075f495780a0ffc5d433ae7cb93aca8a40cf8e",
      "parents": [
        "322a8b034003c0d46d39af85bf24fee27b902f48"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Aug 04 07:25:35 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Aug 10 07:09:53 2011 -0700"
      },
      "message": "alarmtimers: Avoid possible null pointer traversal\n\nWe don\u0027t check if old_setting is non null before assigning it, so\ncorrect this.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: stable@kernel.org\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "112ec469663e09ffc815761254b52f3ca787ce83",
      "tree": "18a7d2300dc10b7c2c994107681dffc927589701",
      "parents": [
        "a99a7d1436f9375662f35ccac8f1a1e1b0302a11",
        "cbaa51524b3224813814607177a00c350ee35d12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:52:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 22 16:52:18 2011 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  time: Fix stupid KERN_WARN compile issue\n  rtc: Avoid accumulating time drift in suspend/resume\n  time: Avoid accumulating time drift in suspend/resume\n  time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\n"
    },
    {
      "commit": "cbaa51524b3224813814607177a00c350ee35d12",
      "tree": "34f0fabff444e5dde2ee2b92d841abb97daf41b1",
      "parents": [
        "3dcad5ff08f65ae30832220a0e0ee2eac3502a1a"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Jul 20 15:42:55 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Jul 20 15:42:55 2011 -0700"
      },
      "message": "time: Fix stupid KERN_WARN compile issue\n\nTerribly embarassing. Don\u0027t know how I committed this, but its\nKERN_WARNING not KERN_WARN.\n\nThis fixes the following compile error:\nkernel/time/timekeeping.c: In function ‘__timekeeping_inject_sleeptime’:\nkernel/time/timekeeping.c:608: error: ‘KERN_WARN’ undeclared (first use in this function)\nkernel/time/timekeeping.c:608: error: (Each undeclared identifier is reported only once\nkernel/time/timekeeping.c:608: error: for each function it appears in.)\nkernel/time/timekeeping.c:608: error: expected ‘)’ before string constant\nmake[2]: *** [kernel/time/timekeeping.o] Error 1\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "cb33217b1b2523895eb328a0b13fb3b1c4000969",
      "tree": "f3ce72c0f6cb9a23411c2639acf300f1f453a3c0",
      "parents": [
        "cb5de2f8d0306be38f9b377b8a5c56acca7dbc3d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue May 31 22:53:23 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jun 21 16:55:37 2011 -0700"
      },
      "message": "time: Avoid accumulating time drift in suspend/resume\n\nBecause the read_persistent_clock interface is usually backed by\nonly a second granular interface, each time we read from the persistent\nclock for suspend/resume, we introduce a half second (on average) of error.\n\nIn order to avoid this error accumulating as the system is suspended\nover and over, this patch measures the time delta between the persistent\nclock and the system CLOCK_REALTIME.\n\nIf the delta is less then 2 seconds from the last suspend, we compensate\nby using the previous time delta (keeping it close). If it is larger\nthen 2 seconds, we assume the clock was set or has been changed, so we\ndo no correction and update the delta.\n\nNote: If NTP is running, ths could seem to \"fight\" with the NTP corrected\ntime, where as if the system time was off by 1 second, and NTP slewed the\nvalue in, a suspend/resume cycle could undo this correction, by trying to\nrestore the previous offset from the persistent clock.  However, without\nthis patch, since each read could cause almost a full second worth of\nerror, its possible to get almost 2 seconds of error just from the\nsuspend/resume cycle alone, so this about equal to any offset added by\nthe compensation.\n\nFurther on systems that suspend/resume frequently, this should keep time\ncloser then NTP could compensate for if the errors were allowed to\naccumulate.\n\nCredits to Arve Hjønnevåg for suggesting this solution.\n\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "cb5de2f8d0306be38f9b377b8a5c56acca7dbc3d",
      "tree": "9edd5bd1fd1e41be44026a37b2184200f6f90d50",
      "parents": [
        "e08f6d4131ab964420f0bcabecc68d75fb49df79"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Jun 01 18:18:09 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jun 21 16:55:36 2011 -0700"
      },
      "message": "time: Catch invalid timespec sleep values in __timekeeping_inject_sleeptime\n\nArve suggested making sure we catch possible negative sleep time\nintervals that could be passed into timekeeping_inject_sleeptime.\n\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "1c6b39ad3f01514fd8dd84b5b412bafb75c19388",
      "tree": "bd31cf5d3e67acc9ef23c97ddd92c961b73f40c7",
      "parents": [
        "c008ba58af24dc5d0d8e9fe6e59d876910254761"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jun 16 18:47:37 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jun 21 16:32:28 2011 -0700"
      },
      "message": "alarmtimers: Return -ENOTSUPP if no RTC device is present\n\nToralf Förster and Richard Weinberger noted that if there is\nno RTC device, the alarm timers core prints out an annoying\n\"ALARM timers will not wake from suspend\" message.\n\nThis warning has been removed in a previous patch, however\nthe issue still remains:  The original idea was to support\nalarm timers even if there was no rtc device, as long as the\nsystem didn\u0027t go into suspend.\n\nHowever, after further consideration, communicating to the application\nthat alarmtimers are not fully functional seems like the better\nsolution.\n\nSo this patch makes it so we return -ENOTSUPP to any posix _ALARM\nclockid calls if there is no backing RTC device on the system.\n\nFurther this changes the behavior where when there is no rtc device\nwe will check for one on clock_getres, clock_gettime, timer_create,\nand timer_nsleep instead of on suspend.\n\nCC: Toralf Förster \u003ctoralf.foerster@gmx.de\u003e\nCC: Richard Weinberger \u003crichard@nod.at\nCC: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReported-by: Toralf Förster \u003ctoralf.foerster@gmx.de\u003e\nReported by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "c008ba58af24dc5d0d8e9fe6e59d876910254761",
      "tree": "0e718ce49992b6a7dfde619cd6ebf05afe06ae12",
      "parents": [
        "e08f6d4131ab964420f0bcabecc68d75fb49df79"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Jun 16 18:27:09 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jun 21 15:38:33 2011 -0700"
      },
      "message": "alarmtimers: Handle late rtc module loading\n\nThe alarmtimers code currently picks a rtc device to use at\nlate init time. However, if your rtc driver is loaded as a module,\nit may be registered after the alarmtimers late init code, leaving\nthe alarmtimers nonfunctional.\n\nThis patch moves the the rtcdevice selection to when we actually try\nto use it, allowing us to make use of rtc modules that may have been\nloaded at any point since bootup.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Meelis Roos \u003cmroos@ut.ee\u003e\nReported-by: Meelis Roos \u003cmroos@ut.ee\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "b5199515c25cca622495eb9c6a8a1d275e775088",
      "tree": "250fc4f3d02c58eddf770e9d040edeafd0012e76",
      "parents": [
        "1123d93963cbd2546449d4d9f0c568e323cb0ac6"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 16 16:22:08 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Jun 16 19:30:53 2011 +0200"
      },
      "message": "clocksource: Make watchdog robust vs. interruption\n\nThe clocksource watchdog code is interruptible and it has been\nobserved that this can trigger false positives which disable the TSC.\n\nThe reason is that an interrupt storm or a long running interrupt\nhandler between the read of the watchdog source and the read of the\nTSC brings the two far enough apart that the delta is larger than the\nunstable treshold. Move both reads into a short interrupt disabled\nregion to avoid that.\n\nReported-and-tested-by: Vernon Mauery \u003cvernux@us.ibm.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "1b054b67d3bfc6dca9f634c104780f3f24ff3eec",
      "tree": "af50fb7333001692879c18474e84ac2736f984d1",
      "parents": [
        "1fa7b6a29c61358cc2ca6f64cef4aa0e1a7ca74c"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 11:13:33 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jun 03 11:13:33 2011 +0200"
      },
      "message": "clockevents: Handle empty cpumask gracefully\n\nFor UP it\u0027s stupid to request an initialized cpumask for the clock\nevent devices. Though we need the mask set even on UP to avoid a\nhorrible ifdeffery especially in the broadcast code.\n\nFor SMP we can at least try to survive with a warning and set the\ncpumask of the cpu we\u0027re running on. That gives a decent chance to\nbring the machine up and retrieve the debug info.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Linus Walleij \u003clinus.walleij@linaro.org\nCc: Lee Jones \u003clee.jones@linaro.org\u003e\nCc: Russell King - ARM Linux \u003clinux@arm.linux.org.uk\u003e\nCc: Stephen Boyd \u003csboyd@codeaurora.org\u003e\n"
    },
    {
      "commit": "ab8177bc53e8ae3a3ba6d200ce2c2dae263f7ee5",
      "tree": "c8b370496497b4f96d6a17da906bdd9314e9a090",
      "parents": [
        "f24444b01bf6c51c300fd3ffc73423383d747882"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 13:05:15 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon May 23 13:59:54 2011 +0200"
      },
      "message": "hrtimers: Avoid touching inactive timer bases\n\nInstead of iterating over all possible timer bases avoid it by marking\nthe active bases in the cpu base.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\n"
    },
    {
      "commit": "250f972d85effad5b6e10da4bbd877e6a4b503b6",
      "tree": "007393a6fc6439af7e0121dd99a6f9f9fb8405bc",
      "parents": [
        "7372b0b122af0f6675f3ab65bfd91c8a438e0480",
        "bbe7b8bef48c567f5ff3f6041c1fb011292e8f12"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 20:06:24 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 20:08:05 2011 +0200"
      },
      "message": "Merge branch \u0027timers/urgent\u0027 into timers/core\n\nReason: Get upstream fixes and kfree_rcu which is necessary for a\nfollow up patch.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "c0e299b1a91cbdb21ae08e382a4176200398bc36",
      "tree": "096a6b082fcf1bd816d78654057d11af823361c5",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 10:50:52 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri May 20 10:50:52 2011 +0200"
      },
      "message": "clockevents/source: Use u64 to make 32bit happy\n\nunsigned long is not 64bit on 32bit machine.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "78c4def67e8eebe602655a3dec9aa08f0e2f7c4b",
      "tree": "8c0c756bbff7325f5c2a773f8cc64d8390ebe5b5",
      "parents": [
        "7e6628e4bcb3b3546c625ec63ca724f28ab14f0c",
        "942c3c5c329274fa6de5998cb911cf3d0a42d0b1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:45:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:45:08 2011 -0700"
      },
      "message": "Merge branch \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-core-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  hrtimer: Make lookup table const\n  RTC: Disable CONFIG_RTC_CLASS from being built as a module\n  timers: Fix alarmtimer build issues when CONFIG_RTC_CLASS\u003dn\n  timers: Remove delayed irqwork from alarmtimers implementation\n  timers: Improve alarmtimer comments and minor fixes\n  timers: Posix interface for alarm-timers\n  timers: Introduce in-kernel alarm-timer interface\n  timers: Add rb_init_node() to allow for stack allocated rb nodes\n  time: Add timekeeping_inject_sleeptime\n"
    },
    {
      "commit": "7e6628e4bcb3b3546c625ec63ca724f28ab14f0c",
      "tree": "111a94cefa9d800ec5c5e59520f4b5d1880965d0",
      "parents": [
        "0f1bdc1815c4cb29b3cd71a7091b478e426faa0b",
        "ab0e08f15d23628dd8d50bf6ce1a935a8840c7dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:44:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 17:44:40 2011 -0700"
      },
      "message": "Merge branch \u0027timers-clockevents-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-clockevents-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: hpet: Cleanup the clockevents init and register code\n  x86: Convert PIT to clockevents_config_and_register()\n  clockevents: Provide interface to reconfigure an active clock event device\n  clockevents: Provide combined configure and register function\n  clockevents: Restructure clock_event_device members\n  clocksource: Get rid of the hardcoded 5 seconds sleep time limit\n  clocksource: Restructure clocksource struct members\n"
    },
    {
      "commit": "80b816b736cfa5b9582279127099b20a479ab7d9",
      "tree": "94a2963c05e8e24d6153a0a2fae2f43fe05605bc",
      "parents": [
        "57f0fcbe1dea8a36c9d1673086326059991c5f81"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:42 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:16 2011 +0200"
      },
      "message": "clockevents: Provide interface to reconfigure an active clock event device\n\nSome ARM SoCs have clock event devices which have their frequency\nmodified due to frequency scaling. Provide an interface which allows\nto reconfigure an active device. After reconfiguration reprogram the\ncurrent pending event.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: LAK \u003clinux-arm-kernel@lists.infradead.org\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nAcked-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.437459958%40linutronix.de%3E\n"
    },
    {
      "commit": "57f0fcbe1dea8a36c9d1673086326059991c5f81",
      "tree": "c56c00307052034a64d2577819fdf21271446ebe",
      "parents": [
        "847b2f42be203f3cff7f243fdd3ee50c1e06c882"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:41 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:15 2011 +0200"
      },
      "message": "clockevents: Provide combined configure and register function\n\nAll clockevent devices have the same open coded initialization\nfunctions. Provide an interface which does all necessary\ninitialization in the core code.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.331975870%40linutronix.de%3E\n"
    },
    {
      "commit": "724ed53e8ac2c5278af8955673049714c1073464",
      "tree": "51762a734e564fb973758014997ee99406693541",
      "parents": [
        "369db4c9524b7487faf1ff89646eee396c1363e1"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed May 18 21:33:40 2011 +0000"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu May 19 14:24:15 2011 +0200"
      },
      "message": "clocksource: Get rid of the hardcoded 5 seconds sleep time limit\n\nSlow clocksources can have a way longer sleep time than 5 seconds and\neven fast ones can easily cope with 600 seconds and still maintain\nproper accuracy.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohn.stultz@linaro.org\u003e\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/r/%3C20110518210136.109811585%40linutronix.de%3E\n"
    }
  ],
  "next": "07f4beb0b5bbfaf36a64aa00d59e670ec578a95a"
}
