)]}'
{
  "log": [
    {
      "commit": "4498c80d9c1ebdf42837be6a52ead35a2aa2b819",
      "tree": "38357ba0adae6b149abdd4d22c7137fc02e9f0c9",
      "parents": [
        "785fd8b8a597519127c6d9e16e81f48af2ad391e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 21 16:17:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 21 16:17:41 2006 -0800"
      },
      "message": "[BLUETOOTH]: Fix unaligned access in hci_send_to_sock.\n\nThe \"u16 *\" derefs of skb-\u003edata need to be wrapped inside of\na get_unaligned().\n\nThanks to Gustavo Zacarias for the bug report.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\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": "ff2d367ac33b9278c9516ac1888207dac11d10b0",
      "tree": "7280d3007f20c2c9921f150ec3a84ca52194176e",
      "parents": [
        "6bd57416127e92d35e6798925502c84e14a3a966"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Nov 18 22:14:42 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 21 16:16:30 2006 -0800"
      },
      "message": "[Bluetooth] Check if RFCOMM session is still attached to the TTY\n\nIf the RFCOMM session is no longer attached to the TTY device, then it\nmakes no sense to go through with changing the termios settings.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "6bd57416127e92d35e6798925502c84e14a3a966",
      "tree": "a77850c5390a072bc977d92327a07a14c0dda2a7",
      "parents": [
        "e52726dece1d2e3976c0caf2f4e9e1c452d31282"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Nov 18 22:14:22 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 21 16:16:29 2006 -0800"
      },
      "message": "[Bluetooth] Handling pending connect attempts after inquiry\n\nAfter an inquiry completed or got canceled the Bluetooth core should\ncheck for any pending connect attempts.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e52726dece1d2e3976c0caf2f4e9e1c452d31282",
      "tree": "4aad209ec6e1c5700f97b91fc5c1b65cd1c4f6f5",
      "parents": [
        "53ab61c6d8f391bda04dbc1e95bac348fe81103b"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Nov 18 22:14:05 2006 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Nov 21 16:16:28 2006 -0800"
      },
      "message": "[Bluetooth] Attach low-level connections to the Bluetooth bus\n\nTo receive uvents for the low-level ACL and SCO links, they must be\nassigned to a subsystem. It is enough to attach them to the already\nestablished Bluetooth bus.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "7b19ffc40b0247fcfe083644fdb621fdb3c05ef6",
      "tree": "4980d57a434ba6fbba1b9c566e531158d8de9327",
      "parents": [
        "8602b4fe6e82d5eeb479efd3bca19bc3dd722f5a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 20 08:55:48 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Oct 20 01:15:05 2006 -0700"
      },
      "message": "[Bluetooth] Fix HID disconnect NULL pointer dereference\n\nThe latest HID disconnect sequence change introduced a NULL pointer\ndereference. For the quirk to handle buggy remote HID implementations,\nit is enough to wait for a potential control channel disconnect from\nthe remote side and it is also enough to wait only 500 msecs.\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": "cb19d9ea2ce2bcbe291d3d48e3501dc4f33ba627",
      "tree": "7cd11f8151f7c8bbf04ca74b1d0faaad3e3fd91c",
      "parents": [
        "b2cfcd75df77b80d9cc3fa84190a350dfa79eb93"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:31:10 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:33 2006 -0700"
      },
      "message": "[Bluetooth] Check if DLC is still attached to the TTY\n\nIf the DLC device is no longer attached to the TTY device, then it\nmakes no sense to go through with changing the termios settings.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b2cfcd75df77b80d9cc3fa84190a350dfa79eb93",
      "tree": "661abc82652a6cc7ff665861d98d127e2152affc",
      "parents": [
        "e86070c83e9110e89800274385c013db602b1444"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:31:05 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:32 2006 -0700"
      },
      "message": "[Bluetooth] Fix reference count when connection lookup fails\n\nWhen the connection lookup for the device structure fails, the reference\ncount for the HCI device needs to be decremented.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e86070c83e9110e89800274385c013db602b1444",
      "tree": "aa489bb9aa519018ea8eb31d07dd526a5ce19f98",
      "parents": [
        "4c67bc74f016b0d360b8573e18969c0ff7926974"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:31:00 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:31 2006 -0700"
      },
      "message": "[Bluetooth] Disconnect HID interrupt channel first\n\nThe Bluetooth HID specification demands that the interrupt channel\nshall be disconnected first. This is needed to pass the qualification\ntests.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "4c67bc74f016b0d360b8573e18969c0ff7926974",
      "tree": "d5eec3da59b642f48e7fcc2034b6d90b5fa54e01",
      "parents": [
        "e9c4bec63eac001651d6d30239dd4175cc3698ef"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:30:56 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:30 2006 -0700"
      },
      "message": "[Bluetooth] Support concurrent connect requests\n\nMost Bluetooth chips don\u0027t support concurrent connect requests, because\nthis would involve a multiple baseband page with only one radio. In the\ncase an upper layer like L2CAP requests a concurrent connect these chips\nreturn the error \"Command Disallowed\" for the second request. If this\nhappens it the responsibility of the Bluetooth core to queue the request\nand try again after the previous connect attempt has been completed.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e9c4bec63eac001651d6d30239dd4175cc3698ef",
      "tree": "1410a855bc5312b485ba0c91e1dc3c59c9ca4f75",
      "parents": [
        "df5c37ea9a3820a9515d8204450aec00f48f8f88"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:30:50 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:29 2006 -0700"
      },
      "message": "[Bluetooth] Make use of virtual devices tree\n\nThe Bluetooth subsystem currently uses a platform device for devices\nwith no parent. It is a better idea to use the new virtual devices\ntree for these.\n\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": "e9c5702e3c5558dade169949abd730173e87ef9c",
      "tree": "58ec8dcd1497b51e1d6a447d8c4a34a0bd2f108d",
      "parents": [
        "39c850863d5e36e72ecf9bc3537ec717bcce97fd"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sun Oct 15 17:30:22 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Oct 15 23:14:27 2006 -0700"
      },
      "message": "[Bluetooth] Fix compat ioctl for BNEP, CMTP and HIDP\n\nThere exists no attempt do deal with the fact that a structure with\na uint32_t followed by a pointer is going to be different for 32-bit\nand 64-bit userspace. Any 32-bit process trying to use it will be\nfailing with -EFAULT if it\u0027s lucky; suffering from having data dumped\nat a random address if it\u0027s not.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b68e31d0ebbcc909d1941f9f230c9d062a3a13d3",
      "tree": "b32902e5de02081cbb9eca49d7bb0b444e2b4f23",
      "parents": [
        "ed97bd37efd8ff7398d3a7eedf4bcbf245f5dad3"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Oct 02 02:17:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:14 2006 -0700"
      },
      "message": "[PATCH] const struct tty_operations\n\nAs part of an SMP cleanliness pass over UML, I consted a bunch of\nstructures in order to not have to document their locking.  One of these\nstructures was a struct tty_operations.  In order to const it in UML\nwithout introducing compiler complaints, the declaration of\ntty_set_operations needs to be changed, and then all of its callers need to\nbe fixed.\n\nThis patch declares all struct tty_operations in the tree as const.  In all\ncases, they are static and used only as input to tty_set_operations.  As an\nextra check, I ran an i386 allyesconfig build which produced no extra\nwarnings.\n\n53 drivers are affected.  I checked the history of a bunch of them, and in\nmost cases, there have been only a handful of maintenance changes in the\nlast six months.  serial_core.c was the busiest one that I looked at.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "860e13b5c591f1040b76fff57a6a3d6ca9633983",
      "tree": "cd6dd159aeb87fe3a7796293e5054f6656758ea3",
      "parents": [
        "37e97b4ef0d18b77a45a4714154daf3499206654"
      ],
      "author": {
        "name": "Arnaud Patard",
        "email": "arnaud.patard@rtp-net.org",
        "time": "Thu Sep 28 15:29:37 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:03:12 2006 -0700"
      },
      "message": "[Bluetooth]: Fix section mismatch of bt_sysfs_cleanup()\n\nThe bt_sysfs_cleanup() is marked with __exit attribute, but it will\nbe called from an __init function in the error case. So the __exit\nattribute must be removed.\n\nSigned-off-by: Arnaud Patard \u003carnaud.patard@rtp-net.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "37e97b4ef0d18b77a45a4714154daf3499206654",
      "tree": "a4a245c811525bbe7bf728558a6415b50bf1ea3c",
      "parents": [
        "75f3123c118743f52b690d9ab41649814befda0a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Sep 28 15:29:09 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:03:11 2006 -0700"
      },
      "message": "[Bluetooth]: Don\u0027t update disconnect timer for incoming connections\n\nIn the case of device pairing the only safe method is to establish\na low-level ACL link. In this case, the remote side should not use\nthe disconnect timer to give the other side the chance to enter the\nPIN code. If the disconnect timer is used, the connection will be\ndropped to soon, because it is impossible to identify an actual user\nof this link.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ac59344ef25d5f0ebadb5663cf700d25d2a3886",
      "tree": "b4dbdf1589e0a7b6d3ed04d38fb7615a54f0d7af",
      "parents": [
        "1143e5a6d4d69cd36d44e0184769aa2b17041a10"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 26 09:43:48 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:33 2006 -0700"
      },
      "message": "[Bluetooth] Support create connection cancel command\n\nIn case of non-blocking connects it is possible that the last user\nof an ACL link quits before the connection has been fully established.\nThis will lead to a race condition where the internal state of a\nconnection is closed, but the actual link has been established and is\nactive. In case of Bluetooth 1.2 and later devices it is possible to\ncall create connection cancel to abort the connect. For older devices\nthe disconnect timer will be used to trigger the needed disconnect.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "1143e5a6d4d69cd36d44e0184769aa2b17041a10",
      "tree": "e3fb71220eb08c0c0b03ec7f76655818338643b5",
      "parents": [
        "b4c612a473eb816dff6e5ab6820dff338057aa8d"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Sep 23 09:57:20 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:32 2006 -0700"
      },
      "message": "[Bluetooth] Read local version information on device init\n\nThe local version information are needed to identify certain feature\nsets of devices. They must be read on device init and stored for later\nuse. It is also possible to access them through the device model.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b4c612a473eb816dff6e5ab6820dff338057aa8d",
      "tree": "26d2a88e2355ec9852abf4f70b7990087da3a58c",
      "parents": [
        "7785162cf2baf7c6c1e4ad8ae5888f85fcc5febc"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Sep 23 09:54:38 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:31 2006 -0700"
      },
      "message": "[Bluetooth] Return EINPROGRESS for non-blocking socket calls\n\nIn case of non-blocking socket calls we should return EINPROGRESS\nand not EAGAIN.\n\nSigned-off-by: Ulisses Furquim \u003culissesf@gmail.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "defc761bc25643eeedee3abd6af0079ef214b55d",
      "tree": "4ac4e3584629345f8c20f5dcaace2cb011fa9a94",
      "parents": [
        "0ac53939a06c610b394aeb0211b985804f2d2da3"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Sep 21 16:04:00 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:29 2006 -0700"
      },
      "message": "[Bluetooth] Handle command complete event for exit periodic inquiry\n\nThe command complete event of the exit periodic inquiry command must\nclear the HCI_INQUIRY flag and finish the HCI request.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0ac53939a06c610b394aeb0211b985804f2d2da3",
      "tree": "40e4b80f70a7cd42705e49a817950857055f2d1b",
      "parents": [
        "9c724357f432df5ddc83a62c8168414a604cd420"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Jul 08 13:57:15 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:28 2006 -0700"
      },
      "message": "[Bluetooth] Add HCI device identifier for SDIO cards\n\nThis patch assigns the next free HCI device identifier to Bluetooth\ndevices based on the SDIO interface.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "0a85b964e141a4b8db6eaf500ceace12f8f52f93",
      "tree": "8479bdc23230d7c1fa581af15199d7bef7268231",
      "parents": [
        "b219e3ac66183fc9771b94af931fb5fd41d586ec"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jul 06 13:09:02 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:26 2006 -0700"
      },
      "message": "[Bluetooth] Integrate services into the driver model\n\nThis patch integrates the services of the Bluetooth protocols RFCOMM,\nBNEP and HIDP into the driver model. This makes it possible to assign\nthe virtual TTY, network and input devices to a specific Bluetooth\nconnection.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b219e3ac66183fc9771b94af931fb5fd41d586ec",
      "tree": "671a6a553c6744fce2eb35c6508249cbc616c326",
      "parents": [
        "4d0eb0049ce94101f7f169f89216ba58475219e2"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jul 06 12:38:46 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:25 2006 -0700"
      },
      "message": "[Bluetooth] Integrate low-level connections into the driver model\n\nThis patch integrates the low-level connections (ACL and SCO) into the\ndriver model. Every connection is presented as device with the parent\nset to its host controller device.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "4d0eb0049ce94101f7f169f89216ba58475219e2",
      "tree": "ed203109e89d7bf1cb6f92a833b592bab1a7fd9d",
      "parents": [
        "9918f230969bdaf3df012b77abcbcd4cdb0ab221"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jul 06 12:34:41 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:24 2006 -0700"
      },
      "message": "[Bluetooth] Remove unused host controller attributes\n\nThis patch removes the unused device attribute entries for the Bluetooth\nhost controllers.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "98bcd08b5bfe78c1c9bda5768aa081e0fe4fcc4f",
      "tree": "171c7984eeaade72d57a325ee26d55e4408bbdd1",
      "parents": [
        "2266d8886f64c66e0a4e61e3e1c19dbc27ed00d4"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Jul 14 11:42:12 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 24 12:44:25 2006 -0700"
      },
      "message": "[Bluetooth] Correct RFCOMM channel MTU for broken implementations\n\nSome Bluetooth RFCOMM implementations try to negotiate a bigger channel\nMTU than we can support for a particular session. The maximum MTU for\na RFCOMM session is limited through the L2CAP layer. So if the other\nside proposes a channel MTU that is bigger than the underlying L2CAP\nMTU, we should reduce it to the L2CAP MTU of the session minus five\nbytes for the RFCOMM headers.\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": "0263603a01e802f79e369ac489793e5320031560",
      "tree": "c906fbabd2cf5004e6d010cd84e5b7c167b9a8d5",
      "parents": [
        "420cc3505f91246699bcfb88d30c4466adc0b87b"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jul 12 22:57:52 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 12 15:34:33 2006 -0700"
      },
      "message": "[Bluetooth] Let BT_HIDP depend on INPUT\n\nThis patch lets BT_HIDP depend on instead of select INPUT. This fixes\nthe following warning during an s390 build:\n\nnet/bluetooth/hidp/Kconfig:4:warning: \u0027select\u0027 used by config symbol\n\u0027BT_HIDP\u0027 refer to undefined symbol \u0027INPUT\u0027\n\nA dependency on INPUT also implies !S390 (and therefore makes the\nexplicit dependency obsolete) since INPUT is not available on s390.\n\nThe practical difference should be nearly zero, since INPUT is always\nset to y unless EMBEDDED\u003dy (or S390\u003dy).\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "25ea6db04a96d7871e7ece27d566f3228d59d932",
      "tree": "12d0b6735a451111c8b45ebb9523caac9578d0fc",
      "parents": [
        "c2ce920468624d87ec5f91f080ea99681dae6d88"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Jul 06 15:40:09 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 12 15:34:28 2006 -0700"
      },
      "message": "[Bluetooth] Remaining transitions to use kzalloc()\n\nThis patch makes the remaining transitions to use kzalloc().\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "300b93974ff64f1bef1ac8294547c573954f0300",
      "tree": "94b33acffd99c50986ba4ede3e61495485a88342",
      "parents": [
        "7c2660b00fae0575dd4ce5c7b6bf30762b632045"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:37:55 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:54:09 2006 -0700"
      },
      "message": "[Bluetooth] Add RFCOMM role switch support\n\nThis patch adds the support for RFCOMM role switching before the\nconnection is fully established.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "7c2660b00fae0575dd4ce5c7b6bf30762b632045",
      "tree": "de8be4ccdb2d1977be00af5afae65a0a97a7aec9",
      "parents": [
        "0139418c943c3389cf75afc4f4d2b2fa52bbf7c9"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:51 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:54:07 2006 -0700"
      },
      "message": "[Bluetooth] Allow disabling of credit based flow control\n\nThis patch adds the module parameter disable_cfc which can be used to\ndisable the credit based flow control. The credit based flow control\nwas introduced with the Bluetooth 1.1 specification and devices can\nnegotiate its support, but for testing purpose it is helpful to allow\ndisabling of it.\n\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": "27d35284258c596900e0e41c46932ec4abe6a7b1",
      "tree": "d1a0f236b589e14f3c6251e9dfcb2b2aafdaf5ad",
      "parents": [
        "04837f6447c7f3ef114cda1ad761822dedbff8cf"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:37 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:54:00 2006 -0700"
      },
      "message": "[Bluetooth] Add platform device for virtual and serial devices\n\nThis patch adds a generic Bluetooth platform device that can be used\nas parent device by virtual and serial devices.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "04837f6447c7f3ef114cda1ad761822dedbff8cf",
      "tree": "66dbb53e82550723191ffe54f0457eafc3a92d32",
      "parents": [
        "da1f519851d1c66331363253f364bdb5d924ea96"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:33 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:53:58 2006 -0700"
      },
      "message": "[Bluetooth] Add automatic sniff mode support\n\nThis patch introduces the automatic sniff mode feature. This allows\nthe host to switch idle connections into sniff mode to safe power.\n\nSigned-off-by: Ulisses Furquim \u003culissesf@gmail.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "da1f519851d1c66331363253f364bdb5d924ea96",
      "tree": "8760b2edb53a50d679403385dc2cbf960bb3cffc",
      "parents": [
        "dcdcf63ef12dc3fbaa17a6d04f16ada8e63bb4d0"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Jul 03 10:02:29 2006 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Jul 03 19:53:56 2006 -0700"
      },
      "message": "[Bluetooth] Correct SCO buffer size on request\n\nThis patch introduces a quirk that allows the drivers to tell the host\nto correct the SCO buffer size values.\n\nSigned-off-by: Olivier Galibert \u003cgalibert@pobox.com\u003e\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": "602cada851b28c5792339786efe872fbdc1f5d41",
      "tree": "233d474b74d6038b5bb54a07ad91dd1bb10b0218",
      "parents": [
        "82991c6f2c361acc17279b8124d9bf1878973435",
        "fee68d1cc0d9bd863e51c16cdcd707737b16bb38"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 14:19:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jun 29 14:19:21 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/devfs-2.6: (22 commits)\n  [PATCH] devfs: Remove it from the feature_removal.txt file\n  [PATCH] devfs: Last little devfs cleanups throughout the kernel tree.\n  [PATCH] devfs: Rename TTY_DRIVER_NO_DEVFS to TTY_DRIVER_DYNAMIC_DEV\n  [PATCH] devfs: Remove the tty_driver devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the line_driver devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the videodevice devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the gendisk devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the miscdevice devfs_name field as it\u0027s no longer needed\n  [PATCH] devfs: Remove the devfs_fs_kernel.h file from the tree\n  [PATCH] devfs: Remove devfs_remove() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_cdev() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_bdev() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_symlink() function from the kernel tree\n  [PATCH] devfs: Remove devfs_mk_dir() function from the kernel tree\n  [PATCH] devfs: Remove devfs_*_tape() functions from the kernel tree\n  [PATCH] devfs: Remove devfs support from the sound subsystem\n  [PATCH] devfs: Remove devfs support from the ide subsystem.\n  [PATCH] devfs: Remove devfs support from the serial subsystem\n  [PATCH] devfs: Remove devfs from the init code\n  [PATCH] devfs: Remove devfs from the partition code\n  ...\n"
    },
    {
      "commit": "817d6d3bceaf34c99f5343820f9b9e6021f0655c",
      "tree": "651104833124262db46c2a372b7adb55289cd8dd",
      "parents": [
        "e0ac4761fa52acda90f9f53819c81474b511e3af"
      ],
      "author": {
        "name": "Paul Fulghum",
        "email": "paulkf@microgate.com",
        "time": "Wed Jun 28 04:26:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jun 28 14:59:05 2006 -0700"
      },
      "message": "[PATCH] remove TTY_DONT_FLIP\n\nRemove TTY_DONT_FLIP tty flag.  This flag was introduced in 2.1.X kernels\nto prevent the N_TTY line discipline functions read_chan() and\nn_tty_receive_buf() from running at the same time.  2.2.15 introduced\ntty-\u003eread_lock to protect access to the N_TTY read buffer, which is the\nonly state requiring protection between these two functions.\n\nThe current TTY_DONT_FLIP implementation is broken for SMP, and is not\nuniversally honored by drivers that send data directly to the line\ndiscipline receive_buf function.\n\nBecause TTY_DONT_FLIP is not necessary, is broken in implementation, and is\nnot universally honored, it is removed.\n\nSigned-off-by: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "331b831983f9d706f4a40d08a996d5c2c7a6ea7b",
      "tree": "9d47d5f8d6f882d26c8deade0e44442cebf2e288",
      "parents": [
        "f4eaa37017a5a68f67ef86729508022c13fb8e6d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:09 2006 -0700"
      },
      "message": "[PATCH] devfs: Rename TTY_DRIVER_NO_DEVFS to TTY_DRIVER_DYNAMIC_DEV\n\nI\u0027ve always found this flag confusing.  Now that devfs is no longer around, it\nhas been renamed, and the documentation for when this flag should be used has\nbeen updated.\n\nAlso fixes all drivers that use this flag.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f4eaa37017a5a68f67ef86729508022c13fb8e6d",
      "tree": "7a2b03b575d77922c1e0bf1da7b74e87451462c6",
      "parents": [
        "264f48646e6829b4d00a0e058452578318e6fb15"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 20 21:15:16 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 26 12:25:09 2006 -0700"
      },
      "message": "[PATCH] devfs: Remove the tty_driver devfs_name field as it\u0027s no longer needed\n\nAlso fixes all drivers that set this field.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cdee5751bf91d02616aaf30a5affef56105e3b79",
      "tree": "8a7d6f231dc9de03c7d9bb5b6623bd539900abce",
      "parents": [
        "ad96b485b4224785bcca478cfba02d06c46ee575"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Wed Apr 05 22:28:14 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Apr 09 22:25:29 2006 -0700"
      },
      "message": "[BLUETOOTH] sco: Possible double free.\n\nthis fixes coverity bug id #1068.\nhci_send_sco() frees skb if (skb-\u003elen \u003e hdev-\u003esco_mtu).\nSince it returns a negative error value only in this case, we\ncan directly return here.\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e041c683412d5bf44dc2b109053e3b837b71742d",
      "tree": "9d271066ef379da0c0fb3b8cb4137abd5d2ebba0",
      "parents": [
        "76b81e2b0e2241accebcc68e126bc5ab958661b9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 27 01:16:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:50 2006 -0800"
      },
      "message": "[PATCH] Notifier chain update: API changes\n\nThe kernel\u0027s implementation of notifier chains is unsafe.  There is no\nprotection against entries being added to or removed from a chain while the\nchain is in use.  The issues were discussed in this thread:\n\n    http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113018709002036\u0026w\u003d2\n\nWe noticed that notifier chains in the kernel fall into two basic usage\nclasses:\n\n\t\"Blocking\" chains are always called from a process context\n\tand the callout routines are allowed to sleep;\n\n\t\"Atomic\" chains can be called from an atomic context and\n\tthe callout routines are not allowed to sleep.\n\nWe decided to codify this distinction and make it part of the API.  Therefore\nthis set of patches introduces three new, parallel APIs: one for blocking\nnotifiers, one for atomic notifiers, and one for \"raw\" notifiers (which is\nreally just the old API under a new name).  New kinds of data structures are\nused for the heads of the chains, and new routines are defined for\nregistration, unregistration, and calling a chain.  The three APIs are\nexplained in include/linux/notifier.h and their implementation is in\nkernel/sys.c.\n\nWith atomic and blocking chains, the implementation guarantees that the chain\nlinks will not be corrupted and that chain callers will not get messed up by\nentries being added or removed.  For raw chains the implementation provides no\nguarantees at all; users of this API must provide their own protections.  (The\nidea was that situations may come up where the assumptions of the atomic and\nblocking APIs are not appropriate, so it should be possible for users to\nhandle these things in their own way.)\n\nThere are some limitations, which should not be too hard to live with.  For\natomic/blocking chains, registration and unregistration must always be done in\na process context since the chain is protected by a mutex/rwsem.  Also, a\ncallout routine for a non-raw chain must not try to register or unregister\nentries on its own chain.  (This did happen in a couple of places and the code\nhad to be changed to avoid it.)\n\nSince atomic chains may be called from within an NMI handler, they cannot use\nspinlocks for synchronization.  Instead we use RCU.  The overhead falls almost\nentirely in the unregister routine, which is okay since unregistration is much\nless frequent that calling a chain.\n\nHere is the list of chains that we adjusted and their classifications.  None\nof them use the raw API, so for the moment it is only a placeholder.\n\n  ATOMIC CHAINS\n  -------------\narch/i386/kernel/traps.c:\t\ti386die_chain\narch/ia64/kernel/traps.c:\t\tia64die_chain\narch/powerpc/kernel/traps.c:\t\tpowerpc_die_chain\narch/sparc64/kernel/traps.c:\t\tsparc64die_chain\narch/x86_64/kernel/traps.c:\t\tdie_chain\ndrivers/char/ipmi/ipmi_si_intf.c:\txaction_notifier_list\nkernel/panic.c:\t\t\t\tpanic_notifier_list\nkernel/profile.c:\t\t\ttask_free_notifier\nnet/bluetooth/hci_core.c:\t\thci_notifier\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_chain\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_expect_chain\nnet/ipv6/addrconf.c:\t\t\tinet6addr_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_expect_chain\nnet/netlink/af_netlink.c:\t\tnetlink_chain\n\n  BLOCKING CHAINS\n  ---------------\narch/powerpc/platforms/pseries/reconfig.c:\tpSeries_reconfig_chain\narch/s390/kernel/process.c:\t\tidle_chain\narch/x86_64/kernel/process.c\t\tidle_notifier\ndrivers/base/memory.c:\t\t\tmemory_chain\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_policy_notifier_list\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_transition_notifier_list\ndrivers/macintosh/adb.c:\t\tadb_client_list\ndrivers/macintosh/via-pmu.c\t\tsleep_notifier_list\ndrivers/macintosh/via-pmu68k.c\t\tsleep_notifier_list\ndrivers/macintosh/windfarm_core.c\twf_client_list\ndrivers/usb/core/notify.c\t\tusb_notifier_list\ndrivers/video/fbmem.c\t\t\tfb_notifier_list\nkernel/cpu.c\t\t\t\tcpu_chain\nkernel/module.c\t\t\t\tmodule_notify_list\nkernel/profile.c\t\t\tmunmap_notifier\nkernel/profile.c\t\t\ttask_exit_notifier\nkernel/sys.c\t\t\t\treboot_notifier_list\nnet/core/dev.c\t\t\t\tnetdev_chain\nnet/decnet/dn_dev.c:\t\t\tdnaddr_chain\nnet/ipv4/devinet.c:\t\t\tinetaddr_chain\n\nIt\u0027s possible that some of these classifications are wrong.  If they are,\nplease let us know or submit a patch to fix them.  Note that any chain that\ngets called very frequently should be atomic, because the rwsem read-locking\nused for blocking chains is very likely to incur cache misses on SMP systems.\n(However, if the chain\u0027s callout routines may sleep then the chain cannot be\natomic.)\n\nThe patch set was written by Alan Stern and Chandra Seetharaman, incorporating\nmaterial written by Keith Owens and suggestions from Paul McKenney and Andrew\nMorton.\n\n[jes@sgi.com: restructure the notifier chain initialization macros]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f348d70a324e15afc701a494f32ec468abb7d1eb",
      "tree": "a4cb43429f7f08a6621c581bd99e4a03198e8c67",
      "parents": [
        "501f2499b897ca4be68b1acc7a4bc8cf66f5fd24"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications\n\nImplement the half-closed devices notifiation, by adding a new POLLRDHUP\n(and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the\nexisting POLLHUP handling, that does not report correctly half-closed\ndevices, was feared to be changed, this implementation leaves the current\nPOLLHUP reporting unchanged and simply add a new bit that is set in the few\nplaces where it makes sense.  The same thing was discussed and conceptually\nagreed quite some time ago:\n\nhttp://lkml.org/lkml/2003/7/12/116\n\nSince this new event bit is added to the existing Linux poll infrastruture,\neven the existing poll/select system calls will be able to use it.  As far\nas the existing POLLHUP handling, the patch leaves it as is.  The\npollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing\narchs and sets the bit in the six relevant files.  The other attached diff\nis the simple change required to sys/epoll.h to add the EPOLLRDHUP\ndefinition.\n\nThere is \"a stupid program\" to test POLLRDHUP delivery here:\n\n http://www.xmailserver.org/pollrdhup-test.c\n\nIt tests poll(2), but since the delivery is same epoll(2) will work equally.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "67b52e554ba973947704fcb4fc284d7bab9ab931",
      "tree": "9f933717a5cacef5f7fe4a57e7761ea59e09bc6f",
      "parents": [
        "e952f31bce6e9f64db01f607abc46529ba57ac9e"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Tue Mar 21 23:53:16 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 21 23:53:16 2006 -0800"
      },
      "message": "[BLUETOOTH]: Return negative error constant\n\nReturn negative error constant.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4a3e2f711a00a1feb72ae12fdc749da10179d185",
      "tree": "76ced9d3270dea4b864da71fa1d4415d2e3c8b11",
      "parents": [
        "d4ccd08cdfa8d34f4d25b62041343c52fc79385f"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Mar 20 22:33:17 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:33:17 2006 -0800"
      },
      "message": "[NET] sem2mutex: net/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b005bd34c895ebeefd1c62f90a329730b88946b",
      "tree": "7a7143c1b29b902122fe5e17a10ad4cb2ec66291",
      "parents": [
        "56f3a40a5e7586043260669cc794e56fa58339e1"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 13 11:40:03 2006 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 13 11:40:03 2006 +0100"
      },
      "message": "[Bluetooth] Fix NULL pointer dereferences of the HCI socket\n\nThis patch fixes the two NULL pointer dereferences found by the sfuzz\ntool from Ilja van Sprundel. The first one was a call of getsockname()\nfor an unbound socket and the second was calling accept() while this\noperation isn\u0027t implemented for the HCI socket interface.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "56f3a40a5e7586043260669cc794e56fa58339e1",
      "tree": "a2a756d86f8ff9da8d5668d2dfbf51f5107c53ce",
      "parents": [
        "e9bb4c9929a63b23dcc637fae312b36b038bdc61"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 13 11:39:57 2006 +0100"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Mon Feb 13 11:39:57 2006 +0100"
      },
      "message": "[Bluetooth] Reduce L2CAP MTU for RFCOMM connections\n\nThis patch reduces the default L2CAP MTU for all RFCOMM connections\nfrom 1024 to 1013 to improve the interoperability with some broken\nRFCOMM implementations. To make this more flexible the L2CAP MTU\nbecomes also a module parameter and so it can changed at runtime.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\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": "12fe2c588df77d60dfe13b432f95d00f76b8c969",
      "tree": "514a23f41aa81d89c5385ba67a58a0144693fbcc",
      "parents": [
        "ea2e90dfcee2c09eff8a180976ace071922663a5"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Jan 10 13:08:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 10 13:08:21 2006 -0800"
      },
      "message": "[NET]: Remove unneeded kmalloc() return value casts\n\nGet rid of needless casting of kmalloc() return value in net/\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3f4a687f683f536506d0aa6b22e6cb3e79639ce",
      "tree": "d1f5fb7177d1dd254e63189cb89e51a86a24f171",
      "parents": [
        "770cfbcffdf0011ecf3a12435ecb5604c4c97a19"
      ],
      "author": {
        "name": "Kris Katterjohn",
        "email": "kjak@users.sourceforge.net",
        "time": "Mon Jan 09 16:01:43 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 10 12:54:28 2006 -0800"
      },
      "message": "[NET]: Change memcmp(,,ETH_ALEN) to compare_ether_addr()\n\nThis changes some memcmp(one,two,ETH_ALEN) to compare_ether_addr(one,two).\n\nSigned-off-by: Kris Katterjohn \u003ckjak@users.sourceforge.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33f0f88f1c51ae5c2d593d26960c760ea154c2e2",
      "tree": "f53a38cf49406863f079d74d0e8f91b276f7c1a9",
      "parents": [
        "6ed80991a2dce4afc113be35089c564d62fa1f11"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 09 20:54:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jan 10 08:01:59 2006 -0800"
      },
      "message": "[PATCH] TTY layer buffering revamp\n\nThe API and code have been through various bits of initial review by\nserial driver people but they definitely need to live somewhere for a\nwhile so the unconverted drivers can get knocked into shape, existing\ndrivers that have been updated can be better tuned and bugs whacked out.\n\nThis replaces the tty flip buffers with kmalloc objects in rings. In the\nnormal situation for an IRQ driven serial port at typical speeds the\nbehaviour is pretty much the same, two buffers end up allocated and the\nkernel cycles between them as before.\n\nWhen there are delays or at high speed we now behave far better as the\nbuffer pool can grow a bit rather than lose characters. This also means\nthat we can operate at higher speeds reliably.\n\nFor drivers that receive characters in blocks (DMA based, USB and\nespecially virtualisation) the layer allows a lot of driver specific\ncode that works around the tty layer with private secondary queues to be\nremoved. The IBM folks need this sort of layer, the smart serial port\npeople do, the virtualisers do (because a virtualised tty typically\noperates at infinite speed rather than emulating 9600 baud).\n\nFinally many drivers had invalid and unsafe attempts to avoid buffer\noverflows by directly invoking tty methods extracted out of the innards\nof work queue structs. These are no longer needed and all go away. That\nfixes various random hangs with serial ports on overflow.\n\nThe other change in here is to optimise the receive_room path that is\nused by some callers. It turns out that only one ldisc uses receive room\nexcept asa constant and it updates it far far less than the value is\nread. We thus make it a variable not a function call.\n\nI expect the code to contain bugs due to the size alone but I\u0027ll be\nwatching and squashing them and feeding out new patches as it goes.\n\nBecause the buffers now dynamically expand you should only run out of\nbuffering when the kernel runs out of memory for real.  That means a lot of\nthe horrible hacks high performance drivers used to do just aren\u0027t needed any\nmore.\n\nDescription:\n\ntty_insert_flip_char is an old API and continues to work as before, as does\ntty_flip_buffer_push() [this is why many drivers dont need modification].  It\ndoes now also return the number of chars inserted\n\nThere are also\n\ntty_buffer_request_room(tty, len)\n\nwhich asks for a buffer block of the length requested and returns the space\nfound.  This improves efficiency with hardware that knows how much to\ntransfer.\n\nand tty_insert_flip_string_flags(tty, str, flags, len)\n\nto insert a string of characters and flags\n\nFor a smart interface the usual code is\n\n    len \u003d tty_request_buffer_room(tty, amount_hardware_says);\n    tty_insert_flip_string(tty, buffer_from_card, len);\n\nMore description!\n\nAt the moment tty buffers are attached directly to the tty.  This is causing a\nlot of the problems related to tty layer locking, also problems at high speed\nand also with bursty data (such as occurs in virtualised environments)\n\nI\u0027m working on ripping out the flip buffers and replacing them with a pool of\ndynamically allocated buffers.  This allows both for old style \"byte I/O\"\ndevices and also helps virtualisation and smart devices where large blocks of\ndata suddenely materialise and need storing.\n\nSo far so good.  Lots of drivers reference tty-\u003eflip.*.  Several of them also\ncall directly and unsafely into function pointers it provides.  This will all\nbreak.  Most drivers can use tty_insert_flip_char which can be kept as an API\nbut others need more.\n\nAt the moment I\u0027ve added the following interfaces, if people think more will\nbe needed now is a good time to say\n\n int tty_buffer_request_room(tty, size)\n\nTry and ensure at least size bytes are available, returns actual room (may be\nzero).  At the moment it just uses the flipbuf space but that will change.\nRepeated calls without characters being added are not cumulative.  (ie if you\ncall it with 1, 1, 1, and then 4 you\u0027ll have four characters of space.  The\nother functions will also try and grow buffers in future but this will be a\nmore efficient way when you know block sizes.\n\n int tty_insert_flip_char(tty, ch, flag)\n\nAs before insert a character if there is room.  Now returns 1 for success, 0\nfor failure.\n\n int tty_insert_flip_string(tty, str, len)\n\nInsert a block of non error characters.  Returns the number inserted.\n\n int tty_prepare_flip_string(tty, strptr, len)\n\nAdjust the buffer to allow len characters to be added.  Returns a buffer\npointer in strptr and the length available.  This allows for hardware that\nneeds to use functions like insl or mencpy_fromio.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db9edfd7e339ca4113153d887e782dd05be5a9eb",
      "tree": "0a4ba12447a0cabc800adc7e9667d284777b0181",
      "parents": [
        "631b034724364b413e8a52e7c2e03a9d77e4c2b4",
        "fd586bacf439f36dea9b9bf6e6133ac87df2730c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 18:44:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 04 18:44:12 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\nTrivial manual merge fixup for usb_find_interface clashes.\n"
    },
    {
      "commit": "312c004d36ce6c739512bac83b452f4c20ab1f62",
      "tree": "e61e8331680a0da29557fe21414d3b31e62c9293",
      "parents": [
        "5f123fbd80f4f788554636f02bf73e40f914e0d6"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@suse.de",
        "time": "Wed Nov 16 09:00:00 2005 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jan 04 16:18:08 2006 -0800"
      },
      "message": "[PATCH] driver core: replace \"hotplug\" by \"uevent\"\n\nLeave the overloaded \"hotplug\" word to susbsystems which are handling\nreal devices. The driver core does not \"plug\" anything, it just exports\nthe state to userspace and generates events.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@suse.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\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": "1ebb92521d0bc2d4ef772730d29333c06b807191",
      "tree": "d480ca68fd4c7f1185e189942feef8d85edbb659",
      "parents": [
        "7ef934b3b73f74aea23aa0e98affe86d7ea816a3"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Nov 08 09:57:21 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 09:57:21 2005 -0800"
      },
      "message": "[Bluetooth]: Add endian annotations to the core\n\nThis patch adds the endian annotations to the Bluetooth core.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a51482bde22f99c63fbbb57d5d46cc666384e379",
      "tree": "5482ed1c0803edb2ffbd51035de921fb0f72d82b",
      "parents": [
        "ac7c98eca88a854755475fcfe1b2bf5f97f90d99"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Nov 08 09:41:34 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 08 09:41:34 2005 -0800"
      },
      "message": "[NET]: kfree cleanup\n\nFrom: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\n\nThis is the net/ part of the big kfree cleanup patch.\n\nRemove pointless checks for NULL prior to calling kfree() in net/.\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@conectiva.com.br\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "a6e0eb3791dcefc6dd4db53a23de5cfb18fe9a97",
      "tree": "982d3656cdadc21225dcfe4dc3092d70461d9458",
      "parents": [
        "018a2cdf1e633497bb4f01eb86a7cbffa611776d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Oct 29 12:02:00 2005 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 10:35:08 2005 -0700"
      },
      "message": "[PATCH] bluetooth hidp is broken on s390\n\nBluetooth HIDP selects INPUT and it really needs it to be there - module\ndepends on input core.  And input core is never built on s390...\n\nMarked as broken on s390, for now; if somebody has better ideas, feel\nfree to fix it and remove dependency...\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84860bf0644d7c45afe7ddbd30731c3e3c371fae",
      "tree": "d6c4b98a9c3fd9981e7fcc5d7729c9e01e327767",
      "parents": [
        "8caf89157d64f1eedba37113afb4b303b2b3e301",
        "6fbfddcb52d8d9fa2cd209f5ac2a1c87497d55b5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 28 13:09:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 28 13:09:47 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n"
    },
    {
      "commit": "dd7f5527b3e68a7b2f715ae1a21164383f418013",
      "tree": "f0be8a5ab9368e24ecf59b82aa183d7b3546ec87",
      "parents": [
        "6516455d3b42b33759a33a8102c1b8b48af4d9c9"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:53 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:53 2005 +0200"
      },
      "message": "[Bluetooth] Update security filter for Extended Inquiry Response\n\nThis patch updates the HCI security filter with support for the Extended\nInquiry Response (EIR) feature.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "6516455d3b42b33759a33a8102c1b8b48af4d9c9",
      "tree": "e7395ebcfa68c4a5aa25d80e4b279313f3fdea3e",
      "parents": [
        "0372a6627f862f90a2c43772befeecef508cfd7b"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:48 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:48 2005 +0200"
      },
      "message": "[Bluetooth] Make more functions static\n\nThis patch makes another bunch of functions static.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "408c1ce2716c7a004851c93f9f9dcf3d763bc240",
      "tree": "11e086c44c2f313e27cec46c7ad799b7614b01c9",
      "parents": [
        "741b2252a5e14d6c60a913c77a6099abe73a854a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:36 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Fri Oct 28 19:20:36 2005 +0200"
      },
      "message": "[Bluetooth] Move CRC table into RFCOMM core\n\nThis patch moves rfcomm_crc_table[] into the RFCOMM core, because there\nis no need to keep it in a separate file.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "34abf91f4036c01669e298e649b7ba85cadf82eb",
      "tree": "fa17affbf6f71c9759110ceac41f9897b61b6d1c",
      "parents": [
        "17dd3f0f7aa729a042af5d3318ff9b3e7781b45b"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor_core@ameritech.net",
        "time": "Thu Sep 15 02:01:40 2005 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 28 09:52:54 2005 -0700"
      },
      "message": "[PATCH] Input: convert net/bluetooth to dynamic input_dev allocation\n\nInput: convert net/bluetooth to dynamic input_dev allocation\n\nThis is required for input_dev sysfs integration\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\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": "354d28d5f8546e115ebaae9311897f0bc4b6a8d4",
      "tree": "0eb7bd932d43047b592b80d42808f8cdc33286c8",
      "parents": [
        "21d9e30ed020d24336cc3bee2a4e04da232ed554"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 13 01:32:31 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 13 01:32:31 2005 +0200"
      },
      "message": "[Bluetooth] Prevent RFCOMM connections through the RAW socket\n\nThis patch adds additional checks to prevent RFCOMM connections be\nestablished through the RAW socket interface.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "21d9e30ed020d24336cc3bee2a4e04da232ed554",
      "tree": "686594eece8d9a2593a62bd1a54a4effa1710b41",
      "parents": [
        "862aad56dcd67fd0313db51d09a5269f7e3f1f0b"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 13 01:32:25 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Sep 13 01:32:25 2005 +0200"
      },
      "message": "[Bluetooth] Add support for extended inquiry responses\n\nThis patch adds the handling of the extended inquiry responses and\ninserts them into the inquiry cache.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a61bbcf28a8cb0ba56f8193d512f7222e711a294",
      "tree": "33ae1976ab3b08aac516debb2742d2c6696d5436",
      "parents": [
        "25ed891019b84498c83903ecf53df7ce35e9cff6"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Aug 14 17:24:31 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:58:24 2005 -0700"
      },
      "message": "[NET]: Store skb-\u003etimestamp as offset to a base timestamp\n\nReduces skb size by 8 bytes on 64-bit.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d48d93947dd9ea21c5cdc76a8581b06a4a39281",
      "tree": "96a1cbfe83a02e27fed3d30f1ac9f2fe05c17506",
      "parents": [
        "2eb25a6c34504254760e67172f7518d6bfdd7676"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Aug 09 20:30:28 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:55:13 2005 -0700"
      },
      "message": "[Bluetooth]: Move packet type into the SKB control buffer\n\nThis patch moves the usage of packet type into the SKB control\nbuffer. After this patch it is now possible to shrink the sk_buff\nstructure and redefine its pkt_type.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "3a5e903c09aed19ca4a1bb26d87b8d6461a93818",
      "tree": "b9761b89aaba6537d06893091a2f43c9a8e17c3f",
      "parents": [
        "7b9eb9e2099f6f4acd6a36bcd7820d27c3cf5ee3"
      ],
      "author": {
        "name": "J. Suter",
        "email": "jsuter@hardwave.de",
        "time": "Tue Aug 09 20:28:46 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:55:03 2005 -0700"
      },
      "message": "[Bluetooth]: Implement RFCOMM remote port negotiation\n\nThis patch implements the remote port negotiation (RPN) of the RFCOMM\nprotocol for Bluetooth.\n\nSigned-off-by: J. Suter \u003cjsuter@hardwave.de\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b9eb9e2099f6f4acd6a36bcd7820d27c3cf5ee3",
      "tree": "0cbd3c78723f3a66b9a35c725fa1328ebad28453",
      "parents": [
        "85a1e930bf628700e8e9c166b1f5c1c26d3651cc"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "ext-timo.teras@nokia.com",
        "time": "Tue Aug 09 20:28:21 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:54:58 2005 -0700"
      },
      "message": "[Bluetooth]: Call tty_hangup() when DCD is de-asserted\n\nThe RFCOMM layer does not handle properly the de-assertation\nof CD signal. It should call tty_hangup() to work properly.\n\nSigned-off-by: Timo Teräs \u003cext-timo.teras@nokia.com\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "85a1e930bf628700e8e9c166b1f5c1c26d3651cc",
      "tree": "3361d42b6c32145517df9ac95117221a01a8132c",
      "parents": [
        "45bb4bf08b9c16122af84d3f26a018c8022b24e5"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Aug 09 20:28:02 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:54:53 2005 -0700"
      },
      "message": "[Bluetooth]: Track page scan repetition mode changes\n\nThe HCI page scan repetition mode change event contains the actual\npage scan repetition mode for the remote device. It is the same\nvalue that is received from an inquiry response and it can be used\nto make further reconnections faster.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "45bb4bf08b9c16122af84d3f26a018c8022b24e5",
      "tree": "f8eb941e9ba34345652ab6330ab6b84c8598dec1",
      "parents": [
        "4aa769b99724953a6f322c648c0cfbe8c6616382"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Tue Aug 09 20:27:49 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:54:47 2005 -0700"
      },
      "message": "[Bluetooth]: Workaround for inquiry results with RSSI and page scan mode\n\nThis patch implements a workaround for buggy Bluetooth 1.2 devices from\nSilicon Wave. Their inquiry results with RSSI contain the page scan mode\nfield. This field was removed in the final Bluetooth 1.2 specification.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "576c7d858f36cab6110b29db7b53964d5132cf30",
      "tree": "0a1241104c7a52323425a3f6930163340e2d0829",
      "parents": [
        "66e8b6c31b9254243afaac8af4135e84e11dd38e"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:54 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:54 2005 +0200"
      },
      "message": "[Bluetooth] Add direction and timestamp to stack internal events\n\nThis patch changes the direction to incoming and adds the timestamp\nto all stack internal events.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "66e8b6c31b9254243afaac8af4135e84e11dd38e",
      "tree": "cf25ee6d3b555a246be9bf8b783d3a92325cf5d9",
      "parents": [
        "e9a3e671c09d419f29710d8620ed916d3bf7d7ab"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:51 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:51 2005 +0200"
      },
      "message": "[Bluetooth] Remove unused functions and cleanup symbol exports\n\nThis patch removes the unused bt_dump() function and it also removes\nits BT_DMP macro. It also unexports the hci_dev_get(), hci_send_cmd()\nand hci_si_event() functions.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "dcc365d8f28d6a2332fa37e64d669858a8d017e8",
      "tree": "45872ffc48be8319a88259cfcef86605a1f94a4e",
      "parents": [
        "cad0f6270c0bae5bcae6af3c7ac7bd3ae5d9b618"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:42 2005 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 06 12:36:42 2005 +0200"
      },
      "message": "[Bluetooth] Revert session reference counting fix\n\nThe fix for the reference counting problem of the signal DLC introduced\na race condition which leads to an oops. The reason for it is not fully\nunderstood by now and so revert this fix, because the reference counting\nproblem is not crashing the RFCOMM layer and its appearance it rare.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b03efcfb2180289718991bb984044ce6c5b7d1b0",
      "tree": "f3b0c6c4eaf0991c28b7116a20994b48398eea57",
      "parents": [
        "a92b7b80579fe68fe229892815c750f6652eb6a9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 14:57:23 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 14:57:23 2005 -0700"
      },
      "message": "[NET]: Transform skb_queue_len() binary tests into skb_queue_empty()\n\nThis is part of the grand scheme to eliminate the qlen\nmember of skb_queue_head, and subsequently remove the\n\u0027list\u0027 member of sk_buff.\n\nMost users of skb_queue_len() want to know if the queue is\nempty or not, and that\u0027s trivially done with skb_queue_empty()\nwhich doesn\u0027t use the skb_queue_head-\u003eqlen member and instead\nuses the queue list emptyness as the test.\n\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"
    }
  ]
}
