)]}'
{
  "commit": "e60d7443e00a72a2c056950cdaab79c7b077f3d4",
  "tree": "0d2376434a0f44ac2b30bba0af3cdcb8e5421c90",
  "parents": [
    "ece1e3c61e59ba184150e5aff57bbc6355613e3e"
  ],
  "author": {
    "name": "Alban Browaeys",
    "email": "prahal@yahoo.com",
    "time": "Wed Nov 25 15:13:00 2009 +0100"
  },
  "committer": {
    "name": "John W. Linville",
    "email": "linville@tuxdriver.com",
    "time": "Sat Nov 28 15:05:00 2009 -0500"
  },
  "message": "wireless : use a dedicated workqueue for cfg80211.\n\nThis patch moves the works cleanup, scan and events to a cfg80211\ndedicated workqueue.\n\nPlatform driver like eeepc-laptop ought to use works to rfkill (as\nnew rfkill does lock in rfkill_unregister and the platform driver is\ncalled from rfkill_switch_all which also lock the same mutex).\nThis raise a new issue in itself that the work scheduled by the platform\ndriver to the global worqueue calls wiphy_unregister which flush_work\nscan and event works (which thus flush works on the global workqueue inside\na work on the global workqueue) and also put on hold the  wdev_cleanup_work\n (which prevents the dev_put on netdev thus indefinite Usage count error on\nwifi device).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Alban Browaeys \u003cprahal@yahoo.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fe6f402a22af0b404a5b11fbaf689430f4c7753b",
      "old_mode": 33188,
      "old_path": "net/wireless/core.c",
      "new_id": "c2a2c563d21af2456aa261838285b4c6a49db786",
      "new_mode": 33188,
      "new_path": "net/wireless/core.c"
    },
    {
      "type": "modify",
      "old_id": "a9db9e6255bb55f559a4f96998257a75aeb9c99d",
      "old_mode": 33188,
      "old_path": "net/wireless/core.h",
      "new_id": "4ef3efc941066119ddbea37766b8081219aa01a6",
      "new_mode": 33188,
      "new_path": "net/wireless/core.h"
    },
    {
      "type": "modify",
      "old_id": "34dfc93fa713c077a0840ecf27731b8eecb4f3f2",
      "old_mode": 33188,
      "old_path": "net/wireless/ibss.c",
      "new_id": "6ef5a491fb4b018b866ff22f19b6e717fb90d4f7",
      "new_mode": 33188,
      "new_path": "net/wireless/ibss.c"
    },
    {
      "type": "modify",
      "old_id": "227d57b8dc418bc97b4b63bb771628ab335c7c2e",
      "old_mode": 33188,
      "old_path": "net/wireless/scan.c",
      "new_id": "df26228db1b3d1536378859d671dec5edd74f5db",
      "new_mode": 33188,
      "new_path": "net/wireless/scan.c"
    },
    {
      "type": "modify",
      "old_id": "0115d07d2c1a04fbc1a4d582264c5550298655b6",
      "old_mode": 33188,
      "old_path": "net/wireless/sme.c",
      "new_id": "2333d78187e4a0f2d48572fb9786110ed87f137a",
      "new_mode": 33188,
      "new_path": "net/wireless/sme.c"
    }
  ]
}
