)]}'
{
  "log": [
    {
      "commit": "20eb20851385e53d27dff9ed79c4e68e58e3d9da",
      "tree": "b3a5a5e16f823d5ca39f44124bf18b5f63fa2a2f",
      "parents": [
        "657197486950474bf30290344339fd0914fe99c9"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Sep 04 00:03:29 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sat Oct 13 05:38:40 2012 +0900"
      },
      "message": "xfrm: Workaround incompatibility of ESN and async crypto\n\n[ Upstream commit 3b59df46a449ec9975146d71318c4777ad086744 ]\n\nESN for esp is defined in RFC 4303. This RFC assumes that the\nsequence number counters are always up to date. However,\nthis is not true if an async crypto algorithm is employed.\n\nIf the sequence number counters are not up to date on sequence\nnumber check, we may incorrectly update the upper 32 bit of\nthe sequence number. This leads to a DOS.\n\nWe workaround this by comparing the upper sequence number,\n(used for authentication) with the upper sequence number\ncomputed after the async processing. We drop the packet\nif these numbers are different.\n\nTo do this, we introduce a recheck function that does this\ncheck in the ESN case.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "0fcc0805df9cf7483e927cf6a4dc94938318c06a",
      "tree": "5218645ca3737cf7ec1d9b3a039b6a1ec8048931",
      "parents": [
        "27d50469825fd267f44e13fb0627b011c0da6abd"
      ],
      "author": {
        "name": "Vinicius Costa Gomes",
        "email": "vinicius.gomes@openbossa.org",
        "time": "Thu Aug 23 21:32:43 2012 -0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 02 10:30:34 2012 -0700"
      },
      "message": "Bluetooth: Change signature of smp_conn_security()\n\ncommit cc110922da7e902b62d18641a370fec01a9fa794 upstream.\n\nTo make it clear that it may be called from contexts that may not have\nany knowledge of L2CAP, we change the connection parameter, to receive\na hci_conn.\n\nThis also makes it clear that it is checking the security of the link.\n\nSigned-off-by: Vinicius Costa Gomes \u003cvinicius.gomes@openbossa.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo.padovan@collabora.co.uk\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n\n"
    },
    {
      "commit": "7c799a1e1ca2bc766574078b684c14474da9f704",
      "tree": "3920b2c94d08c9355c0f6f3e94b30f8ffd42529b",
      "parents": [
        "9e296becde8a8da5bcc1a8e22f27bdf9bd8636fe"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Aug 21 06:21:17 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 02 10:29:37 2012 -0700"
      },
      "message": "af_netlink: force credentials passing [CVE-2012-3520]\n\n[ Upstream commit e0e3cea46d31d23dc40df0a49a7a2c04fe8edfea ]\n\nPablo Neira Ayuso discovered that avahi and\npotentially NetworkManager accept spoofed Netlink messages because of a\nkernel bug.  The kernel passes all-zero SCM_CREDENTIALS ancillary data\nto the receiver if the sender did not provide such data, instead of not\nincluding any such data at all or including the correct data from the\npeer (as it is the case with AF_UNIX).\n\nThis bug was introduced in commit 16e572626961\n(af_unix: dont send SCM_CREDENTIALS by default)\n\nThis patch forces passing credentials for netlink, as\nbefore the regression.\n\nAnother fix would be to not add SCM_CREDENTIALS in\nnetlink messages if not provided by the sender, but it\nmight break some programs.\n\nWith help from Florian Weimer \u0026 Petr Matousek\n\nThis issue is designated as CVE-2012-3520\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Petr Matousek \u003cpmatouse@redhat.com\u003e\nCc: Florian Weimer \u003cfweimer@redhat.com\u003e\nCc: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4658b24b2dd0e4c6215db2203743fa999765e8a0",
      "tree": "9a88804f646780a2424a5ac87586151e923b1b64",
      "parents": [
        "0a1f711681e0d7068b69c0697c4ba284fbf1b2bf"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Mon Jul 30 16:11:42 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Oct 02 10:29:34 2012 -0700"
      },
      "message": "tcp: Apply device TSO segment limit earlier\n\n[ Upstream commit 1485348d2424e1131ea42efc033cbd9366462b01 ]\n\nCache the device gso_max_segs in sock::sk_gso_max_segs and use it to\nlimit the size of TSO skbs.  This avoids the need to fall back to\nsoftware GSO for local TCP senders.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "c51c618955c052c1d34de9b325bb49a375e874a0",
      "tree": "ebee40a61655a3d283186432a1201c98331255a9",
      "parents": [
        "09838df9d2ff31252a69a8393ea96a9734eba7e8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Jun 12 06:03:51 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jul 16 09:03:47 2012 -0700"
      },
      "message": "bonding: Fix corrupted queue_mapping\n\n[ Upstream commit 5ee31c6898ea5537fcea160999d60dc63bc0c305 ]\n\nIn the transmit path of the bonding driver, skb-\u003ecb is used to\nstash the skb-\u003equeue_mapping so that the bonding device can set its\nown queue mapping.  This value becomes corrupted since the skb-\u003ecb is\nalso used in __dev_xmit_skb.\n\nWhen transmitting through bonding driver, bond_select_queue is\ncalled from dev_queue_xmit.  In bond_select_queue the original\nskb-\u003equeue_mapping is copied into skb-\u003ecb (via bond_queue_mapping)\nand skb-\u003equeue_mapping is overwritten with the bond driver queue.\n\nSubsequently in dev_queue_xmit, __dev_xmit_skb is called which writes\nthe packet length into skb-\u003ecb, thereby overwriting the stashed\nqueue mappping.  In bond_dev_queue_xmit (called from hard_start_xmit),\nthe queue mapping for the skb is set to the stashed value which is now\nthe skb length and hence is an invalid queue for the slave device.\n\nIf we want to save skb-\u003equeue_mapping into skb-\u003ecb[], best place is to\nadd a field in struct qdisc_skb_cb, to make sure it wont conflict with\nother layers (eg : Qdiscc, Infiniband...)\n\nThis patchs also makes sure (struct qdisc_skb_cb)-\u003edata is aligned on 8\nbytes :\n\nnetem qdisc for example assumes it can store an u64 in it, without\nmisalignment penalty.\n\nNote : we only have 20 bytes left in (struct qdisc_skb_cb)-\u003edata[].\nThe largest user is CHOKe and it fills it.\n\nBased on a previous patch from Tom Herbert.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nReported-by: Tom Herbert \u003ctherbert@google.com\u003e\nCc: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nCc: Roland Dreier \u003croland@kernel.org\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "89a5feb2d59123824c344665c09328bb9fdb4fe9",
      "tree": "120726522dff4bb022322f2f3ab7df1b2885bb19",
      "parents": [
        "f375a27c17c033dc9503b12b8379055fd59110ba"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Tue Jun 05 03:00:18 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jul 16 09:03:45 2012 -0700"
      },
      "message": "inetpeer: fix a race in inetpeer_gc_worker()\n\n[ Upstream commit 55432d2b543a4b6dfae54f5c432a566877a85d90 ]\n\ncommit 5faa5df1fa2024 (inetpeer: Invalidate the inetpeer tree along with\nthe routing cache) added a race :\n\nBefore freeing an inetpeer, we must respect a RCU grace period, and make\nsure no user will attempt to increase refcnt.\n\ninetpeer_invalidate_tree() waits for a RCU grace period before inserting\ninetpeer tree into gc_list and waking the worker. At that time, no\nconcurrent lookup can find a inetpeer in this tree.\n\nSigned-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "6fc5186c0628a5dfcfdbc9355bad225613fa7618",
      "tree": "1ce61633f84fe564e2d4761ffd6701f3b68b43c9",
      "parents": [
        "31fab24bd9cdb9733383cbf9732cda1649f2a760"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "pmoore@redhat.com",
        "time": "Fri Jun 01 05:54:56 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jul 16 09:03:44 2012 -0700"
      },
      "message": "cipso: handle CIPSO options correctly when NetLabel is disabled\n\n[ Upstream commit 20e2a86485967c385d7c7befc1646e4d1d39362e ]\n\nWhen NetLabel is not enabled, e.g. CONFIG_NETLABEL\u003dn, and the system\nreceives a CIPSO tagged packet it is dropped (cipso_v4_validate()\nreturns non-zero).  In most cases this is the correct and desired\nbehavior, however, in the case where we are simply forwarding the\ntraffic, e.g. acting as a network bridge, this becomes a problem.\n\nThis patch fixes the forwarding problem by providing the basic CIPSO\nvalidation code directly in ip_options_compile() without the need for\nthe NetLabel or CIPSO code.  The new validation code can not perform\nany of the CIPSO option label/value verification that\ncipso_v4_validate() does, but it can verify the basic CIPSO option\nformat.\n\nThe behavior when NetLabel is enabled is unchanged.\n\nSigned-off-by: Paul Moore \u003cpmoore@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "be078c8003469b75aa9119254c163b2961321744",
      "tree": "a0aab8f217d0a956633a0e81fb6008ee8cd3f8e3",
      "parents": [
        "86a2569c810dff80fc7ba16dd77bc2697c28317a"
      ],
      "author": {
        "name": "Gao feng",
        "email": "gaofeng@cn.fujitsu.com",
        "time": "Sat May 26 01:30:53 2012 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Sun Jun 10 00:36:15 2012 +0900"
      },
      "message": "ipv6: fix incorrect ipsec fragment\n\n[ Upstream commit 0c1833797a5a6ec23ea9261d979aa18078720b74 ]\n\nSince commit ad0081e43a\n\"ipv6: Fragment locally generated tunnel-mode IPSec6 packets as needed\"\nthe fragment of packets is incorrect.\nbecause tunnel mode needs IPsec headers and trailer for all fragments,\nwhile on transport mode it is sufficient to add the headers to the\nfirst fragment and the trailer to the last.\n\nso modify mtu and maxfraglen base on ipsec mode and if fragment is first\nor last.\n\nwith my test,it work well(every fragment\u0027s size is the mtu)\nand does not trigger slow fragment path.\n\nChanges from v1:\n\tthough optimization, mtu_prev and maxfraglen_prev can be delete.\n\treplace xfrm mode codes with dst_entry\u0027s new frag DST_XFRM_TUNNEL.\n\tadd fuction ip6_append_data_mtu to make codes clearer.\n\nSigned-off-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "60374631487a6dbf6b888729022f0e8d76eec8fb",
      "tree": "4adda0d1a8616ce586ea26a25717477c9e18667a",
      "parents": [
        "8aa51d64c1f526e43b1e7f89fb8b98c2fd583f4b",
        "671267bf3aac3dae0555730b07ef29c042e325b2"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 15 16:38:00 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 15 16:38:00 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem\n"
    },
    {
      "commit": "a7d7723ae7c0178d715c06c5621e8fd8014ba92f",
      "tree": "8e09cd37ed267e792481c2ad699bcaff9596e5e7",
      "parents": [
        "574e02abaf816b582685805f0c1150ca9f1f18ee"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Sun May 13 03:20:07 2012 -0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 14 13:51:25 2012 -0400"
      },
      "message": "Bluetooth: notify userspace of security level change\n\nIt fixes L2CAP socket based security level elevation during a\nconnection. The HID profile needs this (for keyboards) and it is the only\nway to achieve the security level elevation when using the management\ninterface to talk to the kernel (hence the management enabling patch\nbeing the one that exposes this issue).\n\nIt enables the userspace a security level change when the socket is\nalready connected and create a way to notify the socket the result of the\nrequest. At the moment of the request the socket is made non writable, if\nthe request fails the connections closes, otherwise the socket is made\nwritable again, POLL_OUT is emmited.\n\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e0268868ba064980488fc8c194db3d8e9fb2959c",
      "tree": "7b8bfb4cceb0a5d184a2fe651aab5aec59a216d3",
      "parents": [
        "c57b54684060c8aced64a5b78ff69ff289af97b9"
      ],
      "author": {
        "name": "Nicolas Dichtel",
        "email": "nicolas.dichtel@6wind.com",
        "time": "Fri May 04 05:24:54 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 10 23:15:47 2012 -0400"
      },
      "message": "sctp: check cached dst before using it\n\ndst_check() will take care of SA (and obsolete field), hence\nIPsec rekeying scenario is taken into account.\n\nSigned-off-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nAcked-by: Vlad Yaseivch \u003cvyasevich@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "076e7779c07c56c7fa593a28c71ea7432d0c7c95",
      "tree": "70a4227b5d898c1abf37ed5779b0cd6f29b471bc",
      "parents": [
        "116a0fc31c6c9b8fc821be5a96e5bf0b43260131",
        "66f2c99af3d6f2d0aa1120884cf1c60613ef61c0"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 01 14:14:05 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 01 14:14:05 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless into for-davem\n"
    },
    {
      "commit": "518fbf9cdf17875d808596afd77fc115a6f942ca",
      "tree": "608d2b518feafdfeade863774e14fc6e37ca31dd",
      "parents": [
        "5414fc12e32a0e0833ec61ba8be864c46cd19966"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "edumazet@google.com",
        "time": "Sat Apr 28 23:21:56 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:37:59 2012 -0400"
      },
      "message": "net: fix sk_sockets_allocated_read_positive\n\nDenys Fedoryshchenko reported frequent crashes on a proxy server and kindly\nprovided a lockdep report that explains it all :\n\n  [  762.903868]\n  [  762.903880] \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  [  762.903890] [ INFO: inconsistent lock state ]\n  [  762.903903] 3.3.4-build-0061 #8 Not tainted\n  [  762.904133] ---------------------------------\n  [  762.904344] inconsistent {IN-SOFTIRQ-W} -\u003e {SOFTIRQ-ON-W} usage.\n  [  762.904542] squid/1603 [HC0[0]:SC0[0]:HE1:SE1] takes:\n  [  762.904542]  (key#3){+.?...}, at: [\u003cc0232cc4\u003e]\n__percpu_counter_sum+0xd/0x58\n  [  762.904542] {IN-SOFTIRQ-W} state was registered at:\n  [  762.904542]   [\u003cc0158b84\u003e] __lock_acquire+0x284/0xc26\n  [  762.904542]   [\u003cc01598e8\u003e] lock_acquire+0x71/0x85\n  [  762.904542]   [\u003cc0349765\u003e] _raw_spin_lock+0x33/0x40\n  [  762.904542]   [\u003cc0232c93\u003e] __percpu_counter_add+0x58/0x7c\n  [  762.904542]   [\u003cc02cfde1\u003e] sk_clone_lock+0x1e5/0x200\n  [  762.904542]   [\u003cc0303ee4\u003e] inet_csk_clone_lock+0xe/0x78\n  [  762.904542]   [\u003cc0315778\u003e] tcp_create_openreq_child+0x1b/0x404\n  [  762.904542]   [\u003cc031339c\u003e] tcp_v4_syn_recv_sock+0x32/0x1c1\n  [  762.904542]   [\u003cc031615a\u003e] tcp_check_req+0x1fd/0x2d7\n  [  762.904542]   [\u003cc0313f77\u003e] tcp_v4_do_rcv+0xab/0x194\n  [  762.904542]   [\u003cc03153bb\u003e] tcp_v4_rcv+0x3b3/0x5cc\n  [  762.904542]   [\u003cc02fc0c4\u003e] ip_local_deliver_finish+0x13a/0x1e9\n  [  762.904542]   [\u003cc02fc539\u003e] NF_HOOK.clone.11+0x46/0x4d\n  [  762.904542]   [\u003cc02fc652\u003e] ip_local_deliver+0x41/0x45\n  [  762.904542]   [\u003cc02fc4d1\u003e] ip_rcv_finish+0x31a/0x33c\n  [  762.904542]   [\u003cc02fc539\u003e] NF_HOOK.clone.11+0x46/0x4d\n  [  762.904542]   [\u003cc02fc857\u003e] ip_rcv+0x201/0x23e\n  [  762.904542]   [\u003cc02daa3a\u003e] __netif_receive_skb+0x319/0x368\n  [  762.904542]   [\u003cc02dac07\u003e] netif_receive_skb+0x4e/0x7d\n  [  762.904542]   [\u003cc02dacf6\u003e] napi_skb_finish+0x1e/0x34\n  [  762.904542]   [\u003cc02db122\u003e] napi_gro_receive+0x20/0x24\n  [  762.904542]   [\u003cf85d1743\u003e] e1000_receive_skb+0x3f/0x45 [e1000e]\n  [  762.904542]   [\u003cf85d3464\u003e] e1000_clean_rx_irq+0x1f9/0x284 [e1000e]\n  [  762.904542]   [\u003cf85d3926\u003e] e1000_clean+0x62/0x1f4 [e1000e]\n  [  762.904542]   [\u003cc02db228\u003e] net_rx_action+0x90/0x160\n  [  762.904542]   [\u003cc012a445\u003e] __do_softirq+0x7b/0x118\n  [  762.904542] irq event stamp: 156915469\n  [  762.904542] hardirqs last  enabled at (156915469): [\u003cc019b4f4\u003e]\n__slab_alloc.clone.58.clone.63+0xc4/0x2de\n  [  762.904542] hardirqs last disabled at (156915468): [\u003cc019b452\u003e]\n__slab_alloc.clone.58.clone.63+0x22/0x2de\n  [  762.904542] softirqs last  enabled at (156915466): [\u003cc02ce677\u003e]\nlock_sock_nested+0x64/0x6c\n  [  762.904542] softirqs last disabled at (156915464): [\u003cc0349914\u003e]\n_raw_spin_lock_bh+0xe/0x45\n  [  762.904542]\n  [  762.904542] other info that might help us debug this:\n  [  762.904542]  Possible unsafe locking scenario:\n  [  762.904542]\n  [  762.904542]        CPU0\n  [  762.904542]        ----\n  [  762.904542]   lock(key#3);\n  [  762.904542]   \u003cInterrupt\u003e\n  [  762.904542]     lock(key#3);\n  [  762.904542]\n  [  762.904542]  *** DEADLOCK ***\n  [  762.904542]\n  [  762.904542] 1 lock held by squid/1603:\n  [  762.904542]  #0:  (sk_lock-AF_INET){+.+.+.}, at: [\u003cc03055c0\u003e]\nlock_sock+0xa/0xc\n  [  762.904542]\n  [  762.904542] stack backtrace:\n  [  762.904542] Pid: 1603, comm: squid Not tainted 3.3.4-build-0061 #8\n  [  762.904542] Call Trace:\n  [  762.904542]  [\u003cc0347b73\u003e] ? printk+0x18/0x1d\n  [  762.904542]  [\u003cc015873a\u003e] valid_state+0x1f6/0x201\n  [  762.904542]  [\u003cc0158816\u003e] mark_lock+0xd1/0x1bb\n  [  762.904542]  [\u003cc015876b\u003e] ? mark_lock+0x26/0x1bb\n  [  762.904542]  [\u003cc015805d\u003e] ? check_usage_forwards+0x77/0x77\n  [  762.904542]  [\u003cc0158bf8\u003e] __lock_acquire+0x2f8/0xc26\n  [  762.904542]  [\u003cc0159b8e\u003e] ? mark_held_locks+0x5d/0x7b\n  [  762.904542]  [\u003cc0159cf6\u003e] ? trace_hardirqs_on+0xb/0xd\n  [  762.904542]  [\u003cc0158dd4\u003e] ? __lock_acquire+0x4d4/0xc26\n  [  762.904542]  [\u003cc01598e8\u003e] lock_acquire+0x71/0x85\n  [  762.904542]  [\u003cc0232cc4\u003e] ? __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc0349765\u003e] _raw_spin_lock+0x33/0x40\n  [  762.904542]  [\u003cc0232cc4\u003e] ? __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc0232cc4\u003e] __percpu_counter_sum+0xd/0x58\n  [  762.904542]  [\u003cc02cebc4\u003e] __sk_mem_schedule+0xdd/0x1c7\n  [  762.904542]  [\u003cc02d178d\u003e] ? __alloc_skb+0x76/0x100\n  [  762.904542]  [\u003cc0305e8e\u003e] sk_wmem_schedule+0x21/0x2d\n  [  762.904542]  [\u003cc0306370\u003e] sk_stream_alloc_skb+0x42/0xaa\n  [  762.904542]  [\u003cc0306567\u003e] tcp_sendmsg+0x18f/0x68b\n  [  762.904542]  [\u003cc031f3dc\u003e] ? ip_fast_csum+0x30/0x30\n  [  762.904542]  [\u003cc0320193\u003e] inet_sendmsg+0x53/0x5a\n  [  762.904542]  [\u003cc02cb633\u003e] sock_aio_write+0xd2/0xda\n  [  762.904542]  [\u003cc015876b\u003e] ? mark_lock+0x26/0x1bb\n  [  762.904542]  [\u003cc01a1017\u003e] do_sync_write+0x9f/0xd9\n  [  762.904542]  [\u003cc01a2111\u003e] ? file_free_rcu+0x2f/0x2f\n  [  762.904542]  [\u003cc01a17a1\u003e] vfs_write+0x8f/0xab\n  [  762.904542]  [\u003cc01a284d\u003e] ? fget_light+0x75/0x7c\n  [  762.904542]  [\u003cc01a1900\u003e] sys_write+0x3d/0x5e\n  [  762.904542]  [\u003cc0349ec9\u003e] syscall_call+0x7/0xb\n  [  762.904542]  [\u003cc0340000\u003e] ? rp_sidt+0x41/0x83\n\nBug is that sk_sockets_allocated_read_positive() calls\npercpu_counter_sum_positive() without BH being disabled.\n\nThis bug was added in commit 180d8cd942ce33\n(foundations of per-cgroup memory pressure controlling.), since previous\ncode was using percpu_counter_read_positive() which is IRQ safe.\n\nIn __sk_mem_schedule() we dont need the precise count of allocated\nsockets and can revert to previous behavior.\n\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSined-off-by: Eric Dumazet \u003cedumazet@google.com\u003e\nCc: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Neal Cardwell \u003cncardwell@google.com\u003e\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5414fc12e32a0e0833ec61ba8be864c46cd19966",
      "tree": "ee196c526a87c126655624218969a191b60e365f",
      "parents": [
        "3885ca785a3618593226687ced84f3f336dc3860",
        "6cf51852486af3d79f57bf46d00209a14244dbaa"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:23:22 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 13:23:22 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://1984.lsi.us.es/net\n"
    },
    {
      "commit": "8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0",
      "tree": "7a57ad6ef5aa0147dd13bba8be9bd77ab60f3f50",
      "parents": [
        "582b8e3eadaec77788c1aa188081a8d5059c42a6"
      ],
      "author": {
        "name": "Hans Schillstrom",
        "email": "hans.schillstrom@ericsson.com",
        "time": "Thu Apr 26 07:47:44 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Apr 30 10:40:35 2012 +0200"
      },
      "message": "ipvs: kernel oops - do_ip_vs_get_ctl\n\nChange order of init so netns init is ready\nwhen register ioctl and netlink.\n\nVer2\n\tWhitespace fixes and __init added.\n\nReported-by: \"Ryan O\u0027Hara\" \u003crohara@redhat.com\u003e\nSigned-off-by: Hans Schillstrom \u003chans.schillstrom@ericsson.com\u003e\nAcked-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Jesper Dangaard Brouer \u003cbrouer@redhat.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "582b8e3eadaec77788c1aa188081a8d5059c42a6",
      "tree": "57f869aac66f51e56499c06027c7d1055285600b",
      "parents": [
        "4b984cd50bc1b6d492175cd77bfabb78e76ffa67"
      ],
      "author": {
        "name": "Hans Schillstrom",
        "email": "hans.schillstrom@ericsson.com",
        "time": "Thu Apr 26 09:45:35 2012 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Apr 30 10:40:35 2012 +0200"
      },
      "message": "ipvs: take care of return value from protocol init_netns\n\nip_vs_create_timeout_table() can return NULL\nAll functions protocol init_netns is affected of this patch.\n\nSigned-off-by: Hans Schillstrom \u003chans.schillstrom@ericsson.com\u003e\nAcked-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\n"
    },
    {
      "commit": "4dcc0637fc3c36c1f58ffdcaf2dc0dc7de72449f",
      "tree": "587ffa9493e4b6af014f9acb2c09177c2c54af3b",
      "parents": [
        "afa762f6871a8cb05fbef5d0f83fac14304aa816",
        "985140369be1e886754d8ac0375dd64e4f727311"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 27 15:16:43 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 27 15:16:43 2012 -0400"
      },
      "message": "Merge branch \u0027for-upstream\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth\n"
    },
    {
      "commit": "a881e963c7fe1f226e991ee9bbe8907acda93294",
      "tree": "5d2b2c01097300377821132f743cddd4fc90fed6",
      "parents": [
        "4d634ca35a8b38530b134ae92bc9e3cc9c23c030"
      ],
      "author": {
        "name": "Peter Huang (Peng)",
        "email": "peter.huangpeng@huawei.com",
        "time": "Thu Apr 19 20:12:51 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 24 00:16:24 2012 -0400"
      },
      "message": "set fake_rtable\u0027s dst to NULL to avoid kernel Oops\n\nbridge: set fake_rtable\u0027s dst to NULL to avoid kernel Oops\n\nwhen bridge is deleted before tap/vif device\u0027s delete, kernel may\nencounter an oops because of NULL reference to fake_rtable\u0027s dst.\nSet fake_rtable\u0027s dst to NULL before sending packets out can solve\nthis problem.\n\nv4 reformat, change br_drop_fake_rtable(skb) to {}\n\nv3 enrich commit header\n\nv2 introducing new flag DST_FAKE_RTABLE to dst_entry struct.\n\n[ Use \"do { } while (0)\" for nop br_drop_fake_rtable()\n  implementation -DaveM ]\n\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Peter Huang \u003cpeter.huangpeng@huawei.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3d4f0a025e621b82da08a76df4036d4267739dd",
      "tree": "0c4d40f6df2b919ccd8cbc596c440000b7d13b9a",
      "parents": [
        "4d846f02392a710f9604892ac3329e628e60a230"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Apr 17 14:03:53 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 17 22:32:00 2012 -0400"
      },
      "message": "net/sock.h: fix sk_peek_off kernel-doc warning\n\nFix kernel-doc warning in net/sock.h:\n\nWarning(include/net/sock.h:377): No description found for parameter \u0027sk_peek_off\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cda31e10baf47a8a7d9360d9488fb76294be1ca3",
      "tree": "7bc647cff2900f21a493718754b5261d96562564",
      "parents": [
        "edfb5d4687d587c9f714799c7ee27517118e12e6"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Mon Apr 16 03:35:41 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 17 22:31:59 2012 -0400"
      },
      "message": "ipv6: clean up rt6_clean_expires\n\nFunctionally, this change is a NOP.\n\nSemantically, rt6_clean_expires() wants to do rt-\u003edst.from \u003d NULL instead of\nrt-\u003edst.expires \u003d 0. It is clearing the RTF_EXPIRES flag, so the union is going\nto be treated as a pointer (dst.from) not a long (dst.expires).\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "edfb5d4687d587c9f714799c7ee27517118e12e6",
      "tree": "a3f420b125f8b55bd9135ab3c9299a2b22a24507",
      "parents": [
        "b95465c8fcd7c8619ff9ff7bbf8038ab31c7f34b"
      ],
      "author": {
        "name": "Jiri Bohac",
        "email": "jbohac@suse.cz",
        "time": "Mon Apr 16 03:34:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 17 22:31:51 2012 -0400"
      },
      "message": "ipv6: fix rt6_update_expires\n\nCommit 1716a961 (ipv6: fix problem with expired dst cache) broke PMTU\ndiscovery. rt6_update_expires() calls dst_set_expires(), which only updates\ndst-\u003eexpires if it has not been set previously (expires \u003d\u003d 0) or if the new\nexpires is earlier than the current dst-\u003eexpires.\n\nrt6_update_expires() needs to zero rt-\u003edst.expires, otherwise it will contain\nivalid data left over from rt-\u003edst.from and will confuse dst_set_expires().\n\nSigned-off-by: Jiri Bohac \u003cjbohac@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4362aaf6054b9760652c7047cdf6fa852acb6cf7",
      "tree": "e4346f7ecc24d63bd657348fba1b73724214f896",
      "parents": [
        "244b65dbfede788f2fa3fe2463c44d0809e97c6b"
      ],
      "author": {
        "name": "David Ward",
        "email": "david.ward@ll.mit.edu",
        "time": "Mon Apr 16 03:17:22 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 16 23:53:11 2012 -0400"
      },
      "message": "net_sched: red: Make minor corrections to comments\n\nSigned-off-by: David Ward \u003cdavid.ward@ll.mit.edu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ec5bcadc21e13ceba8c144e4731eccac01d04f7",
      "tree": "f0851fd42f167cf85539d1bd9109b17e0e0bf59e",
      "parents": [
        "745c0ce35f904aeff8e1ea325c259a14a00ff1b7"
      ],
      "author": {
        "name": "Vishal Agarwal",
        "email": "vishal.agarwal@stericsson.com",
        "time": "Mon Apr 16 14:44:44 2012 +0530"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Apr 16 12:57:45 2012 +0300"
      },
      "message": "Bluetooth: Temporary keys should be retained during connection\n\nIf a key is non persistent then it should not be used in future\nconnections but it should be kept for current connection. And it\nshould be removed when connecion is removed.\n\nSigned-off-by: Vishal Agarwal \u003cvishal.agarwal@stericsson.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "745c0ce35f904aeff8e1ea325c259a14a00ff1b7",
      "tree": "e1d05d006621b7cfd1009265ea2afe73b5cc2149",
      "parents": [
        "87522a433ba6886b5ccbb497e0a7cb8097def64e"
      ],
      "author": {
        "name": "Vishal Agarwal",
        "email": "vishal.agarwal@stericsson.com",
        "time": "Fri Apr 13 17:43:22 2012 +0530"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Apr 16 12:57:40 2012 +0300"
      },
      "message": "Bluetooth: hci_persistent_key should return bool\n\nThis patch changes the return type of function hci_persistent_key\nfrom int to bool because it makes more sense to return information\nwhether a key is persistent or not as a bool.\n\nSigned-off-by: Vishal Agarwal \u003cvishal.agarwal@stericsson.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "1716a96101c49186bb0b8491922fd3e69030235f",
      "tree": "43794d2f033f439d25c63b1796e138d65fd746a8",
      "parents": [
        "d62f8dbb5b7771910f7c4657345df8ac93acb832"
      ],
      "author": {
        "name": "Gao feng",
        "email": "gaofeng@cn.fujitsu.com",
        "time": "Fri Apr 06 00:13:10 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 13 12:58:29 2012 -0400"
      },
      "message": "ipv6: fix problem with expired dst cache\n\nIf the ipv6 dst cache which copy from the dst generated by ICMPV6 RA packet.\nthis dst cache will not check expire because it has no RTF_EXPIRES flag.\nSo this dst cache will always be used until the dst gc run.\n\nChange the struct dst_entry,add a union contains new pointer from and expires.\nWhen rt6_info.rt6i_flags has no RTF_EXPIRES flag,the dst.expires has no use.\nwe can use this field to point to where the dst cache copy from.\nThe dst.from is only used in IPV6.\n\nrt6_check_expired check if rt6_info.dst.from is expired.\n\nip6_rt_copy only set dst.from when the ort has flag RTF_ADDRCONF\nand RTF_DEFAULT.then hold the ort.\n\nip6_dst_destroy release the ort.\n\nAdd some functions to operate the RTF_EXPIRES flag and expires(from) together.\nand change the code to use these new adding functions.\n\nChanges from v5:\nmodify ip6_route_add and ndisc_router_discovery to use new adding functions.\n\nOnly set dst.from when the ort has flag RTF_ADDRCONF\nand RTF_DEFAULT.then hold the ort.\n\nSigned-off-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa331df0e5e6ebac086ed80b4fbbfd912fe6b32a",
      "tree": "5cc76a05498c1a161367d72f2653744c3eaa8a27",
      "parents": [
        "0298dc9f2273fb2d596ae10d7700f054bfce601d"
      ],
      "author": {
        "name": "Larry Finger",
        "email": "Larry.Finger@lwfinger.net",
        "time": "Fri Apr 06 16:35:53 2012 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 09 15:54:48 2012 -0400"
      },
      "message": "mac80211: Convert WARN_ON to WARN_ON_ONCE\n\nWhen the control-rate tables are not set up correctly, it makes\nlittle sense to spam the logs, thus change the WARN_ON to WARN_ON_ONCE.\n\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "41833af713457fe92f432a7354bc690587652879",
      "tree": "6f821f85bd33c1823d557d1482f8aa6216cde5b3",
      "parents": [
        "f68e556e23d1a4176b563bcb25d8baf2c5313f91",
        "66f3b913e68e8e62bd2f9499495eeb6cc81b2662"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 09 15:47:49 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 09 15:47:49 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth\n"
    },
    {
      "commit": "66f3b913e68e8e62bd2f9499495eeb6cc81b2662",
      "tree": "ede083c071261502b9281c42c069e0ce61937e6e",
      "parents": [
        "2e8b506310f6433d5558387fd568d4bfb1d6a799"
      ],
      "author": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Thu Mar 29 09:47:53 2012 -0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Thu Apr 05 15:05:51 2012 -0300"
      },
      "message": "Bluetooth: Fix userspace compatibility issue with mgmt interface\n\nTo ensure that old user space versions do not accidentally pick up and\ntry to use the management channel, use a different channel number.\n\nReported-by: Keith Packard \u003ckeithp@keithp.com\u003e\nAcked-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "9b461783d3d49c74665b55b8ae1b7a1c038177a9",
      "tree": "e4f27485a0669871a6e331b6daf64157bec4447a",
      "parents": [
        "cff4c16296754888b6fd8c886bc860a888e20257",
        "44b52bccf855b0706de624c29fc3d82ca954bb4e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 03 19:15:48 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 03 19:15:48 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://1984.lsi.us.es/net\n"
    },
    {
      "commit": "c732a2af12e20f2784c8b0c9d2e289579313a413",
      "tree": "ae70a81143cffa51241da8f6087b89a403b65612",
      "parents": [
        "76ec9de843c3cff41b3b15b752e1d08d91f0ad18"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Mon Mar 19 09:42:31 2012 +0200"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed Mar 28 15:13:18 2012 -0300"
      },
      "message": "Bluetooth: mgmt: Fix timeout type\n\nSilence sparse warnings:\nnet/bluetooth/mgmt.c:865:19: warning: cast to restricted __le16\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "6c0c331e4c8ff6c0f7fa6cc5fd08d853d6c579c4",
      "tree": "819f4bb17b492dae2d9e7929dfd8cb31f072073d",
      "parents": [
        "84d9d0716b2d5f4a27de4801bd2dbf7aff5e1c38"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Mar 26 14:21:42 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed Mar 28 12:02:40 2012 -0300"
      },
      "message": "Bluetooth: Check for minimum data length in eir_has_data_type()\n\nIf passed 0 as data_length the (parsed \u003c data_length - 1) test will be\ntrue and cause a buffer overflow. In practice we need at least two bytes\nfor the element length and type so add a test for it to the very\nbeginning of the function.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "84d9d0716b2d5f4a27de4801bd2dbf7aff5e1c38",
      "tree": "904a091f877be933498eed2bfbf056f404c3b61a",
      "parents": [
        "8d7e1c7f7e5f9fe8f6279752fc33fcb77afd5001"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Mar 26 14:21:41 2012 +0300"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed Mar 28 12:02:40 2012 -0300"
      },
      "message": "Bluetooth: Don\u0027t increment twice in eir_has_data_type()\n\nThe parsed variable is already incremented inside the for-loop so there\nno need to increment it again (not to mention that the code was\nincrementing it the wrong amount).\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Gustavo Padovan \u003cgustavo@padovan.org\u003e\n"
    },
    {
      "commit": "94324962066231a938564bebad0f941cd2d06bb2",
      "tree": "fbf3906cbc625f7140bb01fe45b963ac4471add8",
      "parents": [
        "33b69bf80a3704d45341928e4ff68b6ebd470686"
      ],
      "author": {
        "name": "Johan Hovold",
        "email": "jhovold@gmail.com",
        "time": "Thu Mar 15 14:48:41 2012 +0100"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed Mar 28 12:02:35 2012 -0300"
      },
      "message": "Bluetooth: hci_core: fix NULL-pointer dereference at unregister\n\nMake sure hci_dev_open returns immediately if hci_dev_unregister has\nbeen called.\n\nThis fixes a race between hci_dev_open and hci_dev_unregister which can\nlead to a NULL-pointer dereference.\n\nBug is 100% reproducible using hciattach and a disconnected serial port:\n\n0. # hciattach -n /dev/ttyO1 any noflow\n\n1. hci_dev_open called from hci_power_on grabs req lock\n2. hci_init_req executes but device fails to initialise (times out\n   eventually)\n3. hci_dev_open is called from hci_sock_ioctl and sleeps on req lock\n4. hci_uart_tty_close calls hci_dev_unregister and sleeps on req lock in\n   hci_dev_do_close\n5. hci_dev_open (1) releases req lock\n6. hci_dev_do_close grabs req lock and returns as device is not up\n7. hci_dev_unregister sleeps in destroy_workqueue\n8. hci_dev_open (3) grabs req lock, calls hci_init_req and eventually sleeps\n9. hci_dev_unregister finishes, while hci_dev_open is still running...\n\n[   79.627136] INFO: trying to register non-static key.\n[   79.632354] the code is fine but needs lockdep annotation.\n[   79.638122] turning off the locking correctness validator.\n[   79.643920] [\u003cc00188bc\u003e] (unwind_backtrace+0x0/0xf8) from [\u003cc00729c4\u003e] (__lock_acquire+0x1590/0x1ab0)\n[   79.653594] [\u003cc00729c4\u003e] (__lock_acquire+0x1590/0x1ab0) from [\u003cc00733f8\u003e] (lock_acquire+0x9c/0x128)\n[   79.663085] [\u003cc00733f8\u003e] (lock_acquire+0x9c/0x128) from [\u003cc0040a88\u003e] (run_timer_softirq+0x150/0x3ac)\n[   79.672668] [\u003cc0040a88\u003e] (run_timer_softirq+0x150/0x3ac) from [\u003cc003a3b8\u003e] (__do_softirq+0xd4/0x22c)\n[   79.682281] [\u003cc003a3b8\u003e] (__do_softirq+0xd4/0x22c) from [\u003cc003a924\u003e] (irq_exit+0x8c/0x94)\n[   79.690856] [\u003cc003a924\u003e] (irq_exit+0x8c/0x94) from [\u003cc0013a50\u003e] (handle_IRQ+0x34/0x84)\n[   79.699157] [\u003cc0013a50\u003e] (handle_IRQ+0x34/0x84) from [\u003cc0008530\u003e] (omap3_intc_handle_irq+0x48/0x4c)\n[   79.708648] [\u003cc0008530\u003e] (omap3_intc_handle_irq+0x48/0x4c) from [\u003cc037499c\u003e] (__irq_usr+0x3c/0x60)\n[   79.718048] Exception stack(0xcf281fb0 to 0xcf281ff8)\n[   79.723358] 1fa0:                                     0001e6a0 be8dab00 0001e698 00036698\n[   79.731933] 1fc0: 0002df98 0002df38 0000001f 00000000 b6f234d0 00000000 00000004 00000000\n[   79.740509] 1fe0: 0001e6f8 be8d6aa0 be8dac50 0000aab8 80000010 ffffffff\n[   79.747497] Unable to handle kernel NULL pointer dereference at virtual address 00000000\n[   79.756011] pgd \u003d cf3b4000\n[   79.758850] [00000000] *pgd\u003d8f0c7831, *pte\u003d00000000, *ppte\u003d00000000\n[   79.765502] Internal error: Oops: 80000007 [#1]\n[   79.770294] Modules linked in:\n[   79.773529] CPU: 0    Tainted: G        W     (3.3.0-rc6-00002-gb5d5c87 #421)\n[   79.781066] PC is at 0x0\n[   79.783721] LR is at run_timer_softirq+0x16c/0x3ac\n[   79.788787] pc : [\u003c00000000\u003e]    lr : [\u003cc0040aa4\u003e]    psr: 60000113\n[   79.788787] sp : cf281ee0  ip : 00000000  fp : cf280000\n[   79.800903] r10: 00000004  r9 : 00000100  r8 : b6f234d0\n[   79.806427] r7 : c0519c28  r6 : cf093488  r5 : c0561a00  r4 : 00000000\n[   79.813323] r3 : 00000000  r2 : c054eee0  r1 : 00000001  r0 : 00000000\n[   79.820190] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user\n[   79.827728] Control: 10c5387d  Table: 8f3b4019  DAC: 00000015\n[   79.833801] Process gpsd (pid: 1265, stack limit \u003d 0xcf2802e8)\n[   79.839965] Stack: (0xcf281ee0 to 0xcf282000)\n[   79.844573] 1ee0: 00000002 00000000 c0040a24 00000000 00000002 cf281f08 00200200 00000000\n[   79.853210] 1f00: 00000000 cf281f18 cf281f08 00000000 00000000 00000000 cf281f18 cf281f18\n[   79.861816] 1f20: 00000000 00000001 c056184c 00000000 00000001 b6f234d0 c0561848 00000004\n[   79.870452] 1f40: cf280000 c003a3b8 c051e79c 00000001 00000000 00000100 3fa9e7b8 0000000a\n[   79.879089] 1f60: 00000025 cf280000 00000025 00000000 00000000 b6f234d0 00000000 00000004\n[   79.887756] 1f80: 00000000 c003a924 c053ad38 c0013a50 fa200000 cf281fb0 ffffffff c0008530\n[   79.896362] 1fa0: 0001e6a0 0000aab8 80000010 c037499c 0001e6a0 be8dab00 0001e698 00036698\n[   79.904998] 1fc0: 0002df98 0002df38 0000001f 00000000 b6f234d0 00000000 00000004 00000000\n[   79.913665] 1fe0: 0001e6f8 be8d6aa0 be8dac50 0000aab8 80000010 ffffffff 00fbf700 04ffff00\n[   79.922302] [\u003cc0040aa4\u003e] (run_timer_softirq+0x16c/0x3ac) from [\u003cc003a3b8\u003e] (__do_softirq+0xd4/0x22c)\n[   79.931945] [\u003cc003a3b8\u003e] (__do_softirq+0xd4/0x22c) from [\u003cc003a924\u003e] (irq_exit+0x8c/0x94)\n[   79.940582] [\u003cc003a924\u003e] (irq_exit+0x8c/0x94) from [\u003cc0013a50\u003e] (handle_IRQ+0x34/0x84)\n[   79.948913] [\u003cc0013a50\u003e] (handle_IRQ+0x34/0x84) from [\u003cc0008530\u003e] (omap3_intc_handle_irq+0x48/0x4c)\n[   79.958404] [\u003cc0008530\u003e] (omap3_intc_handle_irq+0x48/0x4c) from [\u003cc037499c\u003e] (__irq_usr+0x3c/0x60)\n[   79.967773] Exception stack(0xcf281fb0 to 0xcf281ff8)\n[   79.973083] 1fa0:                                     0001e6a0 be8dab00 0001e698 00036698\n[   79.981658] 1fc0: 0002df98 0002df38 0000001f 00000000 b6f234d0 00000000 00000004 00000000\n[   79.990234] 1fe0: 0001e6f8 be8d6aa0 be8dac50 0000aab8 80000010 ffffffff\n[   79.997161] Code: bad PC value\n[   80.000396] ---[ end trace 6f6739840475f9ee ]---\n[   80.005279] Kernel panic - not syncing: Fatal exception in interrupt\n\nCc: stable \u003cstable@vger.kernel.org\u003e\nSigned-off-by: Johan Hovold \u003cjhovold@gmail.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "3f17790c2d8524c3ddc4946bd716714becf079e1",
      "tree": "ef1e5d5ff2cb57c7b9f7900f695a9d8d9b26a740",
      "parents": [
        "22e7a424854b80f00bd5686b6539726b8ca95420"
      ],
      "author": {
        "name": "Hemant Gupta",
        "email": "hemant.gupta@stericsson.com",
        "time": "Wed Mar 28 17:09:09 2012 +0530"
      },
      "committer": {
        "name": "Gustavo Padovan",
        "email": "gustavo@padovan.org",
        "time": "Wed Mar 28 12:02:19 2012 -0300"
      },
      "message": "Bluetooth: Use correct flags for checking HCI_SSP_ENABLED bit\n\nThis patch uses the correct flags for checking the HCI_SSP_ENABLED bit.\nWithout this authentication request was not being initiated.\n\nSigned-off-by: Hemant Gupta \u003chemant.gupta@stericsson.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "7dd30d447b7f4a129586cce8e57d0163dde876b0",
      "tree": "f6a3c26bccbd31e144c8c68fda979988739d4af5",
      "parents": [
        "de8856d2c11f562c60ed9340a83db4a4f829a6e6",
        "643c61e119459e9d750087b7b34be94491efebf9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 27 22:15:01 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 27 22:15:01 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless\n"
    },
    {
      "commit": "de8856d2c11f562c60ed9340a83db4a4f829a6e6",
      "tree": "0b871e5f4cf3204c4c6243c7622c4787d56d48ee",
      "parents": [
        "66f03c614c0902ccf7d6160459362a9352f33271",
        "94f826b8076e2cb92242061e92f21b5baa3eccc2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 27 16:52:32 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 27 16:52:32 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n 1) Name string overrun fix in gianfar driver from Joe Perches.\n\n 2) VHOST bug fixes from Michael S. Tsirkin and Nadav Har\u0027El\n\n 3) Fix dependencies on xt_LOG netfilter module, from Pablo Neira Ayuso.\n\n 4) Fix RCU locking in xt_CT, also from Pablo Neira Ayuso.\n\n 5) Add a parameter to skb_add_rx_frag() so we can fix the truesize\n    adjustments in the drivers that use it.  The individual drivers\n    aren\u0027t fixed by this commit, but will be dealt with using follow-on\n    commits.  From Eric Dumazet.\n\n 6) Add some device IDs to qmi_wwan driver, from Andrew Bird.\n\n 7) Fix a potential rcu_read_lock() imbalancein rt6_fill_node().  From\n    Eric Dumazet.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  net: fix a potential rcu_read_lock() imbalance in rt6_fill_node()\n  net: add a truesize parameter to skb_add_rx_frag()\n  gianfar: Fix possible overrun and simplify interrupt name field creation\n  USB: qmi_wwan: Add ZTE (Vodafone) K3570-Z and K3571-Z net interfaces\n  USB: option: Ignore ZTE (Vodafone) K3570/71 net interfaces\n  USB: qmi_wwan: Add ZTE (Vodafone) K3565-Z and K4505-Z net interfaces\n  qlcnic: Bug fix for LRO\n  netfilter: nf_conntrack: permanently attach timeout policy to conntrack\n  netfilter: xt_CT: fix assignation of the generic protocol tracker\n  netfilter: xt_CT: missing rcu_read_lock section in timeout assignment\n  netfilter: cttimeout: fix dependency with l4protocol conntrack module\n  netfilter: xt_LOG: use CONFIG_IP6_NF_IPTABLES instead of CONFIG_IPV6\n  vhost: fix release path lockdep checks\n  vhost: don\u0027t forget to schedule()\n  tools/virtio: stub out strong barriers\n  tools/virtio: add linux/hrtimer.h stub\n  tools/virtio: add linux/module.h stub\n"
    },
    {
      "commit": "66266b3ab4871958ed6a1e43f502cadaf3becfc8",
      "tree": "202d9da52387cd9ea0997d79c9e83bed15a9fab1",
      "parents": [
        "e92109be7a6a04808c3ed586475ba1e5ea56ecbd"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Mar 15 13:25:41 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 26 15:07:25 2012 -0400"
      },
      "message": "cfg80211: allow CFG80211_SIGNAL_TYPE_UNSPEC in station_info\n\nThe station_info struct had demanded dBm signal values, but the\ncfg80211 wireless extensions implementation was also accepting\n\"unspecified\" (i.e. RSSI) unit values while the nl80211 code was\ncompletely unaware of them.  Resolve this by formally allowing the\n\"unspecified\" units while making nl80211 ignore them.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n"
    },
    {
      "commit": "f3d229c68bb47170f04f81e51c9ed5d4286cebdb",
      "tree": "9c3876f0fe7d7936c5b2c141456ab69e17bed670",
      "parents": [
        "1d5c88e3f5403c1910477e4bcc71c3d5d40de6d5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@suse.com",
        "time": "Wed Mar 07 23:45:44 2012 +0000"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Mar 26 14:00:28 2012 +0200"
      },
      "message": "netfilter: xt_LOG: don\u0027t use xchg() for simple assignment\n\nAt least on ia64 the (bogus) use of xchg() here results in the compiler\nwarning about an unused expression result. As only an assignment is\nintended here, convert it to such.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@suse.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "250f6715a4112d6686670c5a62ceb9305da94616",
      "tree": "ee1c9b41ed1fed8174efb312421902f19c877e8c",
      "parents": [
        "11bcb32848ddb5ab28f09f142b625e2ba4d55c4c",
        "313162d0b83836e2f57e51b9b8650fb4b9c396ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:41:37 2012 -0700"
      },
      "message": "Merge tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull \u003clinux/device.h\u003e avoidance patches from Paul Gortmaker:\n \"Nearly every subsystem has some kind of header with a proto like:\n\n\tvoid foo(struct device *dev);\n\n  and yet there is no reason for most of these guys to care about the\n  sub fields within the device struct.  This allows us to significantly\n  reduce the scope of headers including headers.  For this instance, a\n  reduction of about 40% is achieved by replacing the include with the\n  simple fact that the device is some kind of a struct.\n\n  Unlike the much larger module.h cleanup, this one is simply two\n  commits.  One to fix the implicit \u003clinux/device.h\u003e users, and then one\n  to delete the device.h includes from the linux/include/ dir wherever\n  possible.\"\n\n* tag \u0027device-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  device.h: audit and cleanup users in main include dir\n  device.h: cleanup users outside of linux/include (C files)\n"
    },
    {
      "commit": "ed2d265d1266736bd294332d7f649003943ae36e",
      "tree": "860e5b7bb72933e4a9abacdc2f2d75a0e6254e32",
      "parents": [
        "f1d38e423a697b7aa06e12d3ca4753bcc1aa3531",
        "6c03438edeb5c359af35f060ea016ca65671c269"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:08:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 24 10:08:39 2012 -0700"
      },
      "message": "Merge tag \u0027bug-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux\n\nPull \u003clinux/bug.h\u003e cleanup from Paul Gortmaker:\n \"The changes shown here are to unify linux\u0027s BUG support under the one\n  \u003clinux/bug.h\u003e file.  Due to historical reasons, we have some BUG code\n  in bug.h and some in kernel.h -- i.e.  the support for BUILD_BUG in\n  linux/kernel.h predates the addition of linux/bug.h, but old code in\n  kernel.h wasn\u0027t moved to bug.h at that time.  As a band-aid, kernel.h\n  was including \u003casm/bug.h\u003e to pseudo link them.\n\n  This has caused confusion[1] and general yuck/WTF[2] reactions.  Here\n  is an example that violates the principle of least surprise:\n\n      CC      lib/string.o\n      lib/string.c: In function \u0027strlcat\u0027:\n      lib/string.c:225:2: error: implicit declaration of function \u0027BUILD_BUG_ON\u0027\n      make[2]: *** [lib/string.o] Error 1\n      $\n      $ grep linux/bug.h lib/string.c\n      #include \u003clinux/bug.h\u003e\n      $\n\n  We\u0027ve included \u003clinux/bug.h\u003e for the BUG infrastructure and yet we\n  still get a compile fail! [We\u0027ve not kernel.h for BUILD_BUG_ON.] Ugh -\n  very confusing for someone who is new to kernel development.\n\n  With the above in mind, the goals of this changeset are:\n\n  1) find and fix any include/*.h files that were relying on the\n     implicit presence of BUG code.\n  2) find and fix any C files that were consuming kernel.h and hence\n     relying on implicitly getting some/all BUG code.\n  3) Move the BUG related code living in kernel.h to \u003clinux/bug.h\u003e\n  4) remove the asm/bug.h from kernel.h to finally break the chain.\n\n  During development, the order was more like 3-4, build-test, 1-2.  But\n  to ensure that git history for bisect doesn\u0027t get needless build\n  failures introduced, the commits have been reorderd to fix the problem\n  areas in advance.\n\n\t[1]  https://lkml.org/lkml/2012/1/3/90\n\t[2]  https://lkml.org/lkml/2012/1/17/414\"\n\nFix up conflicts (new radeon file, reiserfs header cleanups) as per Paul\nand linux-next.\n\n* tag \u0027bug-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:\n  kernel.h: doesn\u0027t explicitly use bug.h, so don\u0027t include it.\n  bug: consolidate BUILD_BUG_ON with other bug code\n  BUG: headers with BUG/BUG_ON etc. need linux/bug.h\n  bug.h: add include of it to various implicit C users\n  lib: fix implicit users of kernel.h for TAINT_WARN\n  spinlock: macroize assert_spin_locked to avoid bug.h dependency\n  x86: relocate get/set debugreg fcns to include/asm/debugreg.\n"
    },
    {
      "commit": "626cf236608505d376e4799adb4f7eb00a8594af",
      "tree": "eb0421fec1a7fed05cd9ea785bd18b5f40c80971",
      "parents": [
        "5cde7656d0dd222170eb0250bd1f70c9018fd438"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hans.verkuil@cisco.com",
        "time": "Fri Mar 23 15:02:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 16:58:38 2012 -0700"
      },
      "message": "poll: add poll_requested_events() and poll_does_not_wait() functions\n\nIn some cases the poll() implementation in a driver has to do different\nthings depending on the events the caller wants to poll for.  An example\nis when a driver needs to start a DMA engine if the caller polls for\nPOLLIN, but doesn\u0027t want to do that if POLLIN is not requested but instead\nonly POLLOUT or POLLPRI is requested.  This is something that can happen\nin the video4linux subsystem among others.\n\nUnfortunately, the current epoll/poll/select implementation doesn\u0027t\nprovide that information reliably.  The poll_table_struct does have it: it\nhas a key field with the event mask.  But once a poll() call matches one\nor more bits of that mask any following poll() calls are passed a NULL\npoll_table pointer.\n\nAlso, the eventpoll implementation always left the key field at ~0 instead\nof using the requested events mask.\n\nThis was changed in eventpoll.c so the key field now contains the actual\nevents that should be polled for as set by the caller.\n\nThe solution to the NULL poll_table pointer is to set the qproc field to\nNULL in poll_table once poll() matches the events, not the poll_table\npointer itself.  That way drivers can obtain the mask through a new\npoll_requested_events inline.\n\nThe poll_table_struct can still be NULL since some kernel code calls it\ninternally (netfs_state_poll() in ./drivers/staging/pohmelfs/netfs.h).  In\nthat case poll_requested_events() returns ~0 (i.e.  all events).\n\nVery rarely drivers might want to know whether poll_wait will actually\nwait.  If another earlier file descriptor in the set already matched the\nevents the caller wanted to wait for, then the kernel will return from the\nselect() call without waiting.  This might be useful information in order\nto avoid doing expensive work.\n\nA new helper function poll_does_not_wait() is added that drivers can use\nto detect this situation.  This is now used in sock_poll_wait() in\ninclude/net/sock.h.  This was the only place in the kernel that needed\nthis information.\n\nDrivers should no longer access any of the poll_table internals, but use\nthe poll_requested_events() and poll_does_not_wait() access functions\ninstead.  In order to enforce that the poll_table fields are now prepended\nwith an underscore and a comment was added warning against using them\ndirectly.\n\nThis required a change in unix_dgram_poll() in unix/af_unix.c which used\nthe key field to get the requested events.  It\u0027s been replaced by a call\nto poll_requested_events().\n\nFor qproc it was especially important to change its name since the\nbehavior of that field changes with this patch since this function pointer\ncan now be NULL when that wasn\u0027t possible in the past.\n\nAny driver accessing the qproc or key fields directly will now fail to compile.\n\nSome notes regarding the correctness of this patch: the driver\u0027s poll()\nfunction is called with a \u0027struct poll_table_struct *wait\u0027 argument.  This\npointer may or may not be NULL, drivers can never rely on it being one or\nthe other as that depends on whether or not an earlier file descriptor in\nthe select()\u0027s fdset matched the requested events.\n\nThere are only three things a driver can do with the wait argument:\n\n1) obtain the key field:\n\n\tevents \u003d wait ? wait-\u003ekey : ~0;\n\n   This will still work although it should be replaced with the new\n   poll_requested_events() function (which does exactly the same).\n   This will now even work better, since wait is no longer set to NULL\n   unnecessarily.\n\n2) use the qproc callback. This could be deadly since qproc can now be\n   NULL. Renaming qproc should prevent this from happening. There are no\n   kernel drivers that actually access this callback directly, BTW.\n\n3) test whether wait \u003d\u003d NULL to determine whether poll would return without\n   waiting. This is no longer sufficient as the correct test is now\n   wait \u003d\u003d NULL || wait-\u003e_qproc \u003d\u003d NULL.\n\n   However, the worst that can happen here is a slight performance hit in\n   the case where wait !\u003d NULL and wait-\u003e_qproc \u003d\u003d NULL. In that case the\n   driver will assume that poll_wait() will actually add the fd to the set\n   of waiting file descriptors. Of course, poll_wait() will not do that\n   since it tests for wait-\u003e_qproc. This will not break anything, though.\n\n   There is only one place in the whole kernel where this happens\n   (sock_poll_wait() in include/net/sock.h) and that code will be replaced\n   by a call to poll_does_not_wait() in the next patch.\n\n   Note that even if wait-\u003e_qproc !\u003d NULL drivers cannot rely on poll_wait()\n   actually waiting. The next file descriptor from the set might match the\n   event mask and thus any possible waits will never happen.\n\nSigned-off-by: Hans Verkuil \u003chans.verkuil@cisco.com\u003e\nReviewed-by: Jonathan Corbet \u003ccorbet@lwn.net\u003e\nReviewed-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Hans de Goede \u003chdegoede@redhat.com\u003e\nCc: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1ebd7dff700277e4d0a3da36833a406142e31d4",
      "tree": "fbcfed48280d81744fe77efebb91900c7db1c776",
      "parents": [
        "a0f65a267dd62aef4e003f833ea6290fd1e07b34"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Thu Mar 22 23:40:01 2012 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Fri Mar 23 00:52:01 2012 +0100"
      },
      "message": "netfilter: cttimeout: fix dependency with l4protocol conntrack module\n\nThis patch introduces nf_conntrack_l4proto_find_get() and\nnf_conntrack_l4proto_put() to fix module dependencies between\ntimeout objects and l4-protocol conntrack modules.\n\nThus, we make sure that the module cannot be removed if it is\nused by any of the cttimeout objects.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "e2a0883e4071237d09b604a342c28b96b44a04b3",
      "tree": "aa56f4d376b5eb1c32358c19c2669c2a94e0e1fd",
      "parents": [
        "3a990a52f9f25f45469e272017a31e7a3fda60ed",
        "07c0c5d8b8c122b2f2df9ee574ac3083daefc981"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:36:41 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull vfs pile 1 from Al Viro:\n \"This is _not_ all; in particular, Miklos\u0027 and Jan\u0027s stuff is not there\n  yet.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)\n  ext4: initialization of ext4_li_mtx needs to be done earlier\n  debugfs-related mode_t whack-a-mole\n  hfsplus: add an ioctl to bless files\n  hfsplus: change finder_info to u32\n  hfsplus: initialise userflags\n  qnx4: new helper - try_extent()\n  qnx4: get rid of qnx4_bread/qnx4_getblk\n  take removal of PF_FORKNOEXEC to flush_old_exec()\n  trim includes in inode.c\n  um: uml_dup_mmap() relies on -\u003emmap_sem being held, but activate_mm() doesn\u0027t hold it\n  um: embed -\u003estub_pages[] into mmu_context\n  gadgetfs: list_for_each_safe() misuse\n  ocfs2: fix leaks on failure exits in module_init\n  ecryptfs: make register_filesystem() the last potential failure exit\n  ntfs: forgets to unregister sysctls on register_filesystem() failure\n  logfs: missing cleanup on register_filesystem() failure\n  jfs: mising cleanup on register_filesystem() failure\n  make configfs_pin_fs() return root dentry on success\n  configfs: configfs_create_dir() has parent dentry in dentry-\u003ed_parent\n  configfs: sanitize configfs_create()\n  ...\n"
    },
    {
      "commit": "3556485f1595e3964ba539e39ea682acbb835cee",
      "tree": "7f5ee254f425b1427ac0059b5f347a307f8538a1",
      "parents": [
        "b8716614a7cc2fc15ea2a518edd04755fb08d922",
        "09f61cdbb32a9d812c618d3922db533542736bb0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 13:25:04 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates for 3.4 from James Morris:\n \"The main addition here is the new Yama security module from Kees Cook,\n  which was discussed at the Linux Security Summit last year.  Its\n  purpose is to collect miscellaneous DAC security enhancements in one\n  place.  This also marks a departure in policy for LSM modules, which\n  were previously limited to being standalone access control systems.\n  Chromium OS is using Yama, and I believe there are plans for Ubuntu,\n  at least.\n\n  This patchset also includes maintenance updates for AppArmor, TOMOYO\n  and others.\"\n\nFix trivial conflict in \u003cnet/sock.h\u003e due to the jumo_label-\u003estatic_key\nrename.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (38 commits)\n  AppArmor: Fix location of const qualifier on generated string tables\n  TOMOYO: Return error if fails to delete a domain\n  AppArmor: add const qualifiers to string arrays\n  AppArmor: Add ability to load extended policy\n  TOMOYO: Return appropriate value to poll().\n  AppArmor: Move path failure information into aa_get_name and rename\n  AppArmor: Update dfa matching routines.\n  AppArmor: Minor cleanup of d_namespace_path to consolidate error handling\n  AppArmor: Retrieve the dentry_path for error reporting when path lookup fails\n  AppArmor: Add const qualifiers to generated string tables\n  AppArmor: Fix oops in policy unpack auditing\n  AppArmor: Fix error returned when a path lookup is disconnected\n  KEYS: testing wrong bit for KEY_FLAG_REVOKED\n  TOMOYO: Fix mount flags checking order.\n  security: fix ima kconfig warning\n  AppArmor: Fix the error case for chroot relative path name lookup\n  AppArmor: fix mapping of META_READ to audit and quiet flags\n  AppArmor: Fix underflow in xindex calculation\n  AppArmor: Fix dropping of allowed operations that are force audited\n  AppArmor: Add mising end of structure test to caps unpacking\n  ...\n"
    },
    {
      "commit": "3b59bf081622b6446db77ad06c93fe23677bc533",
      "tree": "3f4bb5a27c90cc86994a1f6d3c53fbf9208003cb",
      "parents": [
        "e45836fafe157df137a837093037f741ad8f4c90",
        "bbdb32cb5b73597386913d052165423b9d736145"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:04:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 21:04:47 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking merge from David Miller:\n \"1) Move ixgbe driver over to purely page based buffering on receive.\n     From Alexander Duyck.\n\n  2) Add receive packet steering support to e1000e, from Bruce Allan.\n\n  3) Convert TCP MD5 support over to RCU, from Eric Dumazet.\n\n  4) Reduce cpu usage in handling out-of-order TCP packets on modern\n     systems, also from Eric Dumazet.\n\n  5) Support the IP{,V6}_UNICAST_IF socket options, making the wine\n     folks happy, from Erich Hoover.\n\n  6) Support VLAN trunking from guests in hyperv driver, from Haiyang\n     Zhang.\n\n  7) Support byte-queue-limtis in r8169, from Igor Maravic.\n\n  8) Outline code intended for IP_RECVTOS in IP_PKTOPTIONS existed but\n     was never properly implemented, Jiri Benc fixed that.\n\n  9) 64-bit statistics support in r8169 and 8139too, from Junchang Wang.\n\n  10) Support kernel side dump filtering by ctmark in netfilter\n      ctnetlink, from Pablo Neira Ayuso.\n\n  11) Support byte-queue-limits in gianfar driver, from Paul Gortmaker.\n\n  12) Add new peek socket options to assist with socket migration, from\n      Pavel Emelyanov.\n\n  13) Add sch_plug packet scheduler whose queue is controlled by\n      userland daemons using explicit freeze and release commands.  From\n      Shriram Rajagopalan.\n\n  14) Fix FCOE checksum offload handling on transmit, from Yi Zou.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1846 commits)\n  Fix pppol2tp getsockname()\n  Remove printk from rds_sendmsg\n  ipv6: fix incorrent ipv6 ipsec packet fragment\n  cpsw: Hook up default ndo_change_mtu.\n  net: qmi_wwan: fix build error due to cdc-wdm dependecy\n  netdev: driver: ethernet: Add TI CPSW driver\n  netdev: driver: ethernet: add cpsw address lookup engine support\n  phy: add am79c874 PHY support\n  mlx4_core: fix race on comm channel\n  bonding: send igmp report for its master\n  fs_enet: Add MPC5125 FEC support and PHY interface selection\n  net: bpf_jit: fix BPF_S_LDX_B_MSH compilation\n  net: update the usage of CHECKSUM_UNNECESSARY\n  fcoe: use CHECKSUM_UNNECESSARY instead of CHECKSUM_PARTIAL on tx\n  net: do not do gso for CHECKSUM_UNNECESSARY in netif_needs_gso\n  ixgbe: Fix issues with SR-IOV loopback when flow control is disabled\n  net/hyperv: Fix the code handling tx busy\n  ixgbe: fix namespace issues when FCoE/DCB is not enabled\n  rtlwifi: Remove unused ETH_ADDR_LEN defines\n  igbvf: Use ETH_ALEN\n  ...\n\nFix up fairly trivial conflicts in drivers/isdn/gigaset/interface.c and\ndrivers/net/usb/{Kconfig,qmi_wwan.c} as per David.\n"
    },
    {
      "commit": "40ffe67d2e89c7a475421d007becc11a2f88ea3d",
      "tree": "5373e71b18895b9ffd8370a88aec6c54438240a0",
      "parents": [
        "38eff2892628fa5c4fc8962a17b7296f42833ebe"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Mar 14 21:54:32 2012 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Mar 20 21:29:41 2012 -0400"
      },
      "message": "switch unix_sock to struct path\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "0d9cabdccedb79ee5f27b77ff51f29a9e7d23275",
      "tree": "8bfb64c3672d058eb90aec3c3a9c4f61cef9097c",
      "parents": [
        "701085b219016d38f105b031381b9cee6200253a",
        "3ce3230a0cff484e5130153f244d4fb8a56b3a8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 20 18:11:21 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup\n\nPull cgroup changes from Tejun Heo:\n \"Out of the 8 commits, one fixes a long-standing locking issue around\n  tasklist walking and others are cleanups.\"\n\n* \u0027for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:\n  cgroup: Walk task list under tasklist_lock in cgroup_enable_task_cg_list\n  cgroup: Remove wrong comment on cgroup_enable_task_cg_list()\n  cgroup: remove cgroup_subsys argument from callbacks\n  cgroup: remove extra calls to find_existing_css_set\n  cgroup: replace tasklist_lock with rcu_read_lock\n  cgroup: simplify double-check locking in cgroup_attach_proc\n  cgroup: move struct cgroup_pidlist out from the header file\n  cgroup: remove cgroup_attach_task_current_cg()\n"
    },
    {
      "commit": "01a282980937f9ca55a3cb06b9c6ff1cc49ea396",
      "tree": "07a043edc861e245a7a9764751af0898a1f1199a",
      "parents": [
        "d5ddb4a59ed43b4c569b4efa8b508d50ef140cc6",
        "377526578f2c343ea281a918b18ece1fca65005c"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 16 13:45:25 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 16 13:45:25 2012 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n\nConflicts:\n\tdrivers/net/wireless/ath/ath9k/hw.c\n"
    },
    {
      "commit": "313162d0b83836e2f57e51b9b8650fb4b9c396ea",
      "tree": "8f39f20515a924d392cf9a72db0918fda07a34c7",
      "parents": [
        "51990e825431089747f8896244b5c17d3a6423f1"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Jan 30 11:46:54 2012 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Mar 16 10:38:24 2012 -0400"
      },
      "message": "device.h: audit and cleanup users in main include dir\n\nThe \u003clinux/device.h\u003e header includes a lot of stuff, and\nit in turn gets a lot of use just for the basic \"struct device\"\nwhich appears so often.\n\nClean up the users as follows:\n\n1) For those headers only needing \"struct device\" as a pointer\nin fcn args, replace the include with exactly that.\n\n2) For headers not really using anything from device.h, simply\ndelete the include altogether.\n\n3) For headers relying on getting device.h implicitly before\nbeing included themselves, now explicitly include device.h\n\n4) For files in which doing #1 or #2 uncovers an implicit\ndependency on some other header, fix by explicitly adding\nthe required header(s).\n\nAny C files that were implicitly relying on device.h to be\npresent have already been dealt with in advance.\n\nTotal removals from #1 and #2: 51.  Total additions coming\nfrom #3: 9.  Total other implicit dependencies from #4: 7.\n\nAs of 3.3-rc1, there were 110, so a net removal of 42 gives\nabout a 38% reduction in device.h presence in include/*\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "e9ac0745c734d39cb55ce45f1fb03a85c972b35a",
      "tree": "20c8c8c5023e9dc7060dcbce406c3ccbb851c3c8",
      "parents": [
        "7b8bcff2e0f11981dd6840f9feefe0914e4ea521"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Mar 13 14:29:30 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 13 14:54:20 2012 -0400"
      },
      "message": "mac80211: rename bss_conf timestamp to last_tsf\n\nThis value is not really very useful by itself,\nyet some drivers (including iwlwifi until I can\nfigure out what it should do) use it. At least\nrename it to \"last_tsf\" to indicate the meaning\nand add a note that it may be really old.\n\nI suspect the value may become useful combined\nwith the rx_status-\u003emactime, but we don\u0027t (yet)\nstore that value and pass it to the driver.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7b8bcff2e0f11981dd6840f9feefe0914e4ea521",
      "tree": "d9e59a47b7a4932a43d5c50ef47afd79f29ecddd",
      "parents": [
        "8e6cffb3b42f03a47a56ede928b006f117628646"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Mar 13 13:57:04 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 13 14:54:20 2012 -0400"
      },
      "message": "cfg80211: clarify timestamp in cfg80211_inform_bss\n\nThis is intended to be the timestamp sent by the\npeer in the beacon/probe response, not any form\nof host timestamp. Clarify the documentation and\nvariable names.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "afd465030acb4098abcb6b965a5aebc7ea2209e0",
      "tree": "59c93e8eda99cd59339dfbb77f1d2c4f79c634ee",
      "parents": [
        "058bd4d2a4ff0aaa4a5381c67e776729d840c785"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Mar 12 07:03:32 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 12 17:05:21 2012 -0700"
      },
      "message": "net: ipv4: Standardize prefixes for message logging\n\nAdd #define pr_fmt(fmt) as appropriate.\n\nAdd \"IPv4: \", \"TCP: \", and \"IPsec: \" to appropriate files.\nStandardize on \"UDPLite: \" for appropriate uses.\nSome prefixes were previously \"UDPLITE: \" and \"UDP-Lite: \".\n\nAdd KBUILD_MODNAME \": \" to icmp and gre.\nRemove embedded prefixes as appropriate.\n\nAdd missing \"\\n\" to pr_info in gre.c.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35239e23c66f1614c76739b62a299c3c92d6eb68",
      "tree": "7b1e068df888ec9a00b43c1dd7517a6490da6a94",
      "parents": [
        "3f33ab1c0c741bfab2138c14ba1918a7905a1e8b",
        "87e24f4b67e68d9fd8df16e0bf9c66d1ad2a2533"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:44:07 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 12 20:44:11 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We are going to queue up a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "177958e9679c23537411066cc41b205635dacb14",
      "tree": "9c5b4cebbe1cf1ba17a45b9aa660cde82619a958",
      "parents": [
        "3789d59c24cb142e4590492c3b5137a7c3dec352"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Mar 09 12:49:21 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 12 14:19:38 2012 -0400"
      },
      "message": "mac80211: remove tx_sync\n\nWhen the station state callback was added, this\nwas no longer needed in theory. With the iwlwifi\nchanges to remove use of it landing, we can kill\nthe entire tx-sync framework again, RIP.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4486ea987efdaa546bdda569e3dfacdc14a9fb13",
      "tree": "2d9a0bb6580772d483f7480469e6ce06f8f87bb3",
      "parents": [
        "bff2ec2b916cc85628f3025e08660c0350f03650"
      ],
      "author": {
        "name": "Bala Shanmugam",
        "email": "bkamatch@qca.qualcomm.com",
        "time": "Wed Mar 07 17:27:12 2012 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 12 14:19:34 2012 -0400"
      },
      "message": "cfg80211: Add background scan period attribute.\n\nReceive background scan period as part of connect\ncommand and pass the same to the driver.\n\nSigned-off-by: Bala Shanmugam \u003cbkamatch@qca.qualcomm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "43db362d3adda9e0a915ddb9a8d1a41186e19179",
      "tree": "83f00b1c09a4f54c43f94da7afb3064923415394",
      "parents": [
        "8b2aaedee4eaa94e816144ed54b9707b96be29f8"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Sun Mar 11 12:51:50 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 11 19:11:22 2012 -0700"
      },
      "message": "net: get rid of some pointless casts to sockaddr\n\nThe following 4 functions:\n  move_addr_to_kernel\n  move_addr_to_user\n  verify_iovec\n  verify_compat_iovec\nare always effectively called with a sockaddr_storage.\n\nMake this explicit by changing their signature.\n\nThis removes a large number of casts from sockaddr_storage to sockaddr.\n\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba57b4db2624793c6eb8f2c051c9f7b8a6e7b6a6",
      "tree": "67823715c9c24e2fd0bfa2bb7393d3e0e08eadb1",
      "parents": [
        "b2d3298e0916fa059712691c85a0e97becc4ab9f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 07 20:45:32 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 09 14:34:50 2012 -0800"
      },
      "message": "ipv4: Make ip_call_ra_chain() return bool.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2d3298e0916fa059712691c85a0e97becc4ab9f",
      "tree": "c7d5ea46a9dbf9cebdb122df4aaf0beda6e7621e",
      "parents": [
        "1a0bdadb4e36abac63b0a9787f372aac30c11a9e",
        "a7f4255f906f60f72e00aad2fb000939449ff32e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 09 14:34:20 2012 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 09 14:34:20 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "74dd1521d0b4f940cdd3ce7b9d988836bef589b8",
      "tree": "42f3d4ee1d4e6d60a91aaadab771f766a3024bc0",
      "parents": [
        "2f2d76cc3e938389feee671b46252dde6880b3b7",
        "1745e4405b2c0da6db2ec4b6bc0ad930612d8295"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 09 14:57:30 2012 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 09 14:57:30 2012 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n"
    },
    {
      "commit": "0343c5543b1d3ffa08e6716d82afb62648b80eba",
      "tree": "125feb540692bed744e916ff3f12bd14bffdb865",
      "parents": [
        "b8622cbd58f345d48f683d881abe3037c60aa673"
      ],
      "author": {
        "name": "Benjamin Poirier",
        "email": "bpoirier@suse.de",
        "time": "Thu Mar 08 05:55:58 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 08 13:52:08 2012 -0800"
      },
      "message": "sctp: Export sctp_do_peeloff\n\nlookup sctp_association within sctp_do_peeloff() to enable its use outside of\nthe sctp code with minimal knowledge of the former.\n\nSigned-off-by: Benjamin Poirier \u003cbpoirier@suse.de\u003e\nAcked-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f44d4eb54432a0109ff15b2669c91f061428ff39",
      "tree": "6ba6fa01e54a595f3da88ad8d53536938c6a40c4",
      "parents": [
        "1353a7ba7ebe62dedc60a5ba75c434cfad960ede"
      ],
      "author": {
        "name": "Simon Wunderlich",
        "email": "simon.wunderlich@s2003.tu-chemnitz.de",
        "time": "Wed Mar 07 21:31:13 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Mar 08 14:05:07 2012 -0500"
      },
      "message": "mac80211: update ieee80211_tx_rate_control kerneldoc\n\n * add entry for rate_idx_mcs_mask\n * fix order of entries to represent the structs\u0027 order\n\nSigned-off-by: Simon Wunderlich \u003csiwu@hrz.tu-chemnitz.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ac3f48de09d8f4b73397047e413fadff7f65cfa7",
      "tree": "ae13a0ca68397df2792e064b0877376d106a2030",
      "parents": [
        "5faa5df1fa2024bd750089ff21dcc4191798263d"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Mar 06 21:21:10 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 08 00:30:32 2012 -0800"
      },
      "message": "route: Remove redirect_genid\n\nAs we invalidate the inetpeer tree along with the routing cache now,\nwe don\u0027t need a genid to reset the redirect handling when the routing\ncache is flushed.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5faa5df1fa2024bd750089ff21dcc4191798263d",
      "tree": "a47a76a4bd9a3b61dcc2d2a34149e6ffecdf8cd8",
      "parents": [
        "dcf353b17007841f91e1735e33790508c84c9ad0"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Mar 06 21:20:26 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 08 00:30:24 2012 -0800"
      },
      "message": "inetpeer: Invalidate the inetpeer tree along with the routing cache\n\nWe initialize the routing metrics with the values cached on the\ninetpeer in rt_init_metrics(). So if we have the metrics cached on the\ninetpeer, we ignore the user configured fib_metrics.\n\nTo fix this issue, we replace the old tree with a fresh initialized\ninet_peer_base. The old tree is removed later with a delayed work queue.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0111ad823e5e261ffc54ef728f1d852760ee4920",
      "tree": "3fa6912f040765a447e7b4e25a4918b2d006d7a5",
      "parents": [
        "e427babeefe10023d348e2a3db272612d6e79dc3",
        "fdde0a26a218d95e2ea38c0838ab6f24040af14c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 07 22:53:48 2012 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 07 22:53:48 2012 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next\n"
    },
    {
      "commit": "82492a355fac112908271faa74f473a38c1fb647",
      "tree": "725f392bf364d81f098f2de14490e2a876603f75",
      "parents": [
        "9fbd87d413921f36d2f55cee1d082323e6eb1d5f"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "ursula.braun@de.ibm.com",
        "time": "Wed Mar 07 02:06:24 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 07 22:52:24 2012 -0800"
      },
      "message": "af_iucv: add shutdown for HS transport\n\nAF_IUCV sockets offer a shutdown function. This patch makes sure\nshutdown works for HS transport as well.\n\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: Frank Blaschka \u003cfrank.blaschka@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "04124681f104c1980024ff249a34a77a249fd2bc",
      "tree": "5caad821f1cdd55930b054cbdeab1c45421559b4",
      "parents": [
        "f64b993f44c3a5fe709b276ac5652d006afe9d33"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Thu Mar 08 01:25:00 2012 -0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Thu Mar 08 02:02:26 2012 -0300"
      },
      "message": "Bluetooth: fix conding style issues all over the tree\n\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "ace30d73ef09fd5f95b24c5c1c5aa11963981494",
      "tree": "0299eb54478deddc719e4aff9d24ad9d34529912",
      "parents": [
        "24de58f465165298aaa8f286b2592f0163706cfe"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Mar 01 02:56:59 2012 +0000"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 07 17:41:52 2012 +0100"
      },
      "message": "netfilter: xt_LOG: add __printf() to sb_add()\n\nHelps to find format mismatches at compile time\n\nSuggested-by: David Laight \u003cDavid.Laight@ACULAB.COM\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n"
    },
    {
      "commit": "dd705072412225a97784fe38feee2ebf8d14814d",
      "tree": "52400a2e04ba27ba8b1bb87fa16d9d63ce82b87b",
      "parents": [
        "50978462300f74dc48aea4a38471cb69bdf741a5"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Feb 28 23:36:48 2012 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 07 17:41:25 2012 +0100"
      },
      "message": "netfilter: nf_ct_ext: add timeout extension\n\nThis patch adds the timeout extension, which allows you to attach\nspecific timeout policies to flows.\n\nThis extension is only used by the template conntrack.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "50978462300f74dc48aea4a38471cb69bdf741a5",
      "tree": "0d63f721f996d4c4a4e37cd08df949e25d4c980e",
      "parents": [
        "2c8503f55fbdfbeff4164f133df804cf4d316290"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Feb 28 19:13:48 2012 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 07 17:41:22 2012 +0100"
      },
      "message": "netfilter: add cttimeout infrastructure for fine timeout tuning\n\nThis patch adds the infrastructure to add fine timeout tuning\nover nfnetlink. Now you can use the NFNL_SUBSYS_CTNETLINK_TIMEOUT\nsubsystem to create/delete/dump timeout objects that contain some\nspecific timeout policy for one flow.\n\nThe follow up patches will allow you attach timeout policy object\nto conntrack via the CT target and the conntrack extension\ninfrastructure.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "2c8503f55fbdfbeff4164f133df804cf4d316290",
      "tree": "fe491bc79fd59aa4b8b99ea63d13e62b6a2ef1cb",
      "parents": [
        "b888341c7f33035694f70428d7001d73f0b2a3b1"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue Feb 28 18:23:31 2012 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 07 17:41:19 2012 +0100"
      },
      "message": "netfilter: nf_conntrack: pass timeout array to l4-\u003enew and l4-\u003epacket\n\nThis patch defines a new interface for l4 protocol trackers:\n\nunsigned int *(*get_timeouts)(struct net *net);\n\nthat is used to return the array of unsigned int that contains\nthe timeouts that will be applied for this flow. This is passed\nto the l4proto-\u003enew(...) and l4proto-\u003epacket(...) functions to\nspecify the timeout policy.\n\nThis interface allows per-net global timeout configuration\n(although only DCCP supports this by now) and it will allow\ncustom custom timeout configuration by means of follow-up\npatches.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "544d5c7d9f4d1ec4f170bc5bcc522012cb7704bc",
      "tree": "d7e4eff56efb23801a5ad0e4720efe13c68672ca",
      "parents": [
        "076a0ca02644657b13e4af363f487ced2942e9cb"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Sun Feb 05 03:44:51 2012 +0100"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Wed Mar 07 17:40:46 2012 +0100"
      },
      "message": "netfilter: ctnetlink: allow to set expectfn for expectations\n\nThis patch allows you to set expectfn which is specifically used\nby the NAT side of most of the existing conntrack helpers.\n\nI have added a symbol map that uses a string as key to look up for\nthe function that is attached to the expectation object. This is\nthe best solution I came out with to solve this issue.\n\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "f64b993f44c3a5fe709b276ac5652d006afe9d33",
      "tree": "dd9aa6663e497d0e370a37eabfb2c385d684ac04",
      "parents": [
        "044e1247344d7ff0dbdb1e7edd80d859a8c19aa6"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Mar 06 23:48:33 2012 -0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Wed Mar 07 00:04:25 2012 -0300"
      },
      "message": "Bluetooth: Fix coding style in all .h files\n\nProper align the struct definitions.\n\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "044e1247344d7ff0dbdb1e7edd80d859a8c19aa6",
      "tree": "db93188e2fc22ddd9525cccddfba792fb5ce37b1",
      "parents": [
        "c4762507342dabbe6896ef288df0851ac7dd63d6"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Mar 06 23:45:42 2012 -0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Wed Mar 07 00:04:24 2012 -0300"
      },
      "message": "Bluetooth: Use correct type for userspace exported structs\n\nIt should be __u8 instead of u8.\n\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "c4762507342dabbe6896ef288df0851ac7dd63d6",
      "tree": "13e8c9805c3995a275a94f4796542df7bf88a2ac",
      "parents": [
        "0a4eaeeb993658a4d6cff054a863241f32d3d2fb"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Tue Mar 06 23:39:50 2012 -0300"
      },
      "committer": {
        "name": "Gustavo F. Padovan",
        "email": "padovan@profusion.mobi",
        "time": "Wed Mar 07 00:04:23 2012 -0300"
      },
      "message": "Bluetooth: Fix coding style in mgmt.h\n\nAlign struct definition in a proper way.\n\nSigned-off-by: Gustavo F. Padovan \u003cpadovan@profusion.mobi\u003e\n"
    },
    {
      "commit": "eb9bc6e9a0ac668d2283b8fea1534f8ba31d1692",
      "tree": "91e9c684e967a7959cce3ae6de256d0f9ac51f85",
      "parents": [
        "0a40acb24602783fcf6881f915659148aa9807d7"
      ],
      "author": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Mon Mar 05 01:03:54 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:25 2012 -0500"
      },
      "message": "NFC: NCI code identation fixes\n\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0a40acb24602783fcf6881f915659148aa9807d7",
      "tree": "aad4a42c270c615fdc67f454f974794e8fcd2160",
      "parents": [
        "427a2eb1f568c9c5934a36105232c94553db9b69"
      ],
      "author": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Mon Mar 05 01:03:53 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:25 2012 -0500"
      },
      "message": "NFC: Core code identation fixes\n\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "47807d3dbb62e93850cbcb797db1a9ee1806f986",
      "tree": "f8e1970083547290e35830e5bedb4a4ce7237f97",
      "parents": [
        "9dda50f4c98f84e32a5f6dc4d9dd7af6085add43"
      ],
      "author": {
        "name": "Samuel Ortiz",
        "email": "sameo@linux.intel.com",
        "time": "Mon Mar 05 01:03:50 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:23 2012 -0500"
      },
      "message": "NFC: Remove the rf mode parameter from the DEP link up routine\n\nWhen calling nfc_dep_link_up, we implicitely are in initiator mode.\nWhich means we also can provide the general bytes as a function argument,\nas all drivers will eventually request them.\n\nSigned-off-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8097e1494459a4f9cdbaba7440334d9bd11a39f0",
      "tree": "c04b23569e81b35711a56f55ae60ad8ebf6e0563",
      "parents": [
        "2e7eb117586198386e5a06d0bc4279a9d7cbaeb6"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Mon Mar 05 15:31:47 2012 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:17 2012 -0500"
      },
      "message": "cfg80211: expose cfg80211_calculate_bitrate()\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "804483e90794256f9ed53e795ffbf1e94de237c8",
      "tree": "22a4d8ade674bb42aaf4d3e878dfd6a73b618dcc",
      "parents": [
        "769009b89d8c29c410a99eee3cd63764b1fff869"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Mar 05 22:18:41 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:05 2012 -0500"
      },
      "message": "cfg80211/mac80211: report signal strength for mgmt frames\n\nAdd the signal strength (in dBm only for now) to\nframes that are received via nl80211\u0027s various\nframe APIs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nAcked-by: Kalle Valo \u003ckvalo@qca.qualcomm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1b658f118b11de3c4052ed8cbdd5803cd1fa5670",
      "tree": "162160c05d29fc99b18d1914ffe2d614f2c9af6a",
      "parents": [
        "d665508b98d3cdbeb476e7d6848a513184a81ed0"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vthiagar@qca.qualcomm.com",
        "time": "Fri Mar 02 15:50:02 2012 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:38:34 2012 -0500"
      },
      "message": "cfg80211: Add an attribute to set inactivity timeout in AP mode\n\nThis patch adds an attribute, NL80211_ATTR_INACTIVITY_TIMEOUT,\nto set the inactivity timeout which can be used to remove the\nstation in AP mode. This can be passed in NL80211_CMD_START_AP\nand used by the drivers which have AP MLME in firmware but\ndon\u0027t support get_station() properly. To disable inactivity\ntimer in userspace, wpa_s for example, there is a new flag,\nNL80211_FEATURE_INACTIVITY_TIMER, in nl80211_feature_flags\nthrough which drivers can register their capability to use\nthe inactivity timeout to free the stations.\n\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvthiagar@qca.qualcomm.com\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fe8431f89e25de722610ee5beb2892bd019d1fed",
      "tree": "93212c4f0e7f897c8c53bbd0b93f31640ec33e4b",
      "parents": [
        "c04a4ff71b6a59cb5c8deec961b9196226e89573"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Thu Mar 01 18:00:07 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:38:32 2012 -0500"
      },
      "message": "mac80211: add an rx flag for ignoring a packet\u0027s signal strength\n\nFor A-MPDU rx it makes sense to only process the signal strength once per\naggregate instead of once per subframe. Additonally, some hardware (e.g.\nAtheros) only provides valid signal strength information for the last\nsubframe.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c04a4ff71b6a59cb5c8deec961b9196226e89573",
      "tree": "fa60388b03f24eebbe925a5398422aa6b4e8d99f",
      "parents": [
        "888d04dfbe7e09f930fdaafb257cce2c54c9c3f3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Mar 01 15:28:19 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:38:32 2012 -0500"
      },
      "message": "cfg80211: fix kernel-doc\n\nI forgot to update the kernel-doc in my patch\nto redesign AP mode APIs, fix that now.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5533513784a88049e19dd2ab380a452b61e5171e",
      "tree": "8e48d0cf30f3e94475ee80479308e98908b3c0bc",
      "parents": [
        "5809802180b2b638762465cbad3f51a9ac8ff0b3"
      ],
      "author": {
        "name": "Ashok Nagarajan",
        "email": "ashok@cozybit.com",
        "time": "Tue Feb 28 17:04:08 2012 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:23:15 2012 -0500"
      },
      "message": "{nl,cfg,mac}80211: Implement RSSI threshold for mesh peering\n\nMesh peer links are established only if average rssi of the peer\ncandidate satisfies the threshold. This is not in 802.11s specification\nbut was requested by David Fulgham, an open80211s user. This is a way to avoid\nmarginal peer links with stations that are barely within range.\n\nThis patch adds a new mesh configuration parameter, mesh_rssi_threshold. This\nfeature is supported only for hardwares that report signal in dBm.\n\nSigned-off-by: Ashok Nagarajan \u003cashok@cozybit.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "051d3b50430160a86cbe4a2deef219c8038bd03f",
      "tree": "b2c276067819f259f86369e5341202332a8172be",
      "parents": [
        "ffcb97388b1d41b1db063eb041cb9af408662127",
        "c288ec614e264b46853c65d3db9ccf91d53c9484"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:05:54 2012 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Mar 05 15:05:54 2012 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem\n"
    },
    {
      "commit": "737f24bda723fdf89ecaacb99fa2bf5683c32799",
      "tree": "35495fff3e9956679cb5468e74e6814c8e44ee66",
      "parents": [
        "8eedce996556d7d06522cd3a0e6069141c8dffe0",
        "b7c924274c456499264d1cfa3d44063bb11eb5db"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 05 09:20:08 2012 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nConflicts:\n\ttools/perf/builtin-record.c\n\ttools/perf/builtin-top.c\n\ttools/perf/perf.h\n\ttools/perf/util/top.h\n\nMerge reason: resolve these cherry-picking conflicts.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "187f1882b5b0748b3c4c22274663fdb372ac0452",
      "tree": "36283f258cf65f03599a045d48bb05d0ec27f3f9",
      "parents": [
        "50af5ead3b44ccf8bd2b4d2a50c1b610f557c480"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Nov 23 20:12:59 2011 -0500"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Mar 04 17:54:34 2012 -0500"
      },
      "message": "BUG: headers with BUG/BUG_ON etc. need linux/bug.h\n\nIf a header file is making use of BUG, BUG_ON, BUILD_BUG_ON, or any\nother BUG variant in a static inline (i.e. not in a #define) then\nthat header really should be including \u003clinux/bug.h\u003e and not just\nexpecting it to be implicitly present.\n\nWe can make this change risk-free, since if the files using these\nheaders didn\u0027t have exposure to linux/bug.h already, they would have\nbeen causing compile failures/warnings.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "2b88f2de30510c0f4e623d3cd5fcd85cdb70b51f",
      "tree": "cd267474e31962d04cedb175c4bf897031891dc8",
      "parents": [
        "89d27a3c0ad7d5f2ce9ece055b3c7c619dc42f6c"
      ],
      "author": {
        "name": "John Fastabend",
        "email": "john.r.fastabend@intel.com",
        "time": "Fri Feb 10 03:19:41 2012 +0000"
      },
      "committer": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Fri Mar 02 18:16:49 2012 -0800"
      },
      "message": "net: dcb: getnumtcs()/setnumtcs() should return an int\n\n{g|s}etnumtcs() today returns a u8 that is only used by the DCB code\nto verify no error occurred. Today the driver implementations return\nnegative error codes which end up being non-zero so the logic works\nout but triggers some sparse warnings.\n\nTo fix the sparse warnings convert the return value to an int.\n\nCC: Eilon Greenstein \u003ceilong@broadcom.com\u003e\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "4f87da80a5210e66fb47b0e839f4d05016986f78",
      "tree": "9227fcd778badfaa5190cbdd3bd854039fdc6d8f",
      "parents": [
        "5f15903279143eb640f9ba1c0e72b52fe9e9e2a6"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 02 19:55:56 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sat Mar 03 01:28:47 2012 +0200"
      },
      "message": "Bluetooth: Remove HCI_PI_MGMT_INIT flag for sockets\n\nThis flag is of no use right now and is in fact harmful in that it\nprevents the HCI_MGMT flag to be set for any controllers that may need\nit after the first one that bluetoothd takes into use (the flag is\ncleared for the first controller so any subsequent ones through the same\nbluetoothd mgmt socket never get the HCI_MGMT flag set).\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "5f15903279143eb640f9ba1c0e72b52fe9e9e2a6",
      "tree": "6eed1909e54f252f0ce46c0550c240a099a30e3e",
      "parents": [
        "d4f68526e438dbb7d194b08499a96c733131ad72"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 02 03:13:19 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 02 03:19:24 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add new error code for invalid index\n\nThe index is part of the command header and not its parameters so it\nmakes sense to distinguish this from the invalid parameters error.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "b4017c5368f992fb8fb3a2545a0977082c6664e4",
      "tree": "b18fee77164297141c988965a9846225f8d8b3d3",
      "parents": [
        "97767a87f3be8834192dc3fc9412aaccf708d87f",
        "413708bbaf5c85c4c8a264145f7d6c3afcd97f99"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 01 17:57:40 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 01 17:57:40 2012 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/broadcom/tg3.c\n\nConflicts in the statistics regression bug fix from \u0027net\u0027,\nbut happily Matt Carlson originally posted the fix against\n\u0027net-next\u0027 so I used that to resolve this.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba13ccd9b911e043c0f11e60cbb72bd4de194205",
      "tree": "7c8437d2693bfa7c438d5ddc59f329b57974c810",
      "parents": [
        "be22b54e8711734f4cb93ac31723b955fe9dbbe0"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Thu Mar 01 14:25:33 2012 -0800"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Fri Mar 02 00:33:14 2012 +0200"
      },
      "message": "Bluetooth: Update L2CAP timeout constants to use msecs_to_jiffies\n\nThe L2CAP timeout constants are always used in form of jiffies. So just\ninclude the conversion from msecs in the define itself. This has the\nadvantage of making the code where the timeout is used more readable.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "9d1acbfb774fa5e043a44adedfcc36c9837a5e61",
      "tree": "81e551faeed6a542e31c2310353921fae379de31",
      "parents": [
        "0f4e68cf6e70fc219f219799c799a8a3e3c13100"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Mar 01 22:23:42 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Thu Mar 01 23:55:58 2012 +0200"
      },
      "message": "Bluetooth: mgmt: Add defines for command sizes\n\nThese defines are shorter than \"sizeof(struct mgmt_cp_foo_bar...)\" and\nwill be helpful when extending the command lookup table to contain the\nexpected command size information.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "02f2f1a951f87644166926862ec32fb13511e2f3",
      "tree": "77d5ac88a112aeb9f18887277dabf311b7ec0e8a",
      "parents": [
        "5eb02e44adc92a71bae3ff60acb1eea5ada14e93"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Feb 27 12:18:30 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 29 14:14:54 2012 -0500"
      },
      "message": "mac80211: handle non-bufferable MMPDUs correctly\n\nThis renames the IEEE80211_TX_CTL_POLL_RESPONSE\nTX flag to IEEE80211_TX_CTL_NO_PS_BUFFER and also\nuses it for non-bufferable MMPDUs (all MMPDUs but\ndeauth, disassoc and action frames.)\n\nPreviously, mac80211 would let the MMPDU through\nbut not set the flag so drivers supporting some\nhardware aids for avoiding the PS races would\nthen reject the frame.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "63c9c5e77c36f8793dddf0e905a4bc43a0972735",
      "tree": "88c7d307b7369806c75245ca9cff8129e334580a",
      "parents": [
        "4d94c157f87eebdcd84e9e5e27ad65978f776c2e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Feb 24 13:50:51 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Feb 29 14:11:33 2012 -0500"
      },
      "message": "cfg80211: remove cookies from callbacks\n\nIn \"cfg80211: no cookies in cfg80211_send_XXX()\"\nHolger Schurig removed the cookies in the calls\nfrom mac80211 to cfg80211, but the ones in the\nother direction were left in. Remove them now.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "978c93b90fc4768e295b20492b5db76d5e026e5e",
      "tree": "075eefb9e3e711fed4f31849ef1948f6647578e7",
      "parents": [
        "89bb46d02046b59c1de3d2e92680f3a1062750d0"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Feb 29 10:41:41 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Wed Feb 29 16:20:19 2012 +0200"
      },
      "message": "Bluetooth: Save remote L2CAP fixed channel mask\n\nFixed channel mask needs to be stored to decide whether to\nuse A2MP for example. So far save only one relevant byte which\nkeeps all information we need.\n\nSigned-off-by: Andrei Emeltchenko \u003candrei.emeltchenko@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\n"
    },
    {
      "commit": "ecb971923614775a118bc05ad16b2bde450cac7d",
      "tree": "faccc868f922b2985341ba8dd6a6a401e6cf32d1",
      "parents": [
        "eea79e0713d94b02952f6c591b615710fd40a562"
      ],
      "author": {
        "name": "Neal Cardwell",
        "email": "ncardwell@google.com",
        "time": "Mon Feb 27 17:52:52 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 28 15:06:33 2012 -0500"
      },
      "message": "tcp: fix comment for tp-\u003ehighest_sack\n\nThere was an off-by-one error in the comments describing the\nhighest_sack field in struct tcp_sock. The comments previously claimed\nthat it was the \"start sequence of the highest skb with SACKed\nbit\". This commit fixes the comments to note that it is the \"start\nsequence of the skb just *after* the highest skb with SACKed bit\".\n\nSigned-off-by: Neal Cardwell \u003cncardwell@google.com\u003e\nAcked-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cc2c04ec1ea8bd5137c99dc88bc04b4a07a11443",
      "tree": "9959c58d5a5c84e32cd5df1a9cb8cadd69b089d3",
      "parents": [
        "8f984dfaf0bfa1355548cfba00473c8fa8e22d6e"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Feb 28 02:03:24 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Tue Feb 28 02:06:20 2012 +0200"
      },
      "message": "Bluetooth: Add missing host features definitions\n\nThis patch adds missing SSP and \"Simultaneous LE \u0026 BR/EDR\" feature bit\ndefinitions to hci.h.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "816a11d5ced501d368fabe09172f3d62744e8b53",
      "tree": "e4f3a0879ad41c7bc06b2e8f2b65a38502c44f4f",
      "parents": [
        "9b27f350688c9399da10c2b888c4044c2c1bd923"
      ],
      "author": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Sun Feb 26 13:04:52 2012 +0200"
      },
      "committer": {
        "name": "Johan Hedberg",
        "email": "johan.hedberg@intel.com",
        "time": "Mon Feb 27 12:34:39 2012 +0200"
      },
      "message": "Bluetooth: Use kernel int types instead of ones from stdint.h\n\nu8/__u8/u32/etc should be used in the kernel instead of stdint.h types.\n\nSigned-off-by: Johan Hedberg \u003cjohan.hedberg@intel.com\u003e\nAcked-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "ff4783ce78c08d2990126ce1874250ae8e72bbd2",
      "tree": "5c95885a4ab768101dd72942b57c238d452a7565",
      "parents": [
        "622121719934f60378279eb440d3cec2fc3176d2",
        "203738e548cefc3fc3c2f73a9063176c9f3583d5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 21:55:51 2012 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 26 21:55:51 2012 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nConflicts:\n\tdrivers/net/ethernet/sfc/rx.c\n\nOverlapping changes in drivers/net/ethernet/sfc/rx.c, one to change\nthe rx_buf-\u003eis_page boolean into a set of u16 flags, and another to\nadjust how -\u003eip_summed is initialized.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "946a720c814ff63a9e5c7755395bff080b931eae",
      "tree": "98c60fbbd1412c3e4c8b08be2103017593b5894c",
      "parents": [
        "5d74f1757001f5b9a7739c2a9053435e16ce516b"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Sat Feb 25 02:09:46 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 25 20:19:24 2012 -0500"
      },
      "message": "xfrm: remove unneeded method typedef declaration in net/xfrm.h.\n\nThe patch removes unneeded method typedef declaration (icv_update_fn_t\n) and the two struct declarations which appear in its prototype\n(struct hash_desc and struct scatterlist) in net/xfrm.h.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "7d367e06688dc7a2cc98c2ace04e1296e1d987e2"
}
