)]}'
{
  "commit": "3c8bb90efb6e3105206e4aaa9127395feeda5492",
  "tree": "9ff9771503c219677671bea7f4b2740661d1c5e9",
  "parents": [
    "53cc2820acbdbcc768675bfaff321f3a8680a317"
  ],
  "author": {
    "name": "Thomas Gleixner",
    "email": "tglx@linutronix.de",
    "time": "Fri Jul 22 09:12:51 2011 +0000"
  },
  "committer": {
    "name": "John Stultz",
    "email": "john.stultz@linaro.org",
    "time": "Tue Jul 26 14:49:59 2011 -0700"
  },
  "message": "rtc: Fix hrtimer deadlock\n\nBen reported a lockup related to rtc. The lockup happens due to:\n\nCPU0                                        CPU1\n\nrtc_irq_set_state()\t\t\t    __run_hrtimer()\n  spin_lock_irqsave(\u0026rtc-\u003eirq_task_lock)    rtc_handle_legacy_irq();\n\t\t\t\t\t      spin_lock(\u0026rtc-\u003eirq_task_lock);\n  hrtimer_cancel()\n    while (callback_running);\n\nSo the running callback never finishes as it\u0027s blocked on\nrtc-\u003eirq_task_lock.\n\nUse hrtimer_try_to_cancel() instead and drop rtc-\u003eirq_task_lock while\nwaiting for the callback. Fix this for both rtc_irq_set_state() and\nrtc_irq_set_freq().\n\nCc: stable@kernel.org\nReported-by: Ben Greear \u003cgreearb@candelatech.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: John Stultz \u003cjohn.stultz@linaro.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b6bf57f25cc9e520ca31d642eea1616b9132f82b",
      "old_mode": 33188,
      "old_path": "drivers/rtc/interface.c",
      "new_id": "a1ba2caa8308b7cd991130d8b29db2392ba277b5",
      "new_mode": 33188,
      "new_path": "drivers/rtc/interface.c"
    }
  ]
}
