)]}'
{
  "log": [
    {
      "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": "6a8943d9ec2567572fca25cf69ad45844d0141a3",
      "tree": "d14768e0747bd4b44fb00131c9c79713033c51c5",
      "parents": [
        "c0afabd3d553c521e003779c127143ffde55a16f"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Nov 22 18:24:51 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Nov 22 19:25:56 2011 -0800"
      },
      "message": "rtc: Fix some bugs that allowed accumulating time drift in suspend/resume\n\nThe current code checks if abs(delta_delta.tv_sec) is greater or\nequal to two before it discards the old delta value, but this can\ntrigger at close to -1 seconds since -1.000000001 seconds is stored\nas tv_sec -2 and tv_nsec 999999999 in a normalized timespec.\n\nrtc_resume had an early return check if the rtc value had not changed\nsince rtc_suspend. This effectivly stops time for the duration of the\nshort sleep. Check if sleep_time is positive after all the adjustments\nhave been applied instead since this allows the old_system adjustment\nin rtc_suspend to have an effect even for short sleep cycles.\n\nCC: stable@kernel.org\nSigned-off-by: Arve Hjønnevåg \u003carve@android.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "6d03d06db8881f4f9da87d5c77234b98c40a30e9",
      "tree": "11af7b954ec046f5de4a72cce2935a1e1aea06dc",
      "parents": [
        "f919b9235f930e649b374a50009c6c268bd9a073"
      ],
      "author": {
        "name": "Jonathan Cameron",
        "email": "jic23@cam.ac.uk",
        "time": "Wed Nov 02 13:37:49 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 02 16:06:58 2011 -0700"
      },
      "message": "drivers/rtc/class.c: convert idr to ida and use ida_simple_get()\n\nThis is the one use of an ida that doesn\u0027t retry on receiving -EAGAIN.\nI\u0027m assuming do so will cause no harm and may help on a rare occasion.\n\nSigned-off-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3dcad5ff08f65ae30832220a0e0ee2eac3502a1a",
      "tree": "babf46c6533cf0576fa6b46992506250298cc73f",
      "parents": [
        "cb33217b1b2523895eb328a0b13fb3b1c4000969"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri May 27 11:33:18 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Jun 21 16:55:39 2011 -0700"
      },
      "message": "rtc: Avoid accumulating time drift in suspend/resume\n\nBecause the RTC interface is only a second granular interface,\neach time we read from the RTC for suspend/resume, we introduce a\nhalf 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 RTC\nand 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 RTC. However, without this patch,\nsince each read could cause almost a full second worth of error, its\npossible to get almost 2 seconds of error just from the suspend/resume\ncycle alone, so this about equal to any offset added by the 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\nThis patch also improves some of the variable names and adds more clear\ncomments.\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": "304529b1b6f8612ccbb4582e997051b48b94f4a4",
      "tree": "025b53989f39b463621e9a9eb8e903dc54dd87e1",
      "parents": [
        "4175242c0dc1d92e821d2b45bc8fe06d4650a7b5"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Apr 01 14:32:09 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Apr 26 14:01:41 2011 -0700"
      },
      "message": "time: Add timekeeping_inject_sleeptime\n\nSome platforms cannot implement read_persistent_clock, as\ntheir RTC devices are only accessible when interrupts are enabled.\nThis keeps them from being used by the timekeeping code on resume\nto measure the time in suspend.\n\nThe RTC layer tries to work around this, by calling do_settimeofday\non resume after irqs are reenabled to set the time properly. However,\nthis only corrects CLOCK_REALTIME, and does not properly adjust\nthe sleep time value. This causes btime in /proc/stat to be incorrect\nas well as making the new CLOCK_BOTTTIME inaccurate.\n\nThis patch resolves the issue by introducing a new timekeeping hook\nto allow the RTC layer to inject the sleep time on resume.\n\nThe code also checks to make sure that read_persistent_clock is\nnonfunctional before setting the sleep time, so that should the RTC\u0027s\nHCTOSYS option be configured in on a system that does support\nread_persistent_clock we will not increase the total_sleep_time twice.\n\nCC: Arve Hjønnevåg \u003carve@android.com\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "f6d5b33125c4fa63c16f7f54c533338c9695d82c",
      "tree": "2aabfeb48759bf6122c100f6977c8d7ff80e0c0d",
      "parents": [
        "0ce790e7d736cedc563e1fb4e998babf5a4dbc3d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Mar 29 18:00:27 2011 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Tue Mar 29 18:44:05 2011 -0700"
      },
      "message": "RTC: Fix early irqs caused by calling rtc_set_alarm too early\n\nWhen we register an rtc device at boot, we read the alarm value\nin hardware and set the rtc device\u0027s aie_timer to that value.\n\nThe initial method to do this was to simply call rtc_set_alarm()\nwith the value read from hardware. However, this may cause problems\nas rtc_set_alarm may enable interupts, and the RTC alarm might fire,\nwhich can cause invalid pointer dereferencing since the RTC registration\nis not complete.\n\nThis patch solves the issue by initializing the rtc_device.aie_timer\ny hand via rtc_initialize_alarm(). This avoids any calls to the RTC\nhardware which might enable interrupts too early.\n\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nReported-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nTested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "f44f7f96a20af16f6f12e1c995576d6becf5f57b",
      "tree": "bbe0b8bec5defed39fade13c79a1cb19b74fb6e3",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Mon Feb 21 22:58:51 2011 -0800"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Wed Mar 09 11:22:50 2011 -0800"
      },
      "message": "RTC: Initialize kernel state from RTC\n\nMark Brown pointed out a corner case: that RTC alarms should\nbe allowed to be persistent across reboots if the hardware\nsupported it.\n\nThe rework of the generic layer to virtualize the RTC alarm\nvirtualized much of the alarm handling, and removed the\ncode used to read the alarm time from the hardware.\n\nMark noted if we want the alarm to be persistent across\nreboots, we need to re-read the alarm value into the\nvirtualized generic layer at boot up, so that the generic\nlayer properly exposes that value.\n\nThis patch restores much of the earlier removed\nrtc_read_alarm code and wires it in so that we\nset the kernel\u0027s alarm value to what we find in the\nhardware at boot time.\n\nNOTE: Not all hardware supports persistent RTC alarm state across\nsystem reset. rtc-cmos for example will keep the alarm time, but\ndisables the AIE mode irq. Applications should not expect the RTC\nalarm to be valid after a system reset. We will preserve what\nwe can, to represent the hardware state at boot, but its not\nguarenteed.\n\nFurther, in the future, with multiplexed RTC alarms, the\nsoonest alarm to fire may not be the one set via the /dev/rt\nioctls. So an application may set the alarm with RTC_ALM_SET,\nbut after a reset find that RTC_ALM_READ returns an earlier\ntime. Again, we preserve what we can, but applications should\nnot expect the RTC alarm state to persist across a system reset.\n\nBig thanks to Mark for pointing out the issue!\nThanks also to Marcelo for helping think through the solution.\n\nCC: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nCC: Marcelo Roberto Jimenez \u003cmroberto@cpti.cetuc.puc-rio.br\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCC: rtc-linux@googlegroups.com\nReported-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "83a06bf50bdf2074b9404951ff60e142d159d93b",
      "tree": "ebb70cdc221d06529fd327e284f1b9191939f6aa",
      "parents": [
        "9118626a30f8a3f58674623bebd3c34961e558af"
      ],
      "author": {
        "name": "Marcelo Roberto Jimenez",
        "email": "mroberto@cpti.cetuc.puc-rio.br",
        "time": "Wed Feb 02 16:04:02 2011 -0200"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Feb 03 12:59:50 2011 -0800"
      },
      "message": "RTC: Prevents a division by zero in kernel code.\n\nThis patch prevents a user space program from calling the RTC_IRQP_SET\nioctl with a negative value of frequency. Also, if this call is make\nwith a zero value of frequency, there would be a division by zero in the\nkernel code.\n\n[jstultz: Also initialize irq_freq to 1 to catch other divbyzero issues]\n\nCC: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Marcelo Roberto Jimenez \u003cmroberto@cpti.cetuc.puc-rio.br\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n"
    },
    {
      "commit": "5943a268002fce97885f2ca08827ff1b0312068c",
      "tree": "5e304e79b68263e799224ebb1a08ead474ab299b",
      "parents": [
        "42776163e13a56ea3096edff7a5df95408e80eb4",
        "96c8f06a0fb359a9a89701a7afab6d837e466ab0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 11 11:06:41 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 11 11:06:41 2011 -0800"
      },
      "message": "Merge branch \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rtc: Namespace fixup\n  RTC: Remove UIE emulation\n  RTC: Rework RTC code to use timerqueue for events\n\nFix up trivial conflict in drivers/rtc/rtc-dev.c\n"
    },
    {
      "commit": "96c8f06a0fb359a9a89701a7afab6d837e466ab0",
      "tree": "038d92c31b95abfd5ab83428ab965de82548c4c9",
      "parents": [
        "042620a018afcfba1d678062b62e463b9e43a68d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 13 22:45:48 2010 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Dec 13 22:48:21 2010 +0100"
      },
      "message": "rtc: Namespace fixup\n\nrtctimer_* is already occupied by sound/core/rtctimer.c. Instead of\nfiddling with that, rename the new functions to rtc_timer_* which\nreads nicer anyway.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Stultz \u003cjohnstul@us.ibm.com\u003e\n"
    },
    {
      "commit": "6610e0893b8bc6f59b14fed7f089c5997f035f88",
      "tree": "b13f4f516fe8fd31a6f6fbb68dd0c520c4c19df7",
      "parents": [
        "b007c389d3e09b823eccda1503390fa2a9adca0d"
      ],
      "author": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Thu Sep 23 15:07:34 2010 -0700"
      },
      "committer": {
        "name": "John Stultz",
        "email": "john.stultz@linaro.org",
        "time": "Fri Dec 10 22:24:24 2010 -0800"
      },
      "message": "RTC: Rework RTC code to use timerqueue for events\n\nThis patch reworks a large portion of the generic RTC code\nto in-effect virtualize the rtc interrupt code.\n\nThe current RTC interface is very much a raw hardware interface.\nVia the proc, /dev/, or sysfs interfaces, applciations can set\nthe hardware to trigger interrupts in one of three modes:\n\nAIE: Alarm interrupt\nUIE: Update interrupt (ie: once per second)\nPIE: Periodic interrupt (sub-second irqs)\n\nThe problem with this interface is that it limits the RTC hardware\nso it can only be used by one application at a time.\n\nThe purpose of this patch is to extend the RTC code so that we can\nmultiplex multiple applications event needs onto a single RTC device.\nThis is done by utilizing the timerqueue infrastructure to manage\na list of events, which cause the RTC hardware to be programmed\nto fire an interrupt for the next event in the list.\n\nIn order to preserve the functionality of the exsting proc,/dev/ and\nsysfs interfaces, we emulate the different interrupt modes as follows:\n\nAIE: We create a rtc_timer dedicated to AIE mode interrupts. There is\nonly one per device, so we don\u0027t change existing interface semantics.\n\nUIE: Again, a dedicated rtc_timer, set for periodic mode, is used\nto emulate UIE interrupts. Again, only one per device.\n\nPIE: Since PIE mode interrupts fire faster then the RTC\u0027s clock read\ngranularity, we emulate PIE mode interrupts using a hrtimer. Again,\none per device.\n\nWith this patch, the rtctest.c application in Documentation/rtc.txt\npasses fine on x86 hardware. However, there may very well still be\nbugs, so greatly I\u0027d appreciate any feedback or testing!\n\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\nLKML Reference: \u003c1290136329-18291-4-git-send-email-john.stultz@linaro.org\u003e\nAcked-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCC: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCC: Richard Cochran \u003crichardcochran@gmail.com\u003e\n"
    },
    {
      "commit": "59cca865f21e9e7beab73fcf79ba4eb776a4c228",
      "tree": "220a53454207a479af3fa04a9ffcf836811a21f8",
      "parents": [
        "d7c7ef908b6497bb871e2e113e66e8fb0f757543"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segooon@gmail.com",
        "time": "Wed Oct 27 15:33:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:06 2010 -0700"
      },
      "message": "drivers/rtc/class.c: fix device_register() error handling\n\nIf device_register() fails then call put_device().  See comment to\ndevice_register.\n\nSigned-off-by: Vasiliy Kulikov \u003csegooon@gmail.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "2a7a06a0cdd86d572e91657603180da5992be6d3",
      "tree": "a28063efd5886e95171a7e983e8b63c6e2b2db73",
      "parents": [
        "2e84067b6e557b0b85cdbceaf9a9189fc2c26536"
      ],
      "author": {
        "name": "Aaro Koskinen",
        "email": "aaro.koskinen@nokia.com",
        "time": "Fri Mar 05 13:44:24 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:47 2010 -0800"
      },
      "message": "rtc-core: fix memory leak\n\nThe idr should be destroyed when the module is unloaded. Found with\nkmemleak.\n\nSigned-off-by: Aaro Koskinen \u003caaro.koskinen@nokia.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4afc76c0b59a37113e184004f8a9989cfc1ddd3",
      "tree": "92d36a41879749c0faa912f98476b7947b192825",
      "parents": [
        "103d6d9170e3ecd9cefee9406bf928e1fcc45cc5"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue Jan 06 14:42:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 06 15:59:23 2009 -0800"
      },
      "message": "rtc: struct device: replace bus_id with dev_name(), dev_set_name()\n\nAcked-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nAcked-By: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d691eb901e044065de10756ea78a5758d457c7fd",
      "tree": "3b166f4d54bba5677a04b885d0da52c28db3a8a3",
      "parents": [
        "16a72c455a67bb23eed7292a31c6ba17729e78e6"
      ],
      "author": {
        "name": "Alessandro Zummo",
        "email": "alessandro.zummo@towertech.it",
        "time": "Tue Oct 16 01:28:15 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Oct 16 09:43:13 2007 -0700"
      },
      "message": "RTC: periodic irq fix\n\nAdd kernel/kernel and kernel/user locking for the periodic irq feature of\nthe rtc class.\n\nPIE ioctls are also supported.\n\nSigned-off-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c6b47de17c75d553de3e2fb426d8298d2074585",
      "tree": "c8edc3d727d85cb3e1c043583c350a04a133e1a3",
      "parents": [
        "0de085bb474f64e4fdb2f1ff3268590792648c7b"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Tue Jul 24 17:47:43 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Jul 25 10:09:20 2007 -0700"
      },
      "message": "Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time().\n\nThis avoids use of the kernel-internal \"xtime\" variable directly outside\nof the actual time-related functions.  Instead, use the helper functions\nthat we already have available to us.\n\nThis doesn\u0027t actually change any behaviour, but this will allow us to\nfix the fact that \"xtime\" isn\u0027t updated very often with CONFIG_NO_HZ\n(because much of the realtime information is maintained as separate\noffsets to \u0027xtime\u0027), which has caused interfaces that use xtime directly\nto get a time that is out of sync with the real-time clock by up to a\nthird of a second or so.\n\nSigned-off-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb3a58d2acc042f62cde932add8e1f9ed508368d",
      "tree": "a14e0afa950d7b6dd6b6bbd536ef0b128f5078e6",
      "parents": [
        "61a7c36acb3da406d64c0da6288eab1c414a65ea"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:46 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: update to class device removal patches\n\nFix a goof in the revised classdev support for RTCs: make sure the /dev\nnode info is ready before the device is registered, not after.  Otherwise\nthe /sys/class/rtc/rtcN/dev attribute won\u0027t be created and then udev won\u0027t\nhave the information it needs to create the /dev/rtcN node.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ca1d488ffe4817adaba61cc05b972782f7d3f91",
      "tree": "97fee4d2ddbc5be5265d99f5825e902f7a9262c1",
      "parents": [
        "cd9662094edf4173e87f0452e57e4eacc228f8ff"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:42 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: suspend()/resume() restores system clock\n\nRTC class suspend/resume support, re-initializing the system clock on resume\nfrom the clock used to initialize it at boot time.\n\n - The reinit-on-resume is hooked to the existing RTC_HCTOSYS config\n   option, on the grounds that a clock good enough for init must also\n   be good enough for re-init.\n\n - Inlining a version of the code used by ARM, to save and restore the\n   delta between a selected RTC and the current system wall-clock time.\n\n - Removes calls to that ARM code from AT91, OMAP1, and S3C RTCs.  This\n   means that systems using those RTCs across suspend/resume will likely\n   want to change their kernel configs to enable RTC_HCTOSYS.\n\n   If HCTOSYS isn\u0027t using a second RTC (with battery?), this changes the\n   system\u0027s initial date from Jan 1970 to the epoch this hardware uses:\n   1998 for AT91, 2000 for OMAP1 (assuming no split power mode), etc.\n\nThis goes on top of the patch series removing \"struct class_device\" usage\nfrom the RTC framework.  That\u0027s all needed for class suspend()/resume().\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-By: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd9662094edf4173e87f0452e57e4eacc228f8ff",
      "tree": "819d487aad05c7e61531bd25e3e7a0d4c08c6616",
      "parents": [
        "7d9f99eccc8f94ace31030a2a7ff73cf5f8c12a0"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:40 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: remove rest of class_device\n\nFinish converting the RTC framework so it no longer uses class_device.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-By: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d9f99eccc8f94ace31030a2a7ff73cf5f8c12a0",
      "tree": "4a4690e4050db31d7ea14c629d5710fd74cb16ae",
      "parents": [
        "446ecbd925dc580c9972049c926c17aa8d967fe4"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:38 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: simplified /proc/driver/rtc handling\n\nThis simplifies the RTC procfs support by removing the class_interface that\nhooks it into the rtc core.  If it\u0027s configured, then sysfs support is now\npart of the RTC core, and is never a separate module.\n\nIt also removes the class_interface hook, now that its last remaining user is\ngone.  (That API is usable only with a \"struct class_device\".)\n\nIt\u0027s another step towards being able to remove \"struct class_device\".\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-By: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "446ecbd925dc580c9972049c926c17aa8d967fe4",
      "tree": "54a7c06513606034a777a7382500c672cf3feb93",
      "parents": [
        "ab6a2d70d18edc7a716ef3127b9e13382faec98c"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:33 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: simplified rtc sysfs attribute handling\n\nThis simplifies the RTC sysfs support by removing the class_interface that\nhooks it into the rtc core.  If it\u0027s configured, then sysfs support is now\npart of the RTC core, and is never a separate module.\n\nIt\u0027s another step towards being able to remove \"struct class_device\".\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-By: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5726fb2012f0d96153113ddb7f988a0daea587ce",
      "tree": "27f31cfcc330cc3bc46dcc5297f85080f6f04ab7",
      "parents": [
        "1c710c896eb461895d3c399e15bb5f20b39c9073"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Tue May 08 00:33:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:18 2007 -0700"
      },
      "message": "rtc: remove /sys/class/rtc-dev/*\n\nThis simplifies the /dev support by removing a superfluous class_device (the\n/sys/class/rtc-dev stuff) and the class_interface that hooks it into the rtc\ncore.  Accordingly, if it\u0027s configured then /dev support is now part of the\nRTC core, and is never a separate module.\n\nIt\u0027s another step towards being able to remove \"struct class_device\".\n\n[bunk@stusta.de: drivers/rtc/rtc-dev.c should #include \"rtc-core.h\"]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nAcked-By: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e109ebd1eed2b91e3c9bb3b42cc27961f0dc22b3",
      "tree": "402ca61d265c59d35282b0786363dfbe32659564",
      "parents": [
        "0478e62e8a04154b7bdc0dfd33ffbcabc5446e9c"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Wed Feb 28 20:12:40 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Mar 01 14:53:37 2007 -0800"
      },
      "message": "[PATCH] rtc_cmos oops fix\n\nFix an oops on the rtc_device_unregister() path by waiting until the last\nmoment before nulling the rtc-\u003eops vector.  Fix some potential oopses by\nhaving the rtc_class_open()/rtc_class_close() interface increase the RTC\u0027s\nreference count while an RTC handle is available outside the RTC framework.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ff8371ac9a5a55c956991fed8e5f58640c7a32f3",
      "tree": "893271623ab3f66ec54e2c27ef93598975f4efbc",
      "parents": [
        "db621f174d2c017d960089ea8cbc91c0763f1069"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Sat Sep 30 23:28:17 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:25 2006 -0700"
      },
      "message": "[PATCH] constify rtc_class_ops: update drivers\n\nUpdate RTC framework so that drivers can constify their method tables, moving\nthem from \".data\" to \".rodata\".  Then update the drivers.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "818a8674b0388d90e33a5d1b13946b40dda7032a",
      "tree": "8972d170496e416170fcc0c82bcb634118392e78",
      "parents": [
        "9e86ecb659f11b36b5e189214b19cb31ef5dfd72"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Sat Sep 30 23:28:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 01 00:39:25 2006 -0700"
      },
      "message": "[PATCH] RTC class uses subsys_init\n\nThis makes RTC core components use \"subsys_init\" instead of \"module_init\", as\nappropriate for subsystem infrastructure.  This is mostly useful for\nstatically linking drivers in other parts of the tree that may provide an RTC\ninterface as a secondary functionality (e.g.  part of a multifunction chip);\nthey won\u0027t need to worry so much about drivers/Makefile link order.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nAcked-by: Oleg Verych \u003colecom@flower.upol.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ac12dfe9c2027cd3c5ed603f11d1bb4f04906fe",
      "tree": "7c1cb6d405dcaf959d9b1f67f62991775722fcde",
      "parents": [
        "b65b5b59f98aa317df399318b0b2770f50732d3c"
      ],
      "author": {
        "name": "Sonny Rao",
        "email": "sonny@burdell.org",
        "time": "Tue Jun 27 02:54:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:40 2006 -0700"
      },
      "message": "[PATCH] rtc: fix idr locking\n\nWe need to serialize access to the global rtc_idr even in this error path.\n\nSigned-off-by: Sonny Rao \u003csonny@burdell.org\u003e\nAcked-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "110d693d5898649da606cd6e5f6af4d7f70a405f",
      "tree": "a46b06a383d8a9eda59d7c7e17e8694798769800",
      "parents": [
        "56f10c634e145d75e45b56a73f59fb6dff1caa8e"
      ],
      "author": {
        "name": "Alessandro Zummo",
        "email": "alessandro.zummo@towertech.it",
        "time": "Sun Jun 25 05:48:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Jun 25 10:01:14 2006 -0700"
      },
      "message": "[PATCH] rtc subsystem: add capability checks\n\nCentralize CAP_SYS_XXX checks to avoid duplicate code and missing checks in\nthe drivers.\n\nSigned-off-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Yoichi Yuasa \u003cyoichi_yuasa@tripeaks.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d1d65b7712016ca5ff2e44470eb13e772999de94",
      "tree": "06f6e823cf5ca785f055b129c003c55b9cbdae86",
      "parents": [
        "8289607249ad25ecfc9a3742873fcd8f319d5b09"
      ],
      "author": {
        "name": "Alessandro Zummo",
        "email": "a.zummo@towertech.it",
        "time": "Mon Apr 10 22:54:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:47 2006 -0700"
      },
      "message": "[PATCH] RTC subsystem: compact error messages\n\nMove registration error message from drivers to core.\n\nSigned-off-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c86edc0d4970649f39748c4ce4f2895f728468f",
      "tree": "d4a4b0a45922fff8add243d14c8377eb902aa80a",
      "parents": [
        "4079c39aaab65022f4875609d76e62669ef94c29"
      ],
      "author": {
        "name": "Alessandro Zummo",
        "email": "a.zummo@towertech.it",
        "time": "Mon Mar 27 01:16:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:51 2006 -0800"
      },
      "message": "[PATCH] RTC subsystem: class\n\nAdd the basic RTC subsystem infrastructure to the kernel.\n\nrtc/class.c - registration facilities for RTC drivers\nrtc/interface.c - kernel/rtc interface functions\nrtc/hctosys.c - snippet of code that copies hw clock to sw clock\n\t\tat bootup, if configured to do so.\n\nSigned-off-by: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ]
}
