)]}'
{
  "log": [
    {
      "commit": "7585b97a48180f754ebdade1be94092e36bef365",
      "tree": "c28a697197eef13e8f2b40ff7dd0d08fd0feb535",
      "parents": [
        "2ae9a6be5f476f3512839a4d11a8f432bfd2914c"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Wed Feb 25 18:29:52 2009 +0800"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:49 2009 +0100"
      },
      "message": "Bluetooth: Remove some pointless conditionals before kfree_skb()\n\nRemove some pointless conditionals before kfree_skb().\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "2526d3d8b2f671a7d36cc486af984052cd5a690f",
      "tree": "161cca724ce4ecddcbdfed1642af1d5df8240c3c",
      "parents": [
        "37e62f5516cfb210e64fe53457932df4341b0ad1"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 20 20:54:06 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:48 2009 +0100"
      },
      "message": "Bluetooth: Permit BT_SECURITY also for L2CAP raw sockets\n\nUserspace pairing code can be simplified if it doesn\u0027t have to fall\nback to using L2CAP_LM in the case of L2CAP raw sockets. This patch\nallows the BT_SECURITY socket option to be used for these sockets.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@nokia.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "2a517ca687232adc8f14893730644da712010ffc",
      "tree": "564d08647266370fd21ad5a0e0ee726e3f2ae113",
      "parents": [
        "8bf4794174659b06d43cc5e290cd384757374613"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 16 03:20:31 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:47 2009 +0100"
      },
      "message": "Bluetooth: Disallow usage of L2CAP CID setting for now\n\nIn the future the L2CAP layer will have full support for fixed channels\nand right now it already can export the channel assignment, but for the\nfunctions bind() and connect() the usage of only CID 0 is allowed. This\nallows an easy detection if the kernel supports fixed channels or not,\nbecause otherwise it would impossible for application to tell.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "00ae4af91d8c5b6814e2bb3bfaaf743845f989eb",
      "tree": "616da6330e5b9ca7448234fbd588c536da165d11",
      "parents": [
        "2950f21acb0f6b8fcd964485c2ebf1e06545ac20"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Feb 12 16:19:45 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:43 2009 +0100"
      },
      "message": "Bluetooth: Fix authentication requirements for L2CAP security check\n\nThe L2CAP layer can trigger the authentication via an ACL connection or\nlater on to increase the security level. When increasing the security\nlevel it didn\u0027t use the same authentication requirements when triggering\na new ACL connection. Make sure that exactly the same authentication\nrequirements are used. The only exception here are the L2CAP raw sockets\nwhich are only used for dedicated bonding.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "2950f21acb0f6b8fcd964485c2ebf1e06545ac20",
      "tree": "a38b8c5a78849b9c88df24abe51d4e9c3a35424a",
      "parents": [
        "f29972de8e7476706ab3c01304a505e7c95d9040"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Feb 12 14:02:50 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:43 2009 +0100"
      },
      "message": "Bluetooth: Ask upper layers for HCI disconnect reason\n\nSome of the qualification tests demand that in case of failures in L2CAP\nthe HCI disconnect should indicate a reason why L2CAP fails. This is a\nbluntly layer violation since multiple L2CAP connections could be using\nthe same ACL and thus forcing a disconnect reason is not a good idea.\n\nTo comply with the Bluetooth test specification, the disconnect reason\nis now stored in the L2CAP connection structure and every time a new\nL2CAP channel is added it will set back to its default. So only in the\ncase where the L2CAP channel with the disconnect reason is really the\nlast one, it will propagated to the HCI layer.\n\nThe HCI layer has been extended with a disconnect indication that allows\nit to ask upper layers for a disconnect reason. The upper layer must not\nsupport this callback and in that case it will nicely default to the\nexisting behavior. If an upper layer like L2CAP can provide a disconnect\nreason that one will be used to disconnect the ACL or SCO link.\n\nNo modification to the ACL disconnect timeout have been made. So in case\nof Linux to Linux connection the initiator will disconnect the ACL link\nbefore the acceptor side can signal the specific disconnect reason. That\nis perfectly fine since Linux doesn\u0027t make use of this value anyway. The\nL2CAP layer has a perfect valid error code for rejecting connection due\nto a security violation. It is unclear why the Bluetooth specification\ninsists on having specific HCI disconnect reason.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f29972de8e7476706ab3c01304a505e7c95d9040",
      "tree": "966729f6b80d0e149b0ece4367d27f52306cc8cb",
      "parents": [
        "e1027a7c69700301d14db03d2e049ee60c4f92df"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Feb 12 05:07:45 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:42 2009 +0100"
      },
      "message": "Bluetooth: Add CID field to L2CAP socket address structure\n\nIn preparation for L2CAP fixed channel support, the CID value of a\nL2CAP connection needs to be accessible via the socket interface. The\nCID is the connection identifier and exists as source and destination\nvalue. So extend the L2CAP socket address structure with this field and\nchange getsockname() and getpeername() to fill it in.\n\nThe bind() and connect() functions have been modified to handle L2CAP\nsocket address structures of variable sizes. This makes them future\nproof if additional fields need to be added.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e1027a7c69700301d14db03d2e049ee60c4f92df",
      "tree": "d2dc9bc993deec30c8e9a797592458286e89e31b",
      "parents": [
        "435fef20acfc48f46476abad55b0cd3aa47b8365"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 09 09:18:02 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:42 2009 +0100"
      },
      "message": "Bluetooth: Request L2CAP fixed channel list if available\n\nIf the extended features mask indicates support for fixed channels,\nrequest the list of available fixed channels. This also enables the\nfixed channel features bit so remote implementations can request\ninformation about it. Currently only the signal channel will be\nlisted.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "435fef20acfc48f46476abad55b0cd3aa47b8365",
      "tree": "8871de70ce8fedb293683b73d56d09582318ced0",
      "parents": [
        "6a8d3010b313d99adbb28f1826fac0234395bb26"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 09 03:55:28 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:41 2009 +0100"
      },
      "message": "Bluetooth: Don\u0027t enforce authentication for L2CAP PSM 1 and 3\n\nThe recommendation for the L2CAP PSM 1 (SDP) is to not use any kind\nof authentication or encryption. So don\u0027t trigger authentication\nfor incoming and outgoing SDP connections.\n\nFor L2CAP PSM 3 (RFCOMM) there is no clear requirement, but with\nBluetooth 2.1 the initiator is required to enable authentication\nand encryption first and this gets enforced. So there is no need\nto trigger an additional authentication step. The RFCOMM service\nsecurity will make sure that a secure enough link key is present.\n\nWhen the encryption gets enabled after the SDP connection setup,\nthen switch the security level from SDP to low security.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "6a8d3010b313d99adbb28f1826fac0234395bb26",
      "tree": "e116cd7033e05e0e59b225484991e2a27188fc3e",
      "parents": [
        "984947dc64f82bc6cafa4d84ba1a139718f634a8"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 06 23:56:36 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:41 2009 +0100"
      },
      "message": "Bluetooth: Fix double L2CAP connection request\n\nIf the remote L2CAP server uses authentication pending stage and\nencryption is enabled it can happen that a L2CAP connection request is\nsent twice due to a race condition in the connection state machine.\n\nWhen the remote side indicates any kind of connection pending, then\ntrack this state and skip sending of L2CAP commands for this period.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "984947dc64f82bc6cafa4d84ba1a139718f634a8",
      "tree": "f85e4b260034f5b5a20af7a63900ee7de06fa7ad",
      "parents": [
        "657e17b03c80bec817975984d221bef716f83558"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 06 23:35:19 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:41 2009 +0100"
      },
      "message": "Bluetooth: Fix race condition with L2CAP information request\n\nWhen two L2CAP connections are requested quickly after the ACL link has\nbeen established there exists a window for a race condition where a\nconnection request is sent before the information response has been\nreceived. Any connection request should only be sent after an exchange\nof the extended features mask has been finished.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0684e5f9fb9e3f7e168ab831dfca693bcb44805b",
      "tree": "1fb1315dff64ef2ebaa24729988b2c3b7c77d578",
      "parents": [
        "efc7688b557dd1be10eead7399b315efcb1dbc74"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 09 02:48:38 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:40 2009 +0100"
      },
      "message": "Bluetooth: Use general bonding whenever possible\n\nWhen receiving incoming connection to specific services, always use\ngeneral bonding. This ensures that the link key gets stored and can be\nused for further authentications.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "255c76014af74165428e7aa16414b857e2bdccf2",
      "tree": "6c13e5413ce88e80780b02c80be00341db68cb78",
      "parents": [
        "43c2e57f94c15744495fee564610aa24602b3824"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Feb 04 21:07:19 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:36 2009 +0100"
      },
      "message": "Bluetooth: Don\u0027t check encryption for L2CAP raw sockets\n\nFor L2CAP sockets with medium and high security requirement a missing\nencryption will enforce the closing of the link. For the L2CAP raw\nsockets this is not needed, so skip that check.\n\nThis fixes a crash when pairing Bluetooth 2.0 (and earlier) devices\nsince the L2CAP state machine got confused and then locked up the whole\nsystem.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "5f9018af004fa8635bbbe3ab2dc61e8a686edfaa",
      "tree": "7d31fb740d7ddff8835c7ece90780a47ae1559cc",
      "parents": [
        "0588d94fd7e414367a7ae517569d2222441c255f"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Jan 16 10:09:50 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:34 2009 +0100"
      },
      "message": "Bluetooth: Update version numbers\n\nWith the support for the enhanced security model and the support for\ndeferring connection setup, it is a good idea to increase various\nversion numbers.\n\nThis is purely cosmetic and has no effect on the behavior, but can\nbe really helpful when debugging problems in different kernel versions.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0588d94fd7e414367a7ae517569d2222441c255f",
      "tree": "c8563ce159bbea94e57df39a9b27bb1628ebccdd",
      "parents": [
        "f62e4323ab43c59e7cd7f72c1eb392d7c767ce5a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Jan 16 10:06:13 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:33 2009 +0100"
      },
      "message": "Bluetooth: Restrict application of socket options\n\nThe new socket options should only be evaluated for SOL_BLUETOOTH level\nand not for every other level. Previously this causes some minor issues\nwhen detecting if a kernel with certain features is available.\n\nAlso restrict BT_SECURITY to SOCK_SEQPACKET for L2CAP and SOCK_STREAM for\nthe RFCOMM protocol.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f62e4323ab43c59e7cd7f72c1eb392d7c767ce5a",
      "tree": "8ee582e12c91260ee4eccecbbe2fe055b41d97aa",
      "parents": [
        "8c84b83076b5062f59b6167cdda90d9e5124aa71"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jan 15 21:58:44 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:33 2009 +0100"
      },
      "message": "Bluetooth: Disconnect L2CAP connections without encryption\n\nFor L2CAP connections with high security setting, the link will be\nimmediately dropped when the encryption gets disabled. For L2CAP\nconnections with medium security there will be grace period where\nthe remote device has the chance to re-enable encryption. If it\ndoesn\u0027t happen then the link will also be disconnected.\n\nThe requirement for the grace period with medium security comes from\nBluetooth 2.0 and earlier devices that require role switching.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "2af6b9d518ddfbc4d6990d5f9c9b1a05341c1cef",
      "tree": "62b6f679495026ccf64c1b71d48cede452689b73",
      "parents": [
        "8c1b235594fbab9a13240a1dac12ea9fd99b6440"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jan 15 21:58:38 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:26 2009 +0100"
      },
      "message": "Bluetooth: Replace L2CAP link mode with security level\n\nChange the L2CAP internals to use the new security levels and remove\nthe link mode details.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "8c1b235594fbab9a13240a1dac12ea9fd99b6440",
      "tree": "eb137a23e0fd8199144a4c3e36902af411e44269",
      "parents": [
        "c89b6e6bda4c8021195778f47567d0cc9dbfe7ec"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jan 15 21:58:04 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:25 2009 +0100"
      },
      "message": "Bluetooth: Add enhanced security model for Simple Pairing\n\nThe current security model is based around the flags AUTH, ENCRYPT and\nSECURE. Starting with support for the Bluetooth 2.1 specification this is\nno longer sufficient. The different security levels are now defined as\nSDP, LOW, MEDIUM and SECURE.\n\nPreviously it was possible to set each security independently, but this\nactually doesn\u0027t make a lot of sense. For Bluetooth the encryption depends\non a previous successful authentication. Also you can only update your\nexisting link key if you successfully created at least one before. And of\ncourse the update of link keys without having proper encryption in place\nis a security issue.\n\nThe new security levels from the Bluetooth 2.1 specification are now\nused internally. All old settings are mapped to the new values and this\nway it ensures that old applications still work. The only limitation\nis that it is no longer possible to set authentication without also\nenabling encryption. No application should have done this anyway since\nthis is actually a security issue. Without encryption the integrity of\nthe authentication can\u0027t be guaranteed.\n\nAs default for a new L2CAP or RFCOMM connection, the LOW security level\nis used. The only exception here are the service discovery sessions on\nPSM 1 where SDP level is used. To have similar security strength as with\na Bluetooth 2.0 and before combination key, the MEDIUM level should be\nused. This is according to the Bluetooth specification. The MEDIUM level\nwill not require any kind of man-in-the-middle (MITM) protection. Only\nthe HIGH security level will require this.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f66dc81f44d918ee1aa1a9d821bb2f25c7592bc0",
      "tree": "fe9030b58a7fac0d85dbed2da9f33702aab2e9b5",
      "parents": [
        "bb23c0ab824653be4aa7dfca15b07b3059717004"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jan 15 21:57:00 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:24 2009 +0100"
      },
      "message": "Bluetooth: Add support for deferring L2CAP connection setup\n\nIn order to decide if listening L2CAP sockets should be accept()ed\nthe BD_ADDR of the remote device needs to be known. This patch adds\na socket option which defines a timeout for deferring the actual\nconnection setup.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d58daf42d29a3a4a4d4be46cf47ceee096789680",
      "tree": "c88a5820a44fe993e271437b0fcebdde7e8298d3",
      "parents": [
        "91aa35a5aa3540223066bf6b51c935418c63a35d"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jan 15 21:52:14 2009 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Feb 27 06:14:22 2009 +0100"
      },
      "message": "Bluetooth: Preparation for usage of SOL_BLUETOOTH\n\nThe socket option levels SOL_L2CAP, SOL_RFOMM and SOL_SCO are currently\nin use by various Bluetooth applications. Going forward the common\noption level SOL_BLUETOOTH should be used. This patch prepares the clean\nsplit of the old and new option levels while keeping everything backward\ncompatibility.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a418b893a6af11ae73c762ed5b76c1bad6dc19d8",
      "tree": "a24f9192988e4d55077d77420b90dc3cfd647a06",
      "parents": [
        "5ddd4a60683f819982b7bd3d1aee972f931c11a3"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Nov 30 12:17:28 2008 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Nov 30 12:17:28 2008 +0100"
      },
      "message": "Bluetooth: Enable per-module dynamic debug messages\n\nWith the introduction of CONFIG_DYNAMIC_PRINTK_DEBUG it is possible to\nallow debugging without having to recompile the kernel. This patch turns\nall BT_DBG() calls into pr_debug() to support dynamic debug messages.\n\nAs a side effect all CONFIG_BT_*_DEBUG statements are now removed and\nsome broken debug entries have been fixed.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e7c29cb16c833441fd2160642bb13025f4e7ac70",
      "tree": "7ba44be60b7bf9c4e7bee459735ebabdc85eb8fd",
      "parents": [
        "09ab6f4c2376a0fc31abde1e2991513f900ea825"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "message": "[Bluetooth] Reject L2CAP connections on an insecure ACL link\n\nThe Security Mode 4 of the Bluetooth 2.1 specification has strict\nauthentication and encryption requirements. It is the initiators job\nto create a secure ACL link. However in case of malicious devices, the\nacceptor has to make sure that the ACL is encrypted before allowing\nany kind of L2CAP connection. The only exception here is the PSM 1 for\nthe service discovery protocol, because that is allowed to run on an\ninsecure ACL link.\n\nPreviously it was enough to reject a L2CAP connection during the\nconnection setup phase, but with Bluetooth 2.1 it is forbidden to\ndo any L2CAP protocol exchange on an insecure link (except SDP).\n\nThe new hci_conn_check_link_mode() function can be used to check the\nintegrity of an ACL link. This functions also takes care of the cases\nwhere Security Mode 4 is disabled or one of the devices is based on\nan older specification.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "09ab6f4c2376a0fc31abde1e2991513f900ea825",
      "tree": "f002d719a8a9a2c6344f06a5b9346bc053b4054d",
      "parents": [
        "f1c08ca559387ab30992055596d54061dfa022b1"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 09 07:19:20 2008 +0200"
      },
      "message": "[Bluetooth] Enforce correct authentication requirements\n\nWith the introduction of Security Mode 4 and Simple Pairing from the\nBluetooth 2.1 specification it became mandatory that the initiator\nrequires authentication and encryption before any L2CAP channel can\nbe established. The only exception here is PSM 1 for the service\ndiscovery protocol (SDP). It is meant to be used without any encryption\nsince it contains only public information. This is how Bluetooth 2.0\nand before handle connections on PSM 1.\n\nFor Bluetooth 2.1 devices the pairing procedure differentiates between\nno bonding, general bonding and dedicated bonding. The L2CAP layer\nwrongly uses always general bonding when creating new connections, but it\nshould not do this for SDP connections. In this case the authentication\nrequirement should be no bonding and the just-works model should be used,\nbut in case of non-SDP connection it is required to use general bonding.\n\nIf the new connection requires man-in-the-middle (MITM) protection, it\nalso first wrongly creates an unauthenticated link key and then later on\nrequests an upgrade to an authenticated link key to provide full MITM\nprotection. With Simple Pairing the link key generation is an expensive\noperation (compared to Bluetooth 2.0 and before) and doing this twice\nduring a connection setup causes a noticeable delay when establishing\na new connection. This should be avoided to not regress from the expected\nBluetooth 2.0 connection times. The authentication requirements are known\nup-front and so enforce them.\n\nTo fulfill these requirements the hci_connect() function has been extended\nwith an authentication requirement parameter that will be stored inside\nthe connection information and can be retrieved by userspace at any\ntime. This allows the correct IO capabilities exchange and results in\nthe expected behavior.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "63fbd24e5102eecfc9d049ed7f4be7f9a25f814f",
      "tree": "9ead3c67300ce8bcdbe26d02ba264e84baea930a",
      "parents": [
        "90855d7b725d764d6d70503bcc1b494cf10ddc98"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Aug 18 13:23:53 2008 +0200"
      },
      "message": "[Bluetooth] Consolidate maintainers information\n\nThe Bluetooth entries for the MAINTAINERS file are a little bit too\nmuch. Consolidate them into two entries. One for Bluetooth drivers and\nanother one for the Bluetooth subsystem.\n\nAlso the MODULE_AUTHOR should indicate the current maintainer of the\nmodule and actually not the original author. Fix all Bluetooth modules\nto provide current maintainer information.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b1235d79611e78a07629b4cbe53291c9cffd1834",
      "tree": "b12b694d991e62a761d48ee4bb12b6eade753f78",
      "parents": [
        "7cb127d5b0e7af7a0afd23785722ca3edab4ceff"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:54 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:54 2008 +0200"
      },
      "message": "[Bluetooth] Allow security for outgoing L2CAP connections\n\nWhen requested the L2CAP layer will now enforce authentication and\nencryption on outgoing connections. The usefulness of this feature\nis kinda limited since it will not allow proper connection ownership\ntracking until the authentication procedure has been finished. This\nis a limitation of Bluetooth 2.0 and before and can only be fixed by\nusing Simple Pairing.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "3241ad820dbb172021e0268b5611031991431626",
      "tree": "628c3fbdc88f9de6c996358ebcb551176da38f1f",
      "parents": [
        "40be492fe4fab829951681860c2bb26fa1d5fe4a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:50 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:50 2008 +0200"
      },
      "message": "[Bluetooth] Add timestamp support to L2CAP, RFCOMM and SCO\n\nEnable the common timestamp functionality that the network subsystem\nprovides for L2CAP, RFCOMM and SCO sockets. It is possible to either\nuse SO_TIMESTAMP or the IOCTLs to retrieve the timestamp of the\ncurrent packet.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "40be492fe4fab829951681860c2bb26fa1d5fe4a",
      "tree": "41b576692c2206c9a51e689f54170076ec95bc3a",
      "parents": [
        "f8558555f31e177e2644f3c8116801c3e5c29974"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:50 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:50 2008 +0200"
      },
      "message": "[Bluetooth] Export details about authentication requirements\n\nWith the Simple Pairing support, the authentication requirements are\nan explicit setting during the bonding process. Track and enforce the\nrequirements and allow higher layers like L2CAP and RFCOMM to increase\nthem if needed.\n\nThis patch introduces a new IOCTL that allows to query the current\nauthentication requirements. It is also possible to detect Simple\nPairing support in the kernel this way.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9719f8afce34d3d04e884873a8a5e3483e30974c",
      "tree": "aee26f7df7e2d92aa54d4b9da88c4ff5987191dd",
      "parents": [
        "77db1980565626471a980f0d2d17299e4bd5e7a5"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:45 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:45 2008 +0200"
      },
      "message": "[Bluetooth] Disconnect when encryption gets disabled\n\nThe Bluetooth specification allows to enable or disable the encryption\nof an ACL link at any time by either the peer or the remote device. If\na L2CAP or RFCOMM connection requested an encrypted link, they will now\ndisconnect that link if the encryption gets disabled. Higher protocols\nthat don\u0027t care about encryption (like SDP) are not affected.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "79d554a6976a295aa9212172b218f29ca71c3b3d",
      "tree": "430d106c1ebf194fcf208a145d32a2829ffca5a6",
      "parents": [
        "b7279469d66b55119784b8b9529c99c1955fe747"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:44 2008 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 14 20:13:44 2008 +0200"
      },
      "message": "[Bluetooth] Change retrieval of L2CAP features mask\n\nGetting the remote L2CAP features mask is really important, but doing\nthis as less intrusive as possible is tricky. To play nice with older\nsystems and Bluetooth qualification testing, the features mask is now\nonly retrieved in two specific cases and only once per lifetime of an\nACL link.\n\nWhen trying to establish a L2CAP connection and the remote features mask\nis unknown, the L2CAP information request is sent when the ACL link goes\ninto connected state. This applies only to outgoing connections and also\nonly for the connection oriented channels.\n\nThe second case is when a connection request has been received. In this\ncase a connection response with the result pending and the information\nrequest will be send. After receiving an information response or if the\ntimeout gets triggered, the normal connection setup process with security\nsetup will be initiated.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "83985319393973f280ca2a797047780a7955cf19",
      "tree": "438e92affd9c605188404e920b8605670d0d6ab0",
      "parents": [
        "260ffeed3fd185d29f08e98fb47c09e71bb59cd8"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri May 02 16:25:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 02 16:25:46 2008 -0700"
      },
      "message": "bluetooth: use get/put_unaligned_* helpers\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e1ec1b8ccdf0df6000faa8c2d985ca5f94157e5a",
      "tree": "4e1ca325dde22f1ac21c9da0be509e87e922e604",
      "parents": [
        "c0f39322c335412339dec16ebfd2a05ceba5ebcf",
        "802fb176d8c635ae42da31b80841c26e8c7338a0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 02 22:35:23 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/s2io.c\n"
    },
    {
      "commit": "d5fb2962c6157495e1365e4f30568ed3830d35a7",
      "tree": "952baad67a821bf47b46f7cd4d748e0fa3144e90",
      "parents": [
        "293a3839304cac32e58929db0c23e00a509fbfc5"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Fri Mar 28 16:17:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 28 16:17:38 2008 -0700"
      },
      "message": "bluetooth: replace deprecated RW_LOCK_UNLOCKED macros\n\nThe older RW_LOCK_UNLOCKED macros defeat lockdep state tracing so\nreplace them with the newer __RW_LOCK_UNLOCKED macros.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b1e0a655f8eba44ab1ee2a1068d169ccfb853b9",
      "tree": "09edb35f32ebcfb1b4dad904425128a110ef16ee",
      "parents": [
        "c346dca10840a874240c78efe3f39acf4312a1f2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 02:26:21 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Mar 26 04:39:55 2008 +0900"
      },
      "message": "[NET] NETNS: Omit sock-\u003esk_net without CONFIG_NET_NS.\n\nIntroduce per-sock inlines: sock_net(), sock_net_set()\nand per-inet_timewait_sock inlines: twsk_net(), twsk_net_set().\nWithout CONFIG_NET_NS, no namespace other than \u0026init_net exists.\nLet\u0027s explicitly define them to help compiler optimizations.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "8e8440f53593b5f9c695f18b493b535873dbb9da",
      "tree": "e0429845227215de8284bcd9e7824ad26d4c8b7b",
      "parents": [
        "7e36763b2c204d59de4e88087f84a2c0c8421f25"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Mon Mar 03 12:18:55 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 03 12:18:55 2008 -0800"
      },
      "message": "[BLUETOOTH]: l2cap info_timer delete fix in hci_conn_del\n\nWhen the l2cap info_timer is active the info_state will be set to\nL2CAP_INFO_FEAT_MASK_REQ_SENT, and it will be unset after the timer is\ndeleted or timeout triggered.\n\nHere in l2cap_conn_del only call del_timer_sync when the info_state is\nset to L2CAP_INFO_FEAT_MASK_REQ_SENT.\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ab2273175bd59616b6e85c0f88b154e8bd97413",
      "tree": "d77cb79e89925a0def66bb710e97896508f45efa",
      "parents": [
        "5f2f40a92e007ec5b503db20f3f70cb331c64f65"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Feb 26 17:42:56 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 26 17:42:56 2008 -0800"
      },
      "message": "bluetooth: delete timer in l2cap_conn_del()\n\nDelete a possibly armed timer before kfree\u0027ing the connection object.\n\nSolves: http://lkml.org/lkml/2008/2/15/514\n\nReported-by:Quel Qun \u003ckelk1@comcast.net\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b24b8a247ff65c01b252025926fe564209fae4fc",
      "tree": "8a9e0ea1e24b4733d8b9433d41877659505e9da4",
      "parents": [
        "a92aa318b4b369091fd80433c80e62838db8bc1c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jan 23 21:20:07 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:35 2008 -0800"
      },
      "message": "[NET]: Convert init_timer into setup_timer\n\nMany-many code in the kernel initialized the timer-\u003efunction\nand  timer-\u003edata together with calling init_timer(timer). There\nis already a helper for this. Use it for networking code.\n\nThe patch is HUGE, but makes the code 130 lines shorter\n(98 insertions(+), 228 deletions(-)).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6257ff2177ff02d7f260a7a501876aa41cb9a9f6",
      "tree": "9d9f80ccf16f3d4ef062e896f62974c5496193ad",
      "parents": [
        "154adbc8469ff21fbf5c958446ee92dbaab01be1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Nov 01 00:39:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 01 00:39:31 2007 -0700"
      },
      "message": "[NET]: Forget the zero_it argument of sk_alloc()\n\nFinally, the zero_it argument can be completely removed from\nthe callers and from the function prototype.\n\nBesides, fix the checkpatch.pl warnings about using the\nassignments inside if-s.\n\nThis patch is rather big, and it is a part of the previous one.\nI splitted it wishing to make the patches more readable. Hope \nthis particular split helped.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6464f35f3771f69cd8d107fff166dc29ab392f97",
      "tree": "b737bc19dfd6decc6769a425491e0e0b06687d1b",
      "parents": [
        "f0709e03ac3552b1b048ee171cb96ecaacc6813c"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Oct 20 13:39:51 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:43 2007 -0700"
      },
      "message": "[Bluetooth] Fall back to L2CAP in basic mode\n\nIn case the remote entity tries to negogiate retransmission or flow\ncontrol mode, reject it and fall back to basic mode.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f0709e03ac3552b1b048ee171cb96ecaacc6813c",
      "tree": "65c888eb7c1d6ad1f34276232a8cddbbcf163c28",
      "parents": [
        "4e8402a3f884427f9233ba436459c158d1f2e114"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Oct 20 13:38:51 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:42 2007 -0700"
      },
      "message": "[Bluetooth] Advertise L2CAP features mask support\n\nIndicate the support for the L2CAP features mask value when the remote\nentity tries to negotiate Bluetooth 1.2 specific features.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "4e8402a3f884427f9233ba436459c158d1f2e114",
      "tree": "3853523eaba309ea8aff89ed4868770cf82d40b2",
      "parents": [
        "861d6882b3dfe1710b35dbddf1b395b962061413"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Oct 20 13:37:56 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:41 2007 -0700"
      },
      "message": "[Bluetooth] Retrieve L2CAP features mask on connection setup\n\nThe Bluetooth 1.2 specification introduced a specific features mask\nvalue to interoperate with newer versions of the specification. So far\nthis piece of information was never needed, but future extensions will\nrely on it. This patch adds a generic way to retrieve this information\nonly once per connection setup.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "861d6882b3dfe1710b35dbddf1b395b962061413",
      "tree": "94da0e9d5de2c3ed7643600ba4fe643e5e7c6911",
      "parents": [
        "876d9484edf77d228adb42aecd4debd58d7739d6"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Oct 20 13:37:06 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:41 2007 -0700"
      },
      "message": "[Bluetooth] Remove global conf_mtu variable from L2CAP\n\nAfter the change to the L2CAP configuration parameter handling the\nglobal conf_mtu variable is no longer needed and so remove it.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "876d9484edf77d228adb42aecd4debd58d7739d6",
      "tree": "7812471a62fe26a8cf86d2b8fe5584396527de40",
      "parents": [
        "a9de9248064bfc8eb0a183a6a951a4e7b5ca10a4"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Oct 20 13:35:42 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 22 02:59:40 2007 -0700"
      },
      "message": "[Bluetooth] Finish L2CAP configuration only with acceptable settings\n\nThe parameters of the L2CAP output configuration might not be accepted\nafter the first configuration round. So only indicate a finished output\nconfiguration when acceptable settings are provided.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "1b8d7ae42d02e483ad94035cca851e4f7fbecb40",
      "tree": "81f8cc0ee49ef99cc67dfed3dc7b7ecb510abf8b",
      "parents": [
        "457c4cbc5a3dde259d2a1f15d5f9785290397267"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Oct 08 23:24:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:07 2007 -0700"
      },
      "message": "[NET]: Make socket creation namespace safe.\n\nThis patch passes in the namespace a new socket should be created in\nand has the socket code do the appropriate reference counting.  By\nvirtue of this all socket create methods are touched.  In addition\nthe socket create methods are modified so that they will fail if\nyou attempt to create a socket in a non-default network namespace.\n\nFailing if we attempt to create a socket outside of the default\nnetwork namespace ensures that as we incrementally make the network stack\nnetwork namespace aware we will not export functionality that someone\nhas not audited and made certain is network namespace safe.\nAllowing us to partially enable network namespaces before all of the\nexotic protocols are supported.\n\nAny protocol layers I have missed will fail to compile because I now\npass an extra parameter into the socket creation code.\n\n[ Integrated AF_IUCV build fixes from Andrew Morton... -DaveM ]\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d83852822cb58f0beaa2d06b7c1e9e005e0c4f94",
      "tree": "b1a47dca0373551b0541258ab27e61606212c73b",
      "parents": [
        "88219a0f65ae14ba744fa424604c965b6f1c1a8d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 00:18:23 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 31 02:28:09 2007 -0700"
      },
      "message": "[BLUETOOTH] l2cap: don\u0027t mangle cmd.len\n\nSince nobody uses it after we convert it to host-endian,\nno need to do that at all.  At that point l2cap is endian-clean.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88219a0f65ae14ba744fa424604c965b6f1c1a8d",
      "tree": "cc3187f18091f427b409dbad6130d8212fdab724",
      "parents": [
        "8e036fc3143646dc304356fa50314681d654363f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 00:17:25 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 31 02:28:08 2007 -0700"
      },
      "message": "[BLUETOOTH]: pass (host-endian) cmd length as explicit argument to l2cap_conf_req()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e036fc3143646dc304356fa50314681d654363f",
      "tree": "11ba34d6977b95f69b96a8a91f2902e2672d8fad",
      "parents": [
        "6dc0c2082b8acf30c9239fbbcc051eebdaf7ecff"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 00:16:36 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 31 02:28:07 2007 -0700"
      },
      "message": "[BLUETOOTH] l2cap: endianness annotations\n\nno code changes, just documenting existing types\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6dc0c2082b8acf30c9239fbbcc051eebdaf7ecff",
      "tree": "709bc082b259b1a0bf2dfbc6a5aee4a7aaf343de",
      "parents": [
        "09c7d8293a2d1317d16ef4ddb9f6dd2553d0694e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sun Jul 29 00:15:18 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 31 02:28:06 2007 -0700"
      },
      "message": "[BLUETOOTH]: Fix endianness bug in l2cap_sock_listen()\n\nWe loop through psm values, calling __l2cap_get_sock_by_addr(psm, ...)\nuntil we get NULL; then we set -\u003epsm of our socket to htobs(psm).\nIOW, we find unused psm value and put it into our socket.  So far, so\ngood, but...  __l2cap_get_sock_by_addr() compares its argument with\n-\u003epsm of sockets.  IOW, the entire thing works correctly only on\nlittle-endian.  On big-endian we\u0027ll get \"no socket with such psm\"\non the first iteration, since we won\u0027t find a socket with -\u003epsm \u003d\u003d 0x1001.\nWe will happily conclude that 0x1001 is unused and slap htobs(0x1001)\n(i.e. 0x110) into -\u003epsm of our socket.  Of course, the next time around\nthe same thing will repeat and we\u0027ll just get a fsckload of sockets\nwith the same -\u003epsm assigned.\n\nFix: pass htobs(psm) to __l2cap_get_sock_by_addr() there.  All other\ncallers are already passing little-endian values and all places that\nstore something in -\u003epsm are storing little-endian.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5dee9e7c4c869fcffccc3d432b755793dfa71376",
      "tree": "4142c425d5941c405dc0a8bf23c59e0749192bfa",
      "parents": [
        "fd184ab4283a6a6105e8312a497d2a2a193eaf67"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu May 24 14:27:19 2007 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu May 24 14:27:19 2007 +0200"
      },
      "message": "[Bluetooth] Fix L2CAP configuration parameter handling\n\nThe L2CAP configuration parameter handling was missing the support\nfor rejecting unknown options. The capability to reject unknown\noptions is mandatory since the Bluetooth 1.2 specification. This\npatch implements its and also simplifies the parameter parsing.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0878b6667f28772aa7d6b735abff53efc7bf6d91",
      "tree": "5a1dbfb35f679335fbec4cbd17dfe64926db7750",
      "parents": [
        "dc87c3985e9b442c60994308a96f887579addc39"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 05 00:35:59 2007 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 05 00:35:59 2007 +0200"
      },
      "message": "[Bluetooth] Fix L2CAP and HCI setsockopt() information leaks\n\nThe L2CAP and HCI setsockopt() implementations have a small information\nleak that makes it possible to leak kernel stack memory to userspace.\n\nIf the optlen parameter is 0, no data will be copied by copy_from_user(),\nbut the uninitialized stack buffer will be read and stored later. A call\nto getsockopt() can now retrieve the leaked information.\n\nTo fix this problem the stack buffer given to copy_from_user() must be\ninitialized with the current settings.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "d626f62b11e00c16e81e4308ab93d3f13551812a",
      "tree": "fac4af6ced853755e12fc709d55f0c2bec51265d",
      "parents": [
        "2a123b86e2b242a4a6db990d2851d45e192f88e5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 27 18:55:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_copy_from_linear_data{_offset}\n\nTo clearly state the intent of copying from linear sk_buffs, _offset being a\noverly long variant but interesting for the sake of saving some bytes.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "aca3192cc60d2bf193c2252e45563c32e3117289",
      "tree": "d73dc39ae9c9f499a026c56517604af21d63bfd9",
      "parents": [
        "acde4855bb8f5fba8bb065d35ff6ac8a94b3dfa8"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Mar 25 20:12:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:23:54 2007 -0700"
      },
      "message": "[NET] BLUETOOTH: Use cpu_to_le{16,32}() where appropriate.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e87d14255acffeee36873de226dc25c11b5f46d",
      "tree": "e11c179c8db4ae3ad56ea02d583bc041dcc686b6",
      "parents": [
        "528930b91ee89a05a6264629cf99109652c19ca8"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:33 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:20 2007 -0800"
      },
      "message": "[NET] BLUETOOTH: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "847641d7db15ac3f18b3d4aa05479812abdf397a",
      "tree": "59c7f5f3fc3b6a06912487222cd1dbb4214825c4",
      "parents": [
        "7386397636d49cd5f03da29432467d3e98cbad35"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jan 22 22:00:45 2007 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jan 22 22:00:45 2007 +0100"
      },
      "message": "[Bluetooth] Restrict well known PSM to privileged users\n\nThe PSM values below 0x1001 of L2CAP are reserved for well known\nservices. Restrict the possibility to bind them to privileged\nusers.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "7386397636d49cd5f03da29432467d3e98cbad35",
      "tree": "e306cfa2d55c7085d77678e9f6b95bcf2b6aad58",
      "parents": [
        "a8b3485287731978899ced11f24628c927890e78"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jan 22 22:00:40 2007 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jan 22 22:00:40 2007 +0100"
      },
      "message": "[Bluetooth] Missing endian swapping for L2CAP socket list\n\nThe PSM value in the L2CAP socket list must be converted to host\norder before printing it.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fcc70d5fdc9b0bd3e99c9dacb8198224af2b4b42",
      "tree": "f4450b97bb0cf61d731004f0fbe599662aba0f20",
      "parents": [
        "67f83cbf081a70426ff667e8d14f94e13ed3bdca"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 08 22:44:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:35 2006 -0800"
      },
      "message": "[BLUETOOTH] lockdep: annotate sk_lock nesting in AF_BLUETOOTH\n\n\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[ INFO: possible recursive locking detected ]\n2.6.18-1.2726.fc6 #1\n"
    },
    {
      "commit": "354f60a9952d0af59e684b91cc6e06b95fbbf5ef",
      "tree": "56b583c406b7df011049ec2d0ca0c8c75f94bdc6",
      "parents": [
        "820ae1b865caa05e0614004d0183ca70de2b8665"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Nov 18 22:15:20 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 21 16:16:32 2006 -0800"
      },
      "message": "[Bluetooth] Ignore L2CAP config requests on disconnect\n\nAny L2CAP connection in disconnecting state shall not response\nto any further config requests from the remote side. So in case\nsuch a request is received, ignore it.\n\nSigned-off-by: Ville Tervo \u003cville.tervo@nokia.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "820ae1b865caa05e0614004d0183ca70de2b8665",
      "tree": "cf93320889db023d4049ffc0123bcfb4a407982f",
      "parents": [
        "ff2d367ac33b9278c9516ac1888207dac11d10b0"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Nov 18 22:15:00 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 21 16:16:31 2006 -0800"
      },
      "message": "[Bluetooth] Always include MTU in L2CAP config responses\n\nWhen sending a positive config response it shall include the actual\nMTU to be used on this channel. This differs from the Bluetooth 1.1\nspecification where it was enough to acknowledge the config request.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "74da626a1098640ddc40c0e3481c0cd41e8ec1e9",
      "tree": "65e6f72f07c0cccbb37b3b079d93276b061d9ade",
      "parents": [
        "cb19d9ea2ce2bcbe291d3d48e3501dc4f33ba627"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:31:14 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:34 2006 -0700"
      },
      "message": "[Bluetooth] Add locking for bt_proto array manipulation\n\nThe bt_proto array needs to be protected by some kind of locking to\nprevent a race condition between bt_sock_create and bt_sock_register.\n\nAnd in addition all calls to sk_alloc need to be made GFP_ATOMIC now.\n\nSigned-off-by: Masatake YAMATO \u003cjet@gyve.org\u003e\nSigned-off-by: Frederik Deweerdt \u003cfrederik.deweerdt@gmail.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "df5c37ea9a3820a9515d8204450aec00f48f8f88",
      "tree": "0a7ca311e03be7738ae9e2bcbd3c43c7b8f9cf74",
      "parents": [
        "e9c5702e3c5558dade169949abd730173e87ef9c"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:30:45 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:28 2006 -0700"
      },
      "message": "[Bluetooth] Handle return values from driver core functions\n\nSome return values of the driver core register and create functions\nare not handled and so might cause unexpected problems.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fd1278d720b48ad7576f64014b916cc77365cb3f",
      "tree": "5d692235135cbdeac93f10b52084ec72009a8541",
      "parents": [
        "0263603a01e802f79e369ac489793e5320031560"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jul 12 23:00:07 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 12 15:34:35 2006 -0700"
      },
      "message": "[Bluetooth] Fix deadlock in the L2CAP layer\n\nThe Bluetooth L2CAP layer has 2 locks that are used in softirq context,\n(one spinlock and one rwlock, where the softirq usage is readlock) but\nwhere not all usages of the lock were _bh safe. The patch below corrects\nthis.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0139418c943c3389cf75afc4f4d2b2fa52bbf7c9",
      "tree": "f4f760f37b516d9c6c375217aec31a1d9f6fdaa2",
      "parents": [
        "a91f2e396f5b32b21d842b4757bc8de5e88eac66"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:46 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:54:05 2006 -0700"
      },
      "message": "[Bluetooth] Small cleanup of the L2CAP source code\n\nThis patch is a small cleanup of the L2CAP source code. It makes some\ncoding style changes and moves some functions around to avoid forward\ndeclarations.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a91f2e396f5b32b21d842b4757bc8de5e88eac66",
      "tree": "174b88a20feea87734bf63ec7104eae0b205649a",
      "parents": [
        "27d35284258c596900e0e41c46932ec4abe6a7b1"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:41 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:54:02 2006 -0700"
      },
      "message": "[Bluetooth] Use real devices for host controllers\n\nThis patch converts the Bluetooth class devices into real devices. The\nBluetooth class is kept and the driver core provides the appropriate\nsymlinks for backward compatibility.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "4fc268d24ceb9f4150777c1b5b2b8e6214e56b2b",
      "tree": "d2aaf0b5986b03e6129ed3ccd65b9f706cd59c7f",
      "parents": [
        "16f7e0fe2ecc30f30652e8185e1772cdebe39109"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Wed Jan 11 12:17:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 18:42:14 2006 -0800"
      },
      "message": "[PATCH] capable/capability.h (net/)\n\nnet: Use \u003clinux/capability.h\u003e where capable() is used.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "90ddc4f0470427df306f308ad03db6b6b21644b8",
      "tree": "f97c1d57b25585394ebbd4b42b8d42a339f98644",
      "parents": [
        "77d76ea310b50a9c8ff15bd290fcb4ed4961adf2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 22 12:49:22 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:15 2006 -0800"
      },
      "message": "[NET]: move struct proto_ops to const\n\nI noticed that some of \u0027struct proto_ops\u0027 used in the kernel may share\na cache line used by locks or other heavily modified data. (default\nlinker alignement is 32 bytes, and L1_CACHE_LINE is 64 or 128 at\nleast)\n\nThis patch makes sure a \u0027struct proto_ops\u0027 can be declared as const,\nso that all cpus can share all parts of it without false sharing.\n\nThis is not mandatory : a driver can still use a read/write structure\nif it needs to (and eventually a __read_mostly)\n\nI made a global stubstitute to change all existing occurences to make\nthem const.\n\nThis should reduce the possibility of false sharing on SMP, and\nspeedup some socket system calls.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c1cbe4b7ad0bc4b1d98ea708a3fecb7362aa4088",
      "tree": "04ec26c728645dd1da2474b2b883a532b43811ad",
      "parents": [
        "f1f71e03b17db3b9edb0264a8be7719bd5c35582"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "benjamin.c.lahaise@intel.com",
        "time": "Tue Dec 13 23:22:19 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:44 2006 -0800"
      },
      "message": "[NET]: Avoid atomic xchg() for non-error case\n\nIt also looks like there were 2 places where the test on sk_err was\nmissing from the event wait logic (in sk_stream_wait_connect and\nsk_stream_wait_memory), while the rest of the sock_error() users look\nto be doing the right thing.  This version of the patch fixes those,\nand cleans up a few places that were testing -\u003esk_err directly.\n\nSigned-off-by: Benjamin LaHaise \u003cbenjamin.c.lahaise@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be9d122730c878baafe11e70d1436faac229f2fc",
      "tree": "d6644129b56d7cff9fb9781154eebf97746f296b",
      "parents": [
        "1ebb92521d0bc2d4ef772730d29333c06b807191"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Nov 08 09:57:38 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 09:57:38 2005 -0800"
      },
      "message": "[Bluetooth]: Remove the usage of /proc completely\n\nThis patch removes all relics of the /proc usage from the Bluetooth\nsubsystem core and its upper layers. All the previous information are\nnow available via /sys/class/bluetooth through appropriate functions.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7",
      "tree": "51f96a9db96293b352e358f66032e1f4ff79fafb",
      "parents": [
        "3b0e77bd144203a507eb191f7117d2c5004ea1de"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Fri Oct 07 07:46:04 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 08 15:00:57 2005 -0700"
      },
      "message": "[PATCH] gfp flags annotations - part 1\n\n - added typedef unsigned int __nocast gfp_t;\n\n - replaced __nocast uses for gfp flags with gfp_t - it gives exactly\n   the same warnings as far as sparse is concerned, doesn\u0027t change\n   generated code (from gcc point of view we replaced unsigned int with\n   typedef) and documents what\u0027s going on far better.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2eb25a6c34504254760e67172f7518d6bfdd7676",
      "tree": "fc2f39fedac03f773b7bbb3489774df57edc721c",
      "parents": [
        "3a5e903c09aed19ca4a1bb26d87b8d6461a93818"
      ],
      "author": {
        "name": "Victor Fusco",
        "email": "victor@cetuc.puc-rio.br",
        "time": "Tue Aug 09 20:29:11 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:55:07 2005 -0700"
      },
      "message": "[Bluetooth]: Fix sparse warnings (__nocast type)\n\nThis patch fixes the sparse warnings \"implicit cast to nocast type\"\nfor the priority or gfp_mask parameters of the memory allocations.\n\nSigned-off-by: Victor Fusco \u003cvictor@cetuc.puc-rio.br\u003e\nSigned-off-by: Domen Puncer \u003cdomen@coderock.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b453257f057b834fdf9f4a6ad6133598b79bd982",
      "tree": "fd1621a8c03331bd78abfe52c8c385977d0a9729",
      "parents": [
        "94f2f715771d0aa5554451d1e2a920f11b8be3fe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@www.linux.org.uk",
        "time": "Mon Apr 25 18:32:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Apr 25 18:32:13 2005 -0700"
      },
      "message": "[PATCH] kill gratitious includes of major.h under net/*\n\nA lot of places in there are including major.h for no reason whatsoever.\nRemoved.  And yes, it still builds. \n\nThe history of that stuff is often amusing.  E.g.  for net/core/sock.c\nthe story looks so, as far as I\u0027ve been able to reconstruct it: we used\nto need major.h in net/socket.c circa 1.1.early.  In 1.1.13 that need\nhad disappeared, along with register_chrdev(SOCKET_MAJOR, \"socket\",\n\u0026net_fops) in sock_init().  Include had not.  When 1.2 -\u003e 1.3 reorg of\nnet/* had moved a lot of stuff from net/socket.c to net/core/sock.c,\nthis crap had followed... \n\nSigned-off-by: Al Viro \u003cviro@parcelfarce.linux.theplanet.co.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
