)]}'
{
  "log": [
    {
      "commit": "6d80dfd094a7b286e95cdcac79efeb7bbb4e226f",
      "tree": "d2ce3d84653d5205bfcceb1ac73297a0381117f8",
      "parents": [
        "f963e8e9d3652f4a8065d969206707a1c21ff9b0"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:50:38 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Feb 21 00:32:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add basic support for Set High Speed command\n\nThis patch adds rudimentary support for the Set High Speed command in\nthe form of a new HCI dev flag (HCI_HS_ENABLED).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f963e8e9d3652f4a8065d969206707a1c21ff9b0",
      "tree": "712829fed5127bdf2a9b822a48bff52360cd27ac",
      "parents": [
        "d930650b59be72342bc373ef52006ca99c1dd09e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:30:44 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Feb 21 00:32:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add address type parameter to Discovering event\n\nThis patch adds an address type parameter to the Discovering event. The\nvalue matches that given to Start/Stop Discovery.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d930650b59be72342bc373ef52006ca99c1dd09e",
      "tree": "de08d56c0b77b280f4b9763c805665640ad5588e",
      "parents": [
        "4b95a24ce12c4545fd7d2e3075841dc3119d1d71"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:25:18 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Feb 21 00:32:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add address type parameter to Stop Discovery command\n\nThis patch adds an address type parameter to the Stop Discovery command\nwhich should match the value given to Start Discovery.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "4b95a24ce12c4545fd7d2e3075841dc3119d1d71",
      "tree": "938a5668877d32de6c8f88abab15ad6438f645a6",
      "parents": [
        "d7b7e79688c07b445bc52adfedf9a176be156f4b"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 21:24:37 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:08:36 2012 +0200"
      },
      "message": "Bluetooth: Always enable management interface\n\nThe management interface API has reached stable version 1.0 and thus\nit can now be always enabled. All future changes will be made backwards\ncompatible.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "d7b7e79688c07b445bc52adfedf9a176be156f4b",
      "tree": "0bdc072b86cfcf7a35b29e52336001ce2817de31",
      "parents": [
        "801f13bd8ecc58f2cf42ec602a2b5db10fc5a132"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 21:47:49 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:08:17 2012 +0200"
      },
      "message": "Bluetooth: Set supported settings based on enabled HS and/or LE\n\nSince neither High Speed (HS) nor Low Energy (LE) are fully implemented\nyet, only expose them in supported settings when enabled.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "801f13bd8ecc58f2cf42ec602a2b5db10fc5a132",
      "tree": "1b6a79e7e9890d6442d796f4f29e268d42faca1e",
      "parents": [
        "cd82e61c110a36e398323e422896fcfe05879fed"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 20:54:10 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:06:43 2012 +0200"
      },
      "message": "Bluetooth: Restrict access to management interface\n\nThe management interface on the HCI control channel should be restricted\nto applications with CAP_NET_ADMIN permission.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "cd82e61c110a36e398323e422896fcfe05879fed",
      "tree": "42cbe44d8915e82febf10420100c45219d610b83",
      "parents": [
        "040030ef7d907107e6489b39da518bdf94136d68"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 20:34:38 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 23:03:24 2012 +0200"
      },
      "message": "Bluetooth: Add support for HCI monitor channel\n\nThe HCI monitor channel can be used to monitor all packets and events\nfrom the Bluetooth subsystem. The monitor is not bound to any specific\nHCI device and allows even capturing multiple devices at the same time.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "040030ef7d907107e6489b39da518bdf94136d68",
      "tree": "79617d057852bc0293a63d9a176ca73972404824",
      "parents": [
        "e0edf3733fb62f91bbb8ec3fab4a90b0ac2dd037"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:37 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:59:22 2012 +0200"
      },
      "message": "Bluetooth: Remove HCI notifier handling\n\nThe HCI notifier handling was never used outside of Bluetooth core layer\nand thus remove it and replace it with direct function calls. Also move\nthe stack internal event generation into the HCI socket layer.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "e0edf3733fb62f91bbb8ec3fab4a90b0ac2dd037",
      "tree": "59e8d01b911454141d53c4e08d9af9ed271abdcf",
      "parents": [
        "7cc2ade2cbc6f71090f0f8d0e11cb68886ddc65e"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:36 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:59:11 2012 +0200"
      },
      "message": "Bluetooth: Fix issue with shared SKB between HCI raw socket and driver\n\nAny HCI raw socket gets a copy of each SKB that is either received or\nsend via the Bluetooth subsystem. The raw socket uses SKB clones to\nsend out data, but the problem is that it needs to add an extra packet\ntype byte in front of it. And some drivers need to also add an extra\nheader before submitting the packet.\n\nSo far this all worked magically fine since all of the drivers and the\nraw sockets are adding the same byte at the same location. But that is\nby pure coincidence. Since the data of cloned SKBs is shared, this means\nthat the raw socket and driver kept writing into the shared data area.\n\nTo fix this the only safe way is if the HCI raw socket creates a copy of\nthe SKB before sending it out. To not always copy all SKBs around, the\ncopy is only created once and only after any of the HCI filter checks\nsucceeded.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "7cc2ade2cbc6f71090f0f8d0e11cb68886ddc65e",
      "tree": "7ba106e3e172853d1bcc7af8c60a6c1c9766b1c7",
      "parents": [
        "3a208627f3ac83d3b749608770f7eb631db31a77"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:35 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:58:59 2012 +0200"
      },
      "message": "Bluetooth: Simplify HCI socket bind handling\n\nThe HCI socket bind handling checks a few too many times the channel\nwe are binding. So centralize this and make the function easier to read.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3a208627f3ac83d3b749608770f7eb631db31a77",
      "tree": "db13c08160831a0e2ed1cb2bba11263ac673e151",
      "parents": [
        "cedc5469778846ee18c653aaa6d70681961eed93"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:34 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:56:15 2012 +0200"
      },
      "message": "Bluetooth: Add HCI CMSG details only to raw sockets\n\nThe HCI CMSG specific data is for raw sockets only. So only add them to\nactual raw sockets.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "cedc5469778846ee18c653aaa6d70681961eed93",
      "tree": "62474c68745e8c63f35ba8af4fe8ad31e0e2fa8c",
      "parents": [
        "2f39cdb7a270da24532734dfdfd10c490be981c4"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:33 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:56:05 2012 +0200"
      },
      "message": "Bluetooth: Lock socket when reading HCI socket options\n\nWhen reading the HCI raw socket option, the socket was never locked. So\nlock the socket and in addition return EINVAL on non raw sockets.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "2f39cdb7a270da24532734dfdfd10c490be981c4",
      "tree": "23287d6082f8dca48ea1631b6bbbcece87c825d4",
      "parents": [
        "a6fb08dfe8654e399c9bbca34be914e213560b5e"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:32 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:55:54 2012 +0200"
      },
      "message": "Bluetooth: Limit HCI raw socket options to actual raw sockets\n\nCurrently the socket options of HCI sockets can be set on raw and control\nsockets, but on control sockets they make no sense. So just return EINVAL\nin that case.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "a6fb08dfe8654e399c9bbca34be914e213560b5e",
      "tree": "15165238e6d8193a36ccac71b642836b8dfff76a",
      "parents": [
        "470fe1b540fb50ba8ce01e0ac985602e8fbb108c"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:31 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:55:37 2012 +0200"
      },
      "message": "Bluetooth: Remove unneeded bt_cb(skb)-\u003echannel variable\n\nThe bt_cb(skb)-\u003echannel was only needed to make hci_send_to_sock() be\nused for HCI raw and control sockets. Since they have now separate sending\nfunctions this is no longer needed.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "470fe1b540fb50ba8ce01e0ac985602e8fbb108c",
      "tree": "c2c0b9b33c1a596c032e0eb330b0d6a66fd9c56c",
      "parents": [
        "48c7aba91f372251867d15efc9cf694ceee2de02"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 20 14:50:30 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 20 15:55:11 2012 +0200"
      },
      "message": "Bluetooth: Split sending for HCI raw and control sockets\n\nThe sending functions for HCI raw and control sockets have nothing in\ncommon except that they iterate over the socket list. Split them into\ntwo so they can do their job more efficient. In addition the code becomes\nmore readable.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "48c7aba91f372251867d15efc9cf694ceee2de02",
      "tree": "457ae2383babe549913ee00c40370d978bd243ef",
      "parents": [
        "2da9c55c5a4a0b8f0348b7acd70d8b08a6ae4573"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:06:48 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:22:11 2012 +0200"
      },
      "message": "Bluetooth: Fix hci_connect error return values\n\nThe hci_connect function should either return a valid hci_conn pointer\nor a ERR_PTR() but never NULL. This patch fixes the two places where\nhci_conn_add failures would have caused a NULL return. The only reason\nfor failure with hci_conn_add is memory allocation so ENOMEM seems to be\na good choice here.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "2da9c55c5a4a0b8f0348b7acd70d8b08a6ae4573",
      "tree": "91489c7c331f07f6c9e70d21626c9362a6b92614",
      "parents": [
        "bf1e3541f75a395e1e21b144fe1c387cc71baff1"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:39:28 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:05:44 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Bump mgmt version\n\nThis patch bumps the mgmt version to 1 and resets the revision to 0.\nThis is in order to indicate API stability to user space. The mgmt API\nhas reached a point where no major backwards incompatible changes are\nexpected so it makes sense to do this version bump now.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "bf1e3541f75a395e1e21b144fe1c387cc71baff1",
      "tree": "f3642fa6f2acb8273a620fc185265b9395d0975f",
      "parents": [
        "f0eeea8b61d6e8316f6137b372eb3f3ac180508c"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 13:16:14 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:04:41 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Fix OOB command response parameters\n\nThe response to the Add/Remove Out Of Band Data commands should include\nthe same address as was given in the command itself.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f0eeea8b61d6e8316f6137b372eb3f3ac180508c",
      "tree": "15cee3f22163779cb7935f3ecd16f30ee043a6f7",
      "parents": [
        "f808e166e7c529a7e706cda916c8c99589d2d95b"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:58:54 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:04:41 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Fix (Un)Block Device return parameters\n\nThe same address as was passed to the (Un)Block Device command should\nalso be returned in the command response message.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f808e166e7c529a7e706cda916c8c99589d2d95b",
      "tree": "c9343dfc95a4b17636216727eb9865cdb8fe59d3",
      "parents": [
        "e211326c0b064e8fe2a8cb51427c3f2044ad84be"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:52:07 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:04:41 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Fix Start Discovery return parameters\n\nThe same address type that was passed to the Start Discovery command\nshould also be returned in the response message.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e211326c0b064e8fe2a8cb51427c3f2044ad84be",
      "tree": "f0800bdd0f56e9c032396f3f2da752e974eb54fe",
      "parents": [
        "aee9b218036476b8b659de5bbfada3a4633f635b"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sat Feb 18 15:20:03 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:04:41 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Fix Pair Device response status values\n\nThis patch fixes the status in Pair Device responses to follow proper\nmgmt status values.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "aee9b218036476b8b659de5bbfada3a4633f635b",
      "tree": "580600bc5bbbbbf2bea806705ad9355ad624c1e3",
      "parents": [
        "3c6b764020d19b0993fe67f938b4b08f25c9bdd9"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sat Feb 18 15:07:59 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 14:04:41 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Move status parameters into the cmd_complete header\n\nInstead of having status paramters part of each individual command\nresponse it\u0027s simpler to just have the status as part of the command\ncomplete header. This patch updates the code to follow this convention\nand thereby also ensures compliance with the latest mgmt API\nspecification.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "5e0452c00a2e4b04ec1482248c897dacf106f1df",
      "tree": "34bbd940ed96cc736dcd8dd9311414f8f035839e",
      "parents": [
        "343f935bfa44189c68527102c409286b0cfc4526"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 17 20:39:38 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:34:55 2012 +0200"
      },
      "message": "Bluetooth: Interleaved discovery support\n\nThis patch adds interleaved discovery support to MGMT Start\nDiscovery command.\n\nIn case interleaved discovery is not supported (not a dual mode\ndevice), we perform BR/EDR or LE-only discovery according to the\ndevice capabilities.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "343f935bfa44189c68527102c409286b0cfc4526",
      "tree": "7597224c044e879c31bda46e32dd5a3f256ffd1b",
      "parents": [
        "4aab14e5504e84c42534378f91e836e6f55d0886"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 17 20:39:37 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:34:09 2012 +0200"
      },
      "message": "Bluetooth: Merge INQUIRY and LE_SCAN discovery states\n\nThis patch merges DISCOVERY_INQUIRY and DISCOVERY_LE_SCAN states\ninto a new state called DISCOVERY_FINDING.\n\nFrom the discovery perspective, we are pretty much worried about\nto know just if we are finding devices than what exactly phase of\n\"finding devices\" (inquiry or LE scan) we are currently running.\nBesides, to know if the controller is performing inquiry or LE scan\nwe should check HCI_INQUIRY or HCI_LE_SCAN bits in hdev flags.\n\nMoreover, merging this two states will simplify the discovery state\nmachine and will keep interleaved discovery implementation simpler.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "4aab14e5504e84c42534378f91e836e6f55d0886",
      "tree": "9378f2f0d3e345788e8853b3bb7ea2fa4d70558e",
      "parents": [
        "f39799f5047c4827b200acbf33cd0ba076afd7ed"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 17 20:39:36 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:33:49 2012 +0200"
      },
      "message": "Bluetooth: Track discovery type\n\nThis patch adds to struct discovery_state the field \u0027type\u0027 so that\nwe can track the discovery type the device is performing.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "f39799f5047c4827b200acbf33cd0ba076afd7ed",
      "tree": "91aaf60a5aeb5e0bbac57ec056f71552a695372a",
      "parents": [
        "ea585ab51d3fe2eb2d738c91f83e7c309e76b4fe"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 17 20:39:35 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 19 12:32:21 2012 +0200"
      },
      "message": "Bluetooth: Prepare start_discovery\n\nThis patch does some code refactoring in start_discovery function\nin order to prepare it for interleaved discovery support.\n\nMGMT_ADDR_* macros were moved to hci_core.h since they are now used\nto define discovery type macros.\n\nDiscovery type macros were defined according to mgmt-api.txt\nspecification:\n\nPossible values for the Type parameter are a bit-wise or of the\nfollowing bits:\n\n\t1\tBR/EDR\n\t2\tLE Public\n\t3\tLE Random\n\nBy combining these e.g. the following values are possible:\n\n\t1\tBR/EDR\n\t6\tLE (public \u0026 random)\n\t7\tBR/EDR/LE (interleaved discovery)\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "ea585ab51d3fe2eb2d738c91f83e7c309e76b4fe",
      "tree": "e677a889cdcf82c61c5834da220edd734bb5d6c4",
      "parents": [
        "a198e7b100b26dd6ac0240487ca37bad0f53e3e6"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:50:39 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 15:35:39 2012 +0200"
      },
      "message": "Bluetooth: Add Intel copyright to mgmt files\n\nThis patch adds the appropriate Intel copyright to mgmt files.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a198e7b100b26dd6ac0240487ca37bad0f53e3e6",
      "tree": "9389498822eda64c2f1a6bc71093572fadb658cb",
      "parents": [
        "d8457698e7f23a05055396a15ec72ba663282867"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:27:06 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:39:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add address type to confirm name command\n\nThe latest mgmt API includes an address type for all messages containing\nan address. This patch updates the confirm name command to match this.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d8457698e7f23a05055396a15ec72ba663282867",
      "tree": "a3e5e0b749cbdbf19e1224aebc6c8cabd32397cb",
      "parents": [
        "d753fdc40f60da2eef03b4816392081a552fea5a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:24:57 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:39:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add address type to PIN code messages\n\nThe latest mgmt API includes address types for all messages containing\nan address. This patch updates the PIN code messages to match this.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d753fdc40f60da2eef03b4816392081a552fea5a",
      "tree": "1ebfe8e4d39cd253345488f1645f6df1329d3700",
      "parents": [
        "42d2d87cfe837e987802588f8d8b119a76714a74"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:06:34 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 14:39:16 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add address type to link key messages\n\nThe latest mgmt API includes an address type wherever there\u0027s an address\npresent. This patch updates the link key messages to match it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "42d2d87cfe837e987802588f8d8b119a76714a74",
      "tree": "db9e84b042095eb1251736b851471750f7168a96",
      "parents": [
        "e05dcc3291dcfe9ab1b456f38ccb3041ebbda59c"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Feb 17 11:40:57 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 13:02:33 2012 +0200"
      },
      "message": "Bluetooth: Prefix hex numbers with object name\n\nSeveral hex numbers were printed without object name which\ncomplicates debugging.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "e05dcc3291dcfe9ab1b456f38ccb3041ebbda59c",
      "tree": "b1d7c7a5b31160e5689b693e446dbdda52f8d2c7",
      "parents": [
        "20d1803a70ddafc8410b461caaa397e49da246ac"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Feb 17 11:40:56 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 13:01:54 2012 +0200"
      },
      "message": "Bluetooth: Use symbolic names for state in debug\n\nUse state_to_string function in debug statements.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "20d1803a70ddafc8410b461caaa397e49da246ac",
      "tree": "d2347c25bb35832d6c931bdb1711c16f3f57d441",
      "parents": [
        "3ed7003e724a04482e0ef1e794eece8c1c177b37"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Feb 17 11:40:55 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 13:01:10 2012 +0200"
      },
      "message": "Bluetooth: Move scope of state_to_string\n\nFunction state_to_string will be used in other files in debug\nstatements.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3ed7003e724a04482e0ef1e794eece8c1c177b37",
      "tree": "a098bcf0b24e9b9b0d6a94192e250db91e6c86f4",
      "parents": [
        "ed2c4ee360709ca838efa0ea4d6295590aff3d24"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Thu Feb 16 23:32:42 2012 -0800"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 11:33:17 2012 +0200"
      },
      "message": "Bluetooth: Add logging functions bt_info and bt_err\n\nUse specific logging functions instead of a generic\nbt_printk function can save some text.\n\nRemove now unused bt_printk function.\nAdd compatibility BT_INFO and BT_ERR macros.\n\n(compiled x86 and defconfig with bluetooth and all bluetooth drivers)\n\n$ size net/bluetooth/built-in.o*\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 381662\t  20072\t 100416\t 502150\t  7a986\tnet/bluetooth/built-in.o.allyesconfig.new\n 382463\t  20072\t 100400\t 502935\t  7ac97\tnet/bluetooth/built-in.o.allyesconfig.old\n 126635\t   1388\t    132\t 128155\t  1f49b\tnet/bluetooth/built-in.o.defconfig.new\n 127175\t   1388\t    132\t 128695\t  1f6b7\tnet/bluetooth/built-in.o.defconfig.old\n\n$ size drivers/bluetooth/built-in.o*\n 127575\t   8976\t  29476\t 166027\t  2888b\tdrivers/bluetooth/built-in.o.allyesconfig.new\n 129512\t   8976\t  29516\t 168004\t  29044\tdrivers/bluetooth/built-in.o.allyesconfig.old\n  52998\t   3292\t    156\t  56446\t   dc7e\tdrivers/bluetooth/built-in.o.defconfig.new\n  54358\t   3292\t    156\t  57806\t   e1ce\tdrivers/bluetooth/built-in.o.defconfig.old\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "ed2c4ee360709ca838efa0ea4d6295590aff3d24",
      "tree": "1503b376c8845f87941a06985850b5409b0b88ec",
      "parents": [
        "33ef95ed30283eb17c686a815caf1d33e966fe4a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 00:56:28 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 11:27:11 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add support for Set SSP command\n\nThe Set SSP mgmt command can be used for enabling and disabling Secure\nSimple Pairing support for controllers that support it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "33ef95ed30283eb17c686a815caf1d33e966fe4a",
      "tree": "a989ac26b6f9c47fcf6bac5664806af2459455f6",
      "parents": [
        "7bb895d68e0c18b730bd89f2ed7e58de0e3a591a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 16 23:56:27 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 11:27:11 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add support for Set Link Security command\n\nThe Set Link Security mgmt command is used to enable or disable link\nlevel security, also known as Security Mode 3. This is rarely enabled in\nmodern systems but the command needs to be available for completeness,\nqualification purposes and those few systems that actually want to\nenable it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "7bb895d68e0c18b730bd89f2ed7e58de0e3a591a",
      "tree": "32f88754d18f58e7fa2232077190e6f3cb1d8d05",
      "parents": [
        "76a7f3a40c2bfbdb5f2b23ac780fa4e4f22e8659"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 01:20:00 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 11:27:11 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Use more consistent error variable names\n\nFor simple integer errors the variable name \"err\" is more consistent\nwith the existing code base than \"ret\".\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "76a7f3a40c2bfbdb5f2b23ac780fa4e4f22e8659",
      "tree": "eba2d9b800e7681a7841bb34408ae514fb644803",
      "parents": [
        "7ddb6e0f3f7aa265c905b947e9ac4ab9562e52f2"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 00:34:40 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 17 11:27:11 2012 +0200"
      },
      "message": "Bluetooth: Remove unused member from cmd_lookup struct\n\nThe val member of cmd_lookup isn\u0027t used anywhere so it can be removed.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "7ddb6e0f3f7aa265c905b947e9ac4ab9562e52f2",
      "tree": "c284114f6d8a77aecf0a00f8aae1ab54315597b7",
      "parents": [
        "46479e698530b8197d601a23317b7c7654195338"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Tue Feb 14 15:12:57 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 16 15:15:08 2012 +0200"
      },
      "message": "Bluetooth: Do not dereference zero sk\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "46479e698530b8197d601a23317b7c7654195338",
      "tree": "710b2758ecd7d8a6ada37724c5d4c8027d5f358f",
      "parents": [
        "7b99b659d90c5d421cb1867295c78a4c0c030734",
        "ca994a36f585432458ead9133fcfe05440edbb7b"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 16 14:23:04 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 16 14:25:34 2012 +0200"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next.git\n\nConflicts:\n\tinclude/net/bluetooth/l2cap.h\n\tnet/bluetooth/hci_conn.c\n\tnet/bluetooth/l2cap_core.c\n"
    },
    {
      "commit": "ca994a36f585432458ead9133fcfe05440edbb7b",
      "tree": "be05512153a9cd5cbe1f1234bc09fd9cd388ec58",
      "parents": [
        "12325280dfeba18164f9c47e226a40ab34e23ee7",
        "2504a6423b9ab4c36df78227055995644de19edb"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 15 16:24:37 2012 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 15 16:24:37 2012 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless\n\nConflicts:\n\tnet/mac80211/debugfs_sta.c\n\tnet/mac80211/sta_info.h\n"
    },
    {
      "commit": "216c57b214bd621335ff698b475f6db2802502dc",
      "tree": "3d436e04f60577c634106db5099f39e376b98a86",
      "parents": [
        "4b5a433ae5348c23caa0b5f0a2fca7c342acb200"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Wed Feb 08 19:17:11 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 15 13:56:06 2012 -0500"
      },
      "message": "mac80211: do not call rate control .tx_status before .rate_init\n\nMost rate control implementations assume .get_rate and .tx_status are only\ncalled once the per-station data has been fully initialized.\nminstrel_ht crashes if this assumption is violated.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nTested-by: Arend van Spriel \u003carend@broadcom.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b5a433ae5348c23caa0b5f0a2fca7c342acb200",
      "tree": "023096819178eb695a78eb2de271af6470ff29c3",
      "parents": [
        "24d2b8c0ac5c8ec41c26ed432238b0e027184882"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Jan 20 13:55:23 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 15 13:56:06 2012 -0500"
      },
      "message": "mac80211: call rate control only after init\n\nThere are situations where we don\u0027t have the\nnecessary rate control information yet for\nstation entries, e.g. when associating. This\ncurrently doesn\u0027t really happen due to the\ndummy station handling; explicitly disabling\nrate control when it\u0027s not initialised will\nallow us to remove dummy stations.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7b99b659d90c5d421cb1867295c78a4c0c030734",
      "tree": "44533b3e9e43b4582d1ca3424e89dec1c7f8bf3c",
      "parents": [
        "203159d486006a18fa1ccf787a10d15d3128cdac"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Mon Feb 13 15:41:02 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 15:23:36 2012 +0200"
      },
      "message": "Bluetooth: Fix event sending with DISCOVERY_STOPPED state\n\nWe are not supposed to send mgmt_discovering events if we are transiting\nfrom DISCOVERY_STARTING to DISCOVERY_STOPPED state. It doesn\u0027t make\nsense to send mgmt_discovering event once discovery procedure has not\nbeen even started.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "203159d486006a18fa1ccf787a10d15d3128cdac",
      "tree": "7879f84c8c9161215664fd98d9b760c0a0efa1c0",
      "parents": [
        "e70bb2e89959983aebcfce28f645a1104ffa9ab2"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Mon Feb 13 15:41:01 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 15:23:27 2012 +0200"
      },
      "message": "Bluetooth: Fix discovery state machine\n\nIn case of Start Discovery command failure, we should set the discovery\nstate to DISCOVERY_STOPPED. Otherwise, we stuck at DISCOVERY_STARTING\nstate and subsequent Start Discovery commands will simply fail.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "e70bb2e89959983aebcfce28f645a1104ffa9ab2",
      "tree": "721c67618b45cce0d6adc610f59589d5ef9bc816",
      "parents": [
        "9ab875affbe61b2c88685c342461c9a367ab7a3e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 16:59:33 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 14:28:07 2012 +0200"
      },
      "message": "Bluetooth: Implement Read Supported Commands commands for mgmt\n\nThis patch implements the Read Supported Commands mgmt command which was\nrecently added to the API specification. It returns a list of supported\ncommands and events to user space.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "24d2b8c0ac5c8ec41c26ed432238b0e027184882",
      "tree": "d0331d56b1f94b3614eaade10ca5d1ca0ba8633c",
      "parents": [
        "6de32750822d00bfa92c341166132b0714c5b559"
      ],
      "author": {
        "name": "Ulisses Furquim",
        "email": "ulisses@profusion.mobi",
        "time": "Mon Jan 30 18:26:29 2012 -0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:26 2012 +0200"
      },
      "message": "Bluetooth: Fix possible use after free in delete path\n\nWe need to use the _sync() version for cancelling the info and security\ntimer in the L2CAP connection delete path. Otherwise the delayed work\nhandler might run after the connection object is freed.\n\nSigned-off-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "6de32750822d00bfa92c341166132b0714c5b559",
      "tree": "b267e43e5a597578e923cd373961348e7cc7f6fb",
      "parents": [
        "403f048a57050add364827fb3e2650af86463168"
      ],
      "author": {
        "name": "Ulisses Furquim",
        "email": "ulisses@profusion.mobi",
        "time": "Mon Jan 30 18:26:28 2012 -0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:26 2012 +0200"
      },
      "message": "Bluetooth: Remove usage of __cancel_delayed_work()\n\n__cancel_delayed_work() is being used in some paths where we cannot\nsleep waiting for the delayed work to finish. However, that function\nmight return while the timer is running and the work will be queued\nagain. Replace the calls with safer cancel_delayed_work() version\nwhich spins until the timer handler finishes on other CPUs and\ncancels the delayed work.\n\nSigned-off-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "ca0d6c7ece0e78268cd7c5c378d6b1b610625085",
      "tree": "23c56a6629b63e20c59ba36971fd181d54c02b6d",
      "parents": [
        "cf33e77b76d7439f21a23a94eab4ab3b405a6a7d"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 03 21:29:40 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:26 2012 +0200"
      },
      "message": "Bluetooth: Add missing QUIRK_NO_RESET test to hci_dev_do_close\n\nWe should only perform a reset in hci_dev_do_close if the\nHCI_QUIRK_NO_RESET flag is set (since in such a case a reset will not be\nperformed when initializing the device).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "cf33e77b76d7439f21a23a94eab4ab3b405a6a7d",
      "tree": "3e8ad4b4c7a2cb23835c3c2144457a56eba7129b",
      "parents": [
        "a51cd2be864a3cc0272359b1995e213341dfc7e7"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "octavian.purdila@intel.com",
        "time": "Fri Jan 27 19:32:39 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:26 2012 +0200"
      },
      "message": "Bluetooth: Fix RFCOMM session reference counting issue\n\nThere is an imbalance in the rfcomm_session_hold / rfcomm_session_put\noperations which causes the following crash:\n\n[  685.010159] BUG: unable to handle kernel paging request at 6b6b6b6b\n[  685.010169] IP: [\u003cc149d76d\u003e] rfcomm_process_dlcs+0x1b/0x15e\n[  685.010181] *pdpt \u003d 000000002d665001 *pde \u003d 0000000000000000\n[  685.010191] Oops: 0000 [#1] PREEMPT SMP\n[  685.010247]\n[  685.010255] Pid: 947, comm: krfcommd Tainted: G         C  3.0.16-mid8-dirty #44\n[  685.010266] EIP: 0060:[\u003cc149d76d\u003e] EFLAGS: 00010246 CPU: 1\n[  685.010274] EIP is at rfcomm_process_dlcs+0x1b/0x15e\n[  685.010281] EAX: e79f551c EBX: 6b6b6b6b ECX: 00000007 EDX: e79f40b4\n[  685.010288] ESI: e79f4060 EDI: ed4e1f70 EBP: ed4e1f68 ESP: ed4e1f50\n[  685.010295]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\n[  685.010303] Process krfcommd (pid: 947, ti\u003ded4e0000 task\u003ded43e5e0 task.ti\u003ded4e0000)\n[  685.010308] Stack:\n[  685.010312]  ed4e1f68 c149eb53 e5925150 e79f4060 ed500000 ed4e1f70 ed4e1f80 c149ec10\n[  685.010331]  00000000 ed43e5e0 00000000 ed4e1f90 ed4e1f9c c149ec87 0000bf54 00000000\n[  685.010348]  00000000 ee03bf54 c149ec37 ed4e1fe4 c104fe01 00000000 00000000 00000000\n[  685.010367] Call Trace:\n[  685.010376]  [\u003cc149eb53\u003e] ? rfcomm_process_rx+0x6e/0x74\n[  685.010387]  [\u003cc149ec10\u003e] rfcomm_process_sessions+0xb7/0xde\n[  685.010398]  [\u003cc149ec87\u003e] rfcomm_run+0x50/0x6d\n[  685.010409]  [\u003cc149ec37\u003e] ? rfcomm_process_sessions+0xde/0xde\n[  685.010419]  [\u003cc104fe01\u003e] kthread+0x63/0x68\n[  685.010431]  [\u003cc104fd9e\u003e] ? __init_kthread_worker+0x42/0x42\n[  685.010442]  [\u003cc14dae82\u003e] kernel_thread_helper+0x6/0xd\n\nThis issue has been brought up earlier here:\n\nhttps://lkml.org/lkml/2011/5/21/127\n\nThe issue appears to be the rfcomm_session_put in rfcomm_recv_ua. This\noperation doesn\u0027t seem be to required as for the non-initiator case we\nhave the rfcomm_process_rx doing an explicit put and in the initiator\ncase the last dlc_unlink will drive the reference counter to 0.\n\nThere have been several attempts to fix these issue:\n\n6c2718d Bluetooth: Do not call rfcomm_session_put() for RFCOMM UA on closed socket\n683d949 Bluetooth: Never deallocate a session when some DLC points to it\n\nbut AFAICS they do not fix the issue just make it harder to reproduce.\n\nSigned-off-by: Octavian Purdila \u003coctavian.purdila@intel.com\u003e\nSigned-off-by: Gopala Krishna Murala \u003cgopala.krishna.murala@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b5a30dda6598af216c070165ece6068f9f00f33a",
      "tree": "049eff0341a243dbd02af3c83a7166f941177833",
      "parents": [
        "331660637b4e5136602a98200a84f6b65ed8d5be"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "tavi.purdila@gmail.com",
        "time": "Sun Jan 22 00:28:34 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:26 2012 +0200"
      },
      "message": "Bluetooth: silence lockdep warning\n\nSince bluetooth uses multiple protocols types, to avoid lockdep\nwarnings, we need to use different lockdep classes (one for each\nprotocol type).\n\nThis is already done in bt_sock_create but it misses a couple of cases\nwhen new connections are created. This patch corrects that to fix the\nfollowing warning:\n\n\u003c4\u003e[ 1864.732366] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003c4\u003e[ 1864.733030] [ INFO: possible circular locking dependency detected ]\n\u003c4\u003e[ 1864.733544] 3.0.16-mid3-00007-gc9a0f62 #3\n\u003c4\u003e[ 1864.733883] -------------------------------------------------------\n\u003c4\u003e[ 1864.734408] t.android.btclc/4204 is trying to acquire lock:\n\u003c4\u003e[ 1864.734869]  (rfcomm_mutex){+.+.+.}, at: [\u003cc14970ea\u003e] rfcomm_dlc_close+0x15/0x30\n\u003c4\u003e[ 1864.735541]\n\u003c4\u003e[ 1864.735549] but task is already holding lock:\n\u003c4\u003e[ 1864.736045]  (sk_lock-AF_BLUETOOTH){+.+.+.}, at: [\u003cc1498bf7\u003e] lock_sock+0xa/0xc\n\u003c4\u003e[ 1864.736732]\n\u003c4\u003e[ 1864.736740] which lock already depends on the new lock.\n\u003c4\u003e[ 1864.736750]\n\u003c4\u003e[ 1864.737428]\n\u003c4\u003e[ 1864.737437] the existing dependency chain (in reverse order) is:\n\u003c4\u003e[ 1864.738016]\n\u003c4\u003e[ 1864.738023] -\u003e #1 (sk_lock-AF_BLUETOOTH){+.+.+.}:\n\u003c4\u003e[ 1864.738549]        [\u003cc1062273\u003e] lock_acquire+0x104/0x140\n\u003c4\u003e[ 1864.738977]        [\u003cc13d35c1\u003e] lock_sock_nested+0x58/0x68\n\u003c4\u003e[ 1864.739411]        [\u003cc1493c33\u003e] l2cap_sock_sendmsg+0x3e/0x76\n\u003c4\u003e[ 1864.739858]        [\u003cc13d06c3\u003e] __sock_sendmsg+0x50/0x59\n\u003c4\u003e[ 1864.740279]        [\u003cc13d0ea2\u003e] sock_sendmsg+0x94/0xa8\n\u003c4\u003e[ 1864.740687]        [\u003cc13d0ede\u003e] kernel_sendmsg+0x28/0x37\n\u003c4\u003e[ 1864.741106]        [\u003cc14969ca\u003e] rfcomm_send_frame+0x30/0x38\n\u003c4\u003e[ 1864.741542]        [\u003cc1496a2a\u003e] rfcomm_send_ua+0x58/0x5a\n\u003c4\u003e[ 1864.741959]        [\u003cc1498447\u003e] rfcomm_run+0x441/0xb52\n\u003c4\u003e[ 1864.742365]        [\u003cc104f095\u003e] kthread+0x63/0x68\n\u003c4\u003e[ 1864.742742]        [\u003cc14d5182\u003e] kernel_thread_helper+0x6/0xd\n\u003c4\u003e[ 1864.743187]\n\u003c4\u003e[ 1864.743193] -\u003e #0 (rfcomm_mutex){+.+.+.}:\n\u003c4\u003e[ 1864.743667]        [\u003cc1061ada\u003e] __lock_acquire+0x988/0xc00\n\u003c4\u003e[ 1864.744100]        [\u003cc1062273\u003e] lock_acquire+0x104/0x140\n\u003c4\u003e[ 1864.744519]        [\u003cc14d2c70\u003e] __mutex_lock_common+0x3b/0x33f\n\u003c4\u003e[ 1864.744975]        [\u003cc14d303e\u003e] mutex_lock_nested+0x2d/0x36\n\u003c4\u003e[ 1864.745412]        [\u003cc14970ea\u003e] rfcomm_dlc_close+0x15/0x30\n\u003c4\u003e[ 1864.745842]        [\u003cc14990d9\u003e] __rfcomm_sock_close+0x5f/0x6b\n\u003c4\u003e[ 1864.746288]        [\u003cc1499114\u003e] rfcomm_sock_shutdown+0x2f/0x62\n\u003c4\u003e[ 1864.746737]        [\u003cc13d275d\u003e] sys_socketcall+0x1db/0x422\n\u003c4\u003e[ 1864.747165]        [\u003cc14d42f0\u003e] syscall_call+0x7/0xb\n\nSigned-off-by: Octavian Purdila \u003coctavian.purdila@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "6e1da683f79a22fafaada62d547138daaa9e3456",
      "tree": "d3502a1dd0a2df2d13e9d53a70042f68381e0ee3",
      "parents": [
        "a63752552b95624a9f1dfa3d763870f72f964ad0"
      ],
      "author": {
        "name": "Andrzej Kaczmarek",
        "email": "andrzej.kaczmarek@tieto.com",
        "time": "Wed Jan 04 12:10:42 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:25 2012 +0200"
      },
      "message": "Bluetooth: l2cap_set_timer needs jiffies as timeout value\n\nAfter moving L2CAP timers to workqueues l2cap_set_timer expects timeout\nvalue to be specified in jiffies but constants defined in miliseconds\nare used. This makes timeouts unreliable when CONFIG_HZ is not set to\n1000.\n\n__set_chan_timer macro still uses jiffies as input to avoid multiple\nconversions from/to jiffies for sk_sndtimeo value which is already\nspecified in jiffies.\n\nSigned-off-by: Andrzej Kaczmarek \u003candrzej.kaczmarek@tieto.com\u003e\nAckec-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "a63752552b95624a9f1dfa3d763870f72f964ad0",
      "tree": "a18d24a87e98bad9965731a0282fe0216f73a439",
      "parents": [
        "4aa832c27edf902130f8bace1d42cf22468823fa"
      ],
      "author": {
        "name": "Andrzej Kaczmarek",
        "email": "andrzej.kaczmarek@tieto.com",
        "time": "Wed Jan 04 12:10:41 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:25 2012 +0200"
      },
      "message": "Bluetooth: Fix sk_sndtimeo initialization for L2CAP socket\n\nsk_sndtime value should be specified in jiffies thus initial value\nneeds to be converted from miliseconds. Otherwise this timeout is\nunreliable when CONFIG_HZ is not set to 1000.\n\nSigned-off-by: Andrzej Kaczmarek \u003candrzej.kaczmarek@tieto.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "4aa832c27edf902130f8bace1d42cf22468823fa",
      "tree": "0145f7d8455de5a7e06a3b9be52f2c2ac3857bb2",
      "parents": [
        "19ad9e94f6e2b4b3e1feccfb2466eb6e3e5b8c2a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Jan 08 22:51:16 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:25 2012 +0200"
      },
      "message": "Bluetooth: Remove bogus inline declaration from l2cap_chan_connect\n\nAs reported by Dan Carpenter this function causes a Sparse warning and\nshouldn\u0027t be declared inline:\n\ninclude/net/bluetooth/l2cap.h:837:30 error: marked inline, but without a\ndefinition\"\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "18daf1644e634bae951a6e3d4d19d89170209762",
      "tree": "e4d467a93904208cb2c421868646b1cd8f33b34e",
      "parents": [
        "c27111e5b8d6b1e9296f7075cdc35872f672b524"
      ],
      "author": {
        "name": "Peter Hurley",
        "email": "peter@hurleysoftware.com",
        "time": "Fri Jan 13 15:11:30 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 15 13:09:25 2012 +0200"
      },
      "message": "Bluetooth: Fix l2cap conn failures for ssp devices\n\nCommit 330605423c fixed l2cap conn establishment for non-ssp remote\ndevices by not setting HCI_CONN_ENCRYPT_PEND every time conn security\nis tested (which was always returning failure on any subsequent\nsecurity checks).\n\nHowever, this broke l2cap conn establishment for ssp remote devices\nwhen an ACL link was already established at SDP-level security. This\nfix ensures that encryption must be pending whenever authentication\nis also pending.\n\nSigned-off-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nTested-by: Daniel Wagner \u003cdaniel.wagner@bmw-carit.de\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "2dd106887d6503819f2cedc408497023547439bb",
      "tree": "376decf2b0c78a54c58493b92ab6f5c0b1951d7a",
      "parents": [
        "3dc07322b1ce3c8477690d54ebbf15a165f43066"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Feb 09 21:58:34 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:38 2012 +0200"
      },
      "message": "Bluetooth: Use proper datatypes in release-callbacks\n\nThis enhances code readability a lot and avoids using void* even though\nwe know the type of the variable.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3dc07322b1ce3c8477690d54ebbf15a165f43066",
      "tree": "c66786eff790fdb08747b3f92ee5014a5569d4e8",
      "parents": [
        "155961e8001719af6d87cbcc961111e8ce477843"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Feb 09 21:58:33 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:37 2012 +0200"
      },
      "message": "Bluetooth: Introduce to_hci_conn\n\nThis avoids using the dev_set/get_drvdata() functions to retrieve a\npointer to our own structure. We can use simple pointer arithmetic here.\nThe drvdata field is actually not needed by any other code-path but this\nmakes the code more consistent with hci_dev.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "aa2b86d761a95068354511de755695ef6b53afc7",
      "tree": "704eeeb173b859311ebc23d6881fa40575f43851",
      "parents": [
        "b1078ad0be344e7bec6e7991f33df17565d24e08"
      ],
      "author": {
        "name": "David Herrmann",
        "email": "dh.herrmann@googlemail.com",
        "time": "Thu Feb 09 21:58:30 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:37 2012 +0200"
      },
      "message": "Bluetooth: Introduce to_hci_dev()\n\nWe currently use dev_set_drvdata to keep a pointer to ourself. This\ndoesn\u0027t make sense as we are the bus and not a driver. Therefore,\nintroduce to_hci_dev() so we can get a struct hci_dev pointer from a\nstruct device pointer.\n\ndev_set/get_drvdata() is reserved for drivers that provide a device and\nnot for the bus using the device. The bus can use simple pointer\narithmetic to retrieve its private data.\n\nSigned-off-by: David Herrmann \u003cdh.herrmann@googlemail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b1078ad0be344e7bec6e7991f33df17565d24e08",
      "tree": "959a51367996856bcb0be46a7712bde0b2225a8f",
      "parents": [
        "82eb703efc2ad2ac52cada85a5119bb9dfcea942"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 17:21:16 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:37 2012 +0200"
      },
      "message": "Bluetooth: Add Device Unpaired mgmt event\n\nThis patch add a new Device Unpaired mgmt event. This will be sent to\nall mgmt sockets except the one that requested unpairing (that socket\nwill get a command complete instead). The event is also reserved for\nfuture SMP updates where a remote device will be able to request pairing\nrevocation from us.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "82eb703efc2ad2ac52cada85a5119bb9dfcea942",
      "tree": "a3c772d239cb6705f116f74de687b5aca24849c4",
      "parents": [
        "bab73cb68435232ba78a4bd1ac1a85862e3be0bb"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 17:19:27 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:37 2012 +0200"
      },
      "message": "Bluetooth: Fix mgmt_unpair_device command status\n\nThe default response status to unpair_device should be set as 0 instead\nof a generic failure value. When disconnection is not needed (i.e. we\ncan reply imediately) we should return success and not failure.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "bab73cb68435232ba78a4bd1ac1a85862e3be0bb",
      "tree": "befa66506373f8e5d3a3cec6f48eea5d5bee892e",
      "parents": [
        "88c1fe4ba55c7245ad2f3c81689f854287875121"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 16:07:29 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:37 2012 +0200"
      },
      "message": "Bluetooth: Add address type to mgmt_ev_auth_failed\n\nThis patch updates the Authentication Failed mgmt event to match the\nlatest API specification by adding an address type to it.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "88c1fe4ba55c7245ad2f3c81689f854287875121",
      "tree": "69447c418d6f4560df19bc1a69a98a49cda0d4c9",
      "parents": [
        "664ce4cc293cd6c76236617f78689d0e03e69287"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 15:56:11 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:36 2012 +0200"
      },
      "message": "Bluetooth: Add address type to mgmt blacklist messages\n\nThis patch updates the implmentation for mgmt_block_device and\nmgmt_unblock_device and their corresponding events to match the latest\nAPI specification.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "664ce4cc293cd6c76236617f78689d0e03e69287",
      "tree": "870448a60770298e686cecddff6eafbfcd9f2792",
      "parents": [
        "272d90df2d4d065e782cafb08358bd8918bf703a"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 15:44:09 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:36 2012 +0200"
      },
      "message": "Bluetooth: Add address type to Out Of Band mgmt messages\n\nThis patch updates the implementation for these mgmt to be up to date\nwith the latest API specification. Right now the address type isn\u0027t\nactually used for anything but that might change in the future.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "272d90df2d4d065e782cafb08358bd8918bf703a",
      "tree": "a39907ac765574b8b0bf087a7aa0f37cc580d5a7",
      "parents": [
        "88c3df13ca06718e5a8f509ae9cbb1228c10d537"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 15:26:12 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:36 2012 +0200"
      },
      "message": "Bluetooth: Add address type to user_confirm and user_passkey messages\n\nThis patch upadate the user confirm and user passkey mgmt messages to\nmatch the latest API specification by adding an address type parameter\nto them.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "88c3df13ca06718e5a8f509ae9cbb1228c10d537",
      "tree": "89bd9706f5c1924174b9284239510a3f0de2ebc2",
      "parents": [
        "124f6e35286c9d8dc96f147a9026081256136615"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 14:27:38 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:36 2012 +0200"
      },
      "message": "Bluetooth: Update mgmt_disconnect to match latest API\n\nThis patch adds an address type parameter to the disconnect command and\nresponse in order to match the latest mgmt API specification.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "124f6e35286c9d8dc96f147a9026081256136615",
      "tree": "6178d641e93808c34e3fecda4eb76dc4b6748e06",
      "parents": [
        "930fa4aee934ad59ed82163cdbee4922b883ef79"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 09 13:50:12 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:36 2012 +0200"
      },
      "message": "Bluetooth: Update and rename mgmt_remove_keys to mgmt_unpair_device\n\nThis patch renames the mgmt_remove_keys command to mgmt_unpair_device\nand updates its parameters to match the latest API (specifically, it\nadds an address type parameter to the command and its response).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "930fa4aee934ad59ed82163cdbee4922b883ef79",
      "tree": "f83ecf592f5462ba4c5d644971111083ef56c206",
      "parents": [
        "8ed7a0ae7834cbefb82ed15a92e36983924efa23"
      ],
      "author": {
        "name": "Szymon Janc",
        "email": "szymon.janc@tieto.com",
        "time": "Tue Feb 07 15:43:02 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Fix double acking I-Frames when sending pending I-Frames\n\nPending I-Frame(s) are considered as acknowledgement. To void double\nacking (via I-Frame and later via RR) clear ack timer when sending\nfirst pending I-Frame.\n\nSigned-off-by: Szymon Janc \u003cszymon.janc@tieto.com\u003e\nSigned-off-by: Luiz Augusto von Dentz \u003cluiz.von.dentz@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "8ed7a0ae7834cbefb82ed15a92e36983924efa23",
      "tree": "96cbe9f236a41556dde36c6d92e2355b4047f7b6",
      "parents": [
        "6d5922b01b5e8d684dae5baaea596a4a749738e3"
      ],
      "author": {
        "name": "Szymon Janc",
        "email": "szymon.janc@tieto.com",
        "time": "Tue Feb 07 15:43:01 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Fix possible missing I-Frame acknowledgement\n\nMake l2cap_ertm_send return number of pending I-Frames transmitted\ninstead of all (pending + retransmitted) I-Frames transmitted.\n\nAs only pending I-Frames are considered as acknowledgement, this could\nlead to situation when no ACK was sent in __l2cap_send_ack (if only\nalready transmitted I-Frames were retransmitted).\n\nSigned-off-by: Szymon Janc \u003cszymon.janc@tieto.com\u003e\nSigned-off-by: Luiz Augusto von Dentz \u003cluiz.von.dentz@intel.com\u003e\nAcked-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "6d5922b01b5e8d684dae5baaea596a4a749738e3",
      "tree": "016c93f7ba63a41fc706b843b04ad23435bd96d4",
      "parents": [
        "5491120e75afe2a7f5b6f3a207de6d99934e5475"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Feb 06 15:04:01 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Remove unneeded sk variable\n\nIn debug use chan %p instead of sk.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "5491120e75afe2a7f5b6f3a207de6d99934e5475",
      "tree": "12de6296d25e7bda4a82188c73fb7368d21ddede",
      "parents": [
        "cf4cd00915c659dc7b496c454bee36bb6b833fd1"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Feb 06 15:04:00 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Clean up l2cap_chan_add\n\nChange elseif to switch. This make sense even more with following\npatches which otherwise have to add more elseifs statements.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "cf4cd00915c659dc7b496c454bee36bb6b833fd1",
      "tree": "71dab8e537f308fa63451304422912c7cd7032f5",
      "parents": [
        "343fb14549a736b348b08e702057487a7ec44d5d"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Feb 06 15:03:59 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Change chan_ready param from sk to chan\n\nChange is needed to remove dependency on sk when possible\nbefore introducing l2cap channel lock.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "343fb14549a736b348b08e702057487a7ec44d5d",
      "tree": "0ccfa084bd7efd8e09d57676423ce62a5234d788",
      "parents": [
        "053c7e0c4a40e2bb44e3c1e61e263be00688a136"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Tue Nov 22 17:14:19 2011 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Add BT_DBG to mgmt_discovering()\n\nThis is helpful for device discovery implementation \u0026 debuging.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "053c7e0c4a40e2bb44e3c1e61e263be00688a136",
      "tree": "11017e93d2bd532e745e53b240769a9b0f235b59",
      "parents": [
        "e87775250f322b8f1612cf9918fcde827948f087"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sat Feb 04 00:06:00 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:35 2012 +0200"
      },
      "message": "Bluetooth: Fix device_found event length for remote name resolving\n\nThe correct length of the event is the size of the ev struct (not size\nof the pointer like the code was previously using) plus the length of\nthe variable-sized EIR data at the end of the struct.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e87775250f322b8f1612cf9918fcde827948f087",
      "tree": "a7d11ff53b35ff404a9719d7e8c6bc3c1d9c88aa",
      "parents": [
        "3fd2415363629b779549705f341e0645e32c1ad5"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:48:02 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: Fix indentation\n\nThis patch fixes a #define indentation in mgmt.c.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3fd2415363629b779549705f341e0645e32c1ad5",
      "tree": "4203df133dbbe7c65b7d4c1b0f63780c19afc276",
      "parents": [
        "28b75a89480df99a17c8facd5c33985847d06bb6"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:48:01 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: MGMT start discovery LE-Only support\n\nThis patch adds LE-Only discovery procedure support to MGMT Start\nDiscovery command.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "28b75a89480df99a17c8facd5c33985847d06bb6",
      "tree": "ddb050dd79624ed01e12d1d072f8be646a15815f",
      "parents": [
        "7ba8b4be38e7c83b2b13333a82a0ecde921a7390"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:48:00 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: Add hci_le_scan()\n\nWe are not supposed to block in start_discovery() because\nstart_discovery code is running in write() syscall context\nand this would block the write operation on the mgmt socket.\nThis way, we cannot directly call hci_do_le_scan() to scan\nLE devices in start_discovery(). To overcome this issue a\nderefered work (hdev-\u003ele_scan) was created so we can properly\ncall hci_do_le_scan().\n\nThe helper function hci_le_scan() simply set LE scan parameters\nand queue hdev-\u003ele_scan work. The work is queued on system_long_wq\nsince it can sleep for a few seconds in the worst case (timeout).\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "7ba8b4be38e7c83b2b13333a82a0ecde921a7390",
      "tree": "1ad9bb8b0eafed266538a2e238649149439ccc29",
      "parents": [
        "6fbe195dc41c4fae1fa7aca1a38c888de1d24e2d"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:47:59 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: Add hci_do_le_scan()\n\nThis patch adds to hci_core the hci_do_le_scan function which\nshould be used to scan LE devices.\n\nIn order to enable LE scan, hci_do_le_scan() sends commands (Set\nLE Scan Parameters and Set LE Scan Enable) to the controller and\nwaits for its results. If commands were executed successfully a\ndelayed work is scheduled to disable the ongoing scanning after\nsome amount of time. This function blocks.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "6fbe195dc41c4fae1fa7aca1a38c888de1d24e2d",
      "tree": "b5435e95b512dae5861da07bd1daeddcdd1f7d97",
      "parents": [
        "c599008f8f999dab8cb4a6404be99bdc4716ba15"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:47:58 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: Minor code refactoring\n\nThis patch does a trivial code refacting in hci_discovery_active.\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "c599008f8f999dab8cb4a6404be99bdc4716ba15",
      "tree": "c67e858a2ef7e8ebebeeaec95e6d3f9ec9afe0a6",
      "parents": [
        "8af59467412b4b61850d3ccb3737c09ecc6dc100"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "andre.guedes@openbossa.org",
        "time": "Fri Feb 03 17:47:57 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: LE scan should send Discovering events\n\nSend MGMT Discovering events once LE scan starts/stops so the\nuserspace can track when local adapters are discovering LE devices.\n\nThis way, we also keep the same behavior of inquiry which sends MGMT\nDiscovering events once inquiry starts/stops even if it is triggered\nby an external tool (e.g. hcitool).\n\nSigned-off-by: Andre Guedes \u003candre.guedes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "8af59467412b4b61850d3ccb3737c09ecc6dc100",
      "tree": "602bcf2ebbc6f1b6152cc92f2fcdf87b0fb6325f",
      "parents": [
        "63d2bc1b9a4d77f90b9719c3ff2570a274a7a22f"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Feb 03 21:29:40 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:34 2012 +0200"
      },
      "message": "Bluetooth: Add missing QUIRK_NO_RESET test to hci_dev_do_close\n\nWe should only perform a reset in hci_dev_do_close if the\nHCI_QUIRK_NO_RESET flag is set (since in such a case a reset will not be\nperformed when initializing the device).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "63d2bc1b9a4d77f90b9719c3ff2570a274a7a22f",
      "tree": "f5dc74ff50c858b3177ed5613dd545fe4a9761f4",
      "parents": [
        "b71d385a18cd4516c62d0198c9ec37e658112f75"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Feb 03 16:27:55 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Helper removes duplicated code\n\nUse __check_timout helper to remove duplicated code\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nReviewed-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b71d385a18cd4516c62d0198c9ec37e658112f75",
      "tree": "e949e47dcf5bed04b0846433e095f857ac5758fd",
      "parents": [
        "261cc5aa9e54aac633dcc3b6469739cb6e23e21a"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Fri Feb 03 16:27:54 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Recalculate sched HCI blk/pkt flow ctrl\n\nSplit HCI scheduling for block and packet flow control.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "261cc5aa9e54aac633dcc3b6469739cb6e23e21a",
      "tree": "52d39d6a4c9b83998e5fe64e6e448e6d429e775d",
      "parents": [
        "f9c5f9ddcfc404b5d4c079452755337d84c97707"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:08:05 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Add support for notifying userspace of new LTK\u0027s\n\nIf we want to have proper pairing support over LE we need to\ninform userspace that a new LTK is available, so userspace\ncan store that key permanently.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b0dbfb46ba0c0d2fe4c90e2046f7b36275763a7e",
      "tree": "1251bab1d951ff7c42f9f2e3d8f0b4d35b808d83",
      "parents": [
        "346af67b8d116f01ef696fd47959a55deb2db8b6"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:08:03 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Add support for removing LTK\u0027s when pairing is removed\n\nInstead of having a separated command for removing SMP keys, we use the\nRemove Keys command to remove *all* keys.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "346af67b8d116f01ef696fd47959a55deb2db8b6",
      "tree": "ca22e1b5d479f35550893c530bab69446362ae66",
      "parents": [
        "c9839a11c0e460a2457e7cac76650d07773e6c3b"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:08:02 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Add MGMT handlers for dealing with SMP LTK\u0027s\n\nThis adds a method to notify that a new LTK is available and\na handler to store keys coming from userspace into the kernel LTK\nlist.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "c9839a11c0e460a2457e7cac76650d07773e6c3b",
      "tree": "053e815839a9dcc099bad50863acb63eed884857",
      "parents": [
        "b899efaf9b26cadb084752862490b4fc44bc3169"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:08:01 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:33 2012 +0200"
      },
      "message": "Bluetooth: Use the updated key structures for handling LTKs\n\nThis updates all the users of the older way, that was using the\nlink_keys list to store the SMP keys, to use the new way.\n\nThis includes defining new types for the keys, we have a type for each\ncombination of STK/LTK and Master/Slave.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b899efaf9b26cadb084752862490b4fc44bc3169",
      "tree": "f0fc1dae801b98ae8b525798a48c292cfaf15329",
      "parents": [
        "650f726d16a3f25153d785b531516f6e90d2014f"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:08:00 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: Add new structures for handling SMP Long Term Keys\n\nThis includes a new list for storing the keys and a new structure used\nto represent each key.\n\nSome notes: authenticated is used to identify that the key may be used\nto setup a HIGH security link. As the same list is used to store both\nthe STK\u0027s and the LTK\u0027s the type field is used so we can separate\nbetween those two types of keys and if the key should be used when\nin the master or slave role.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "650f726d16a3f25153d785b531516f6e90d2014f",
      "tree": "606cc339e2b3f8f2633ed1503b73dc53212f780c",
      "parents": [
        "37305cf649689a4d2341dd6fd89b091c6007f9ba"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Feb 02 21:07:59 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: Fix doing some useless casts when receiving MGMT commands\n\nEvery command handler of mgmt does a cast to the command structure\nso it can properly interpreted. So we can avoid that cast if we\nmake those functions receive a void * directly.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "2a5a5ec620a29d4ba07743c3151cdf0a417c8f8c",
      "tree": "a135890c9ad5aedd305f0ad905fb81ddaeddfddf",
      "parents": [
        "3c4e0df028935618d052235ba85bc7079be13394"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Feb 02 10:32:18 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: Use list _safe deleting from conn chan_list\n\nFixes possible bug when deleting element from the list in\nfunction hci_chan_list_flush. list_for_each_entry_rcu is used\nand after deleting element from the list we also free pointer\nand then list_entry_rcu is taken from freed pointer.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3c4e0df028935618d052235ba85bc7079be13394",
      "tree": "a50e03fa57a86c0e3aa6c46bda9931ec6b208884",
      "parents": [
        "28424707a2e4ad38ab546d2ed5e3d6b035a84258"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Thu Feb 02 10:32:17 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: Use list _safe deleting from conn_hash_list\n\nUse list_for_each_entry_safe which is safe version against removal\nof list entry. Otherwise we remove hci_conn element and reference\nnext element which result in accessing LIST_POISON.\n\n[   95.571834] Bluetooth: unknown link type 127\n[   95.578349] BUG: unable to handle kernel paging request at 20002000\n[   95.580236] IP: [\u003c20002000\u003e] 0x20001fff\n[   95.580763] *pde \u003d 00000000\n[   95.581196] Oops: 0000 [#1] SMP\n...\n[   95.582298] Pid: 3355, comm: hciconfig Tainted: G   O 3.2.0-VirttualBox\n[   95.582298] EIP: 0060:[\u003c20002000\u003e] EFLAGS: 00210206 CPU: 0\n[   95.582298] EIP is at 0x20002000\n...\n[   95.582298] Call Trace:\n[   95.582298]  [\u003cf8231ab6\u003e] ? hci_conn_hash_flush+0x76/0xf0 [bluetooth]\n[   95.582298]  [\u003cf822bcb1\u003e] hci_dev_do_close+0xc1/0x2e0 [bluetooth]\n[   95.582298]  [\u003cf822d679\u003e] ? hci_dev_get+0x69/0xb0 [bluetooth]\n[   95.582298]  [\u003cf822e1da\u003e] hci_dev_close+0x2a/0x50 [bluetooth]\n[   95.582298]  [\u003cf824102f\u003e] hci_sock_ioctl+0x1af/0x3f0 [bluetooth]\n[   95.582298]  [\u003cc11153ea\u003e] ? handle_pte_fault+0x8a/0x8f0\n[   95.582298]  [\u003cc146becf\u003e] sock_ioctl+0x5f/0x260\n[   95.582298]  [\u003cc146be70\u003e] ? sock_fasync+0x90/0x90\n[   95.582298]  [\u003cc1152b33\u003e] do_vfs_ioctl+0x83/0x5b0\n[   95.582298]  [\u003cc1563f87\u003e] ? do_page_fault+0x297/0x500\n[   95.582298]  [\u003cc1563cf0\u003e] ? spurious_fault+0xd0/0xd0\n[   95.582298]  [\u003cc107165b\u003e] ? up_read+0x1b/0x30\n[   95.582298]  [\u003cc1563f87\u003e] ? do_page_fault+0x297/0x500\n[   95.582298]  [\u003cc100aa9f\u003e] ? init_fpu+0xef/0x160\n[   95.582298]  [\u003cc15617c0\u003e] ? do_debug+0x180/0x180\n[   95.582298]  [\u003cc100a958\u003e] ? fpu_finit+0x28/0x80\n[   95.582298]  [\u003cc11530e7\u003e] sys_ioctl+0x87/0x90\n[   95.582298]  [\u003cc156795f\u003e] sysenter_do_call+0x12/0x38\n...\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "28424707a2e4ad38ab546d2ed5e3d6b035a84258",
      "tree": "60fd8524c956047add2055b350dc600f3d24ff36",
      "parents": [
        "95947a391ebe685b9870cd25cac1433aedf5d49c"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Feb 02 04:02:29 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Implement Cancel Pair Device command\n\nThis patch implements the Cancel Pair Device command for mgmt. It\u0027s used\nby user space to cancel an ongoing pairing attempt which was triggered\nby the Pair Device command.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "95947a391ebe685b9870cd25cac1433aedf5d49c",
      "tree": "8b4b7278359613d76ff9a8d20a0c6800f08c08bd",
      "parents": [
        "7a7f1e7c857959f5298020969741e389f21edbae"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemant.gupta@stericsson.com",
        "time": "Mon Jan 23 15:36:11 2012 +0530"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:32 2012 +0200"
      },
      "message": "Bluetooth: Fix clearing of debug and linkkey flags\n\nThis patch fixes clearing of HCI_LINK_KEYS and HCI_DEBUG_KEYS\ndev_flags while resetting. Without this patch pairing does\nnot work over management interface for BR-EDR devices.\n\nSigned-off-by: Hemant Gupta \u003chemant.gupta@stericsson.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "7a7f1e7c857959f5298020969741e389f21edbae",
      "tree": "2735825da06d14d483680423d07d000e6bee21d4",
      "parents": [
        "b7d05bad1c10a363b6b99f66ac1fa76b6892e618"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemant.gupta@stericsson.com",
        "time": "Mon Jan 16 13:34:29 2012 +0530"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:31 2012 +0200"
      },
      "message": "Bluetooth: Send correct response to IO Capability Request\n\nThis patch sends correct IO Capability response to remote device\nin case Local Device supports KeyBoardDisplay IO Capability as\nthis capability is not valid as per BT spec for IO capability\nRequest Reply Command.\nThis capability is mapped to DisplayYesNo which is in accordance\nwith BT spec.\n\nSigned-off-by: Hemant Gupta \u003chemant.gupta@stericsson.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "b7d05bad1c10a363b6b99f66ac1fa76b6892e618",
      "tree": "f91706b1946c634cab519f9868e529cec289be8d",
      "parents": [
        "9ef866adf9602238c2e83e951a72a1037d4179de"
      ],
      "author": {
        "name": "Peter Hurley",
        "email": "peter@hurleysoftware.com",
        "time": "Fri Jan 13 15:11:30 2012 +0100"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:31 2012 +0200"
      },
      "message": "Bluetooth: Fix l2cap conn failures for ssp devices\n\nCommit 330605423c fixed l2cap conn establishment for non-ssp remote\ndevices by not setting HCI_CONN_ENCRYPT_PEND every time conn security\nis tested (which was always returning failure on any subsequent\nsecurity checks).\n\nHowever, this broke l2cap conn establishment for ssp remote devices\nwhen an ACL link was already established at SDP-level security. This\nfix ensures that encryption must be pending whenever authentication\nis also pending.\n\nSigned-off-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nTested-by: Daniel Wagner \u003cdaniel.wagner@bmw-carit.de\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "f1c09c07cd1a6c1676c4df6450d2b28875e184c1",
      "tree": "5056e05979ddddaa25279379bb7b7d2d91978c0a",
      "parents": [
        "66f01296962dfebf032c18ffe61c53a199b4a7bd"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Wed Feb 01 18:27:56 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:31 2012 +0200"
      },
      "message": "Bluetooth: Fix invalid memory access when there\u0027s no SMP channel\n\nWe only should try to free the SMP channel that was created if there\nis a pending SMP session.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "66f01296962dfebf032c18ffe61c53a199b4a7bd",
      "tree": "f352f1e197cb0c8c7a9b959c0e1061df08433f38",
      "parents": [
        "4777bfdebbddc1f58d9148de5a3e00375d063768"
      ],
      "author": {
        "name": "Octavian Purdila",
        "email": "octavian.purdila@intel.com",
        "time": "Fri Jan 27 19:32:39 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:31 2012 +0200"
      },
      "message": "Bluetooth: Fix RFCOMM session reference counting issue\n\nThere is an imbalance in the rfcomm_session_hold / rfcomm_session_put\noperations which causes the following crash:\n\n[  685.010159] BUG: unable to handle kernel paging request at 6b6b6b6b\n[  685.010169] IP: [\u003cc149d76d\u003e] rfcomm_process_dlcs+0x1b/0x15e\n[  685.010181] *pdpt \u003d 000000002d665001 *pde \u003d 0000000000000000\n[  685.010191] Oops: 0000 [#1] PREEMPT SMP\n[  685.010247]\n[  685.010255] Pid: 947, comm: krfcommd Tainted: G         C  3.0.16-mid8-dirty #44\n[  685.010266] EIP: 0060:[\u003cc149d76d\u003e] EFLAGS: 00010246 CPU: 1\n[  685.010274] EIP is at rfcomm_process_dlcs+0x1b/0x15e\n[  685.010281] EAX: e79f551c EBX: 6b6b6b6b ECX: 00000007 EDX: e79f40b4\n[  685.010288] ESI: e79f4060 EDI: ed4e1f70 EBP: ed4e1f68 ESP: ed4e1f50\n[  685.010295]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068\n[  685.010303] Process krfcommd (pid: 947, ti\u003ded4e0000 task\u003ded43e5e0 task.ti\u003ded4e0000)\n[  685.010308] Stack:\n[  685.010312]  ed4e1f68 c149eb53 e5925150 e79f4060 ed500000 ed4e1f70 ed4e1f80 c149ec10\n[  685.010331]  00000000 ed43e5e0 00000000 ed4e1f90 ed4e1f9c c149ec87 0000bf54 00000000\n[  685.010348]  00000000 ee03bf54 c149ec37 ed4e1fe4 c104fe01 00000000 00000000 00000000\n[  685.010367] Call Trace:\n[  685.010376]  [\u003cc149eb53\u003e] ? rfcomm_process_rx+0x6e/0x74\n[  685.010387]  [\u003cc149ec10\u003e] rfcomm_process_sessions+0xb7/0xde\n[  685.010398]  [\u003cc149ec87\u003e] rfcomm_run+0x50/0x6d\n[  685.010409]  [\u003cc149ec37\u003e] ? rfcomm_process_sessions+0xde/0xde\n[  685.010419]  [\u003cc104fe01\u003e] kthread+0x63/0x68\n[  685.010431]  [\u003cc104fd9e\u003e] ? __init_kthread_worker+0x42/0x42\n[  685.010442]  [\u003cc14dae82\u003e] kernel_thread_helper+0x6/0xd\n\nThis issue has been brought up earlier here:\n\nhttps://lkml.org/lkml/2011/5/21/127\n\nThe issue appears to be the rfcomm_session_put in rfcomm_recv_ua. This\noperation doesn\u0027t seem be to required as for the non-initiator case we\nhave the rfcomm_process_rx doing an explicit put and in the initiator\ncase the last dlc_unlink will drive the reference counter to 0.\n\nThere have been several attempts to fix these issue:\n\n6c2718d Bluetooth: Do not call rfcomm_session_put() for RFCOMM UA on closed socket\n683d949 Bluetooth: Never deallocate a session when some DLC points to it\n\nbut AFAICS they do not fix the issue just make it harder to reproduce.\n\nSigned-off-by: Octavian Purdila \u003coctavian.purdila@intel.com\u003e\nSigned-off-by: Gopala Krishna Murala \u003cgopala.krishna.murala@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "4777bfdebbddc1f58d9148de5a3e00375d063768",
      "tree": "978361cf0f218ee1a8c72a2d73ef43e30b17a0d6",
      "parents": [
        "f7aa611a0ecf1d22f21e26279e1a3baf1db6b973"
      ],
      "author": {
        "name": "Andre Guedes",
        "email": "aguedespe@gmail.com",
        "time": "Mon Jan 30 23:31:28 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:31 2012 +0200"
      },
      "message": "Bluetooth: Use GFP_KERNEL in hci_add_adv_entry()\n\nThis function is not called in interrupt context anymore, so it\nshould use GFP_KERNEL to allocate memory.\n\nSigned-off-by: Andre Guedes \u003caguedespe@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "f7aa611a0ecf1d22f21e26279e1a3baf1db6b973",
      "tree": "66c362fa28f35bbcb01b186cdccd8332346884ab",
      "parents": [
        "27f27ed8f0f7330337297a6dbdb49472dfeef59b"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Mon Jan 30 19:29:12 2012 -0300"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:30 2012 +0200"
      },
      "message": "Bluetooth: Rename smp_key_size to enc_key_size\n\nThis makes clear that this is the size of the key used to\nencrypt the link.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "127074bfa3c11c12e0160437e31b08c6b27412a4",
      "tree": "a70a9ecb8673139263c6f4a631660d15753d9891",
      "parents": [
        "17cd3f374be6648bd46c86ff8f2a2511d3f416ee"
      ],
      "author": {
        "name": "Ulisses Furquim",
        "email": "ulisses@profusion.mobi",
        "time": "Mon Jan 30 18:26:29 2012 -0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:30 2012 +0200"
      },
      "message": "Bluetooth: Fix possible use after free in delete path\n\nWe need to use the _sync() version for cancelling the info and security\ntimer in the L2CAP connection delete path. Otherwise the delayed work\nhandler might run after the connection object is freed.\n\nSigned-off-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "17cd3f374be6648bd46c86ff8f2a2511d3f416ee",
      "tree": "18c382a43b943a164d0f6f60c4da9cc143c4fa03",
      "parents": [
        "e72acc13c770a82b4ce4a07e9716f29320eae0f8"
      ],
      "author": {
        "name": "Ulisses Furquim",
        "email": "ulisses@profusion.mobi",
        "time": "Mon Jan 30 18:26:28 2012 -0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 13 17:01:30 2012 +0200"
      },
      "message": "Bluetooth: Remove usage of __cancel_delayed_work()\n\n__cancel_delayed_work() is being used in some paths where we cannot\nsleep waiting for the delayed work to finish. However, that function\nmight return while the timer is running and the work will be queued\nagain. Replace the calls with safer cancel_delayed_work() version\nwhich spins until the timer handler finishes on other CPUs and\ncancels the delayed work.\n\nSigned-off-by: Ulisses Furquim \u003culisses@profusion.mobi\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    }
  ],
  "next": "e72acc13c770a82b4ce4a07e9716f29320eae0f8"
}
