)]}'
{
  "commit": "606a5020b9bdceb20b4f43e11db0054afa349028",
  "tree": "d5f65b7a94cd4c5987979a814178cc92cf4508d9",
  "parents": [
    "dbf2576e37da0fcc7aacbfbb9fd5d3de7888a3c1"
  ],
  "author": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Mon Aug 20 14:51:23 2012 -0700"
  },
  "committer": {
    "name": "Tejun Heo",
    "email": "tj@kernel.org",
    "time": "Mon Aug 20 14:51:23 2012 -0700"
  },
  "message": "workqueue: gut flush[_delayed]_work_sync()\n\nNow that all workqueues are non-reentrant, flush[_delayed]_work_sync()\nare equivalent to flush[_delayed]_work().  Drop the separate\nimplementation and make them thin wrappers around\nflush[_delayed]_work().\n\n* start_flush_work() no longer takes @wait_executing as the only left\n  user - flush_work() - always sets it to %true.\n\n* __cancel_work_timer() uses flush_work() instead of wait_on_work().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b14d5d59af7cadeb5fb8f255544346b004b44c48",
      "old_mode": 33188,
      "old_path": "include/linux/workqueue.h",
      "new_id": "4f9d3bc161a2ec572b07cbd902aa57c1d79b899d",
      "new_mode": 33188,
      "new_path": "include/linux/workqueue.h"
    },
    {
      "type": "modify",
      "old_id": "c4feef9798eaf64024f7ecbb3031bcb614374d55",
      "old_mode": 33188,
      "old_path": "kernel/workqueue.c",
      "new_id": "5f13a9a2c792bc36a086275dac9d085a780761ad",
      "new_mode": 33188,
      "new_path": "kernel/workqueue.c"
    }
  ]
}
