)]}'
{
  "log": [
    {
      "commit": "9a0da0d19c573e01aded6ac17747d2efc5b1115f",
      "tree": "76294327bae4b3e45b16c690bda4b24951f237cf",
      "parents": [
        "ec282e9225be924479d4880b51f13524795bd8d3",
        "8a56df0ae1690f8f42a3c6c4532f4b06f93febea"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 10 18:17:09 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 10 18:17:09 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "23bcf634c8bc0d84607a5b863333191d58baee4c",
      "tree": "bc988ab6230bebf47e1dc22db70f94901ac2eeb5",
      "parents": [
        "ea6a634ef7f0ab1d1f48ba0ad4f50e96d6065312"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Sep 09 18:11:23 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 09 18:11:23 2009 -0700"
      },
      "message": "net_sched: fix estimator lock selection for mq child qdiscs\n\nWhen new child qdiscs are attached to the mq qdisc, they are actually\nattached as root qdiscs to the device queues. The lock selection for\nnew estimators incorrectly picks the root lock of the existing and\nto be replaced qdisc, which results in a use-after-free once the old\nqdisc has been destroyed.\n\nMark mq qdisc instances with a new flag and treat qdiscs attached to\nmq as children similar to regular root qdiscs.\n\nAdditionally prevent estimators from being attached to the mq qdisc\nitself since it only updates its byte and packet counters during dumps.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ec1c69a8f6492fd25722f4762721921da074c12",
      "tree": "a78323d1f7f84acbe08c25d7300b935ae4bb7c62",
      "parents": [
        "589983cd21f4a2e4ed74a958805a90fa676845c5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 01:58:51 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:05 2009 -0700"
      },
      "message": "net_sched: add classful multiqueue dummy scheduler\n\nThis patch adds a classful dummy scheduler which can be used as root qdisc\nfor multiqueue devices and exposes each device queue as a child class.\n\nThis allows to address queues individually and graft them similar to regular\nclasses. Additionally it presents an accumulated view of the statistics of\nall real root qdiscs in the dummy root.\n\nTwo new callbacks are added to the qdisc_ops and qdisc_class_ops:\n\n- cl_ops-\u003eselect_queue selects the tx queue number for new child classes.\n\n- qdisc_ops-\u003eattach() overrides root qdisc device grafting to attach\n  non-shared qdiscs to the queues.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "589983cd21f4a2e4ed74a958805a90fa676845c5",
      "tree": "21ce556958da203400d3e9d30911ff330be39e90",
      "parents": [
        "af356afa010f3cd2c8b8fcc3bce90f7a7b7ec02a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Sep 04 06:41:20 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 06 02:07:05 2009 -0700"
      },
      "message": "net_sched: move dev_graft_qdisc() to sch_generic.c\n\nIt will be used in a following patch by the multiqueue qdisc.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9237ccbc0b22b5aa5396463ba0b14dc5efe5b98c",
      "tree": "ac6aed9bc6a832b0d17895a55039bc6ba65100c7",
      "parents": [
        "723884339f90a9c420783135168cc1045750eb5d"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Fri Sep 04 14:33:19 2009 +0800"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:02 2009 -0400"
      },
      "message": "sctp: turn flags in \u0027struct sctp_association\u0027 into bit fields\n\nThis shrinks the size of struct sctp_association a little.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "723884339f90a9c420783135168cc1045750eb5d",
      "tree": "c8538602e56f2310470b0970bf121a1000313401",
      "parents": [
        "8da645e101a8c20c6073efda3c7cc74eec01b87f"
      ],
      "author": {
        "name": "Bhaskar Dutta",
        "email": "bhaskie@gmail.com",
        "time": "Thu Sep 03 17:25:47 2009 +0530"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:01 2009 -0400"
      },
      "message": "sctp: Sysctl configuration for IPv4 Address Scoping\n\nThis patch introduces a new sysctl option to make IPv4 Address Scoping\nconfigurable \u003cdraft-stewart-tsvwg-sctp-ipv4-00.txt\u003e.\n\nIn networking environments where DNAT rules in iptables prerouting\nchains convert destination IP\u0027s to link-local/private IP addresses,\nSCTP connections fail to establish as the INIT chunk is dropped by the\nkernel due to address scope match failure.\nFor example to support overlapping IP addresses (same IP address with\ndifferent vlan id) a Layer-5 application listens on link local IP\u0027s,\nand there is a DNAT rule that maps the destination IP to a link local\nIP. Such applications never get the SCTP INIT if the address-scoping\ndraft is strictly followed.\n\nThis sysctl configuration allows SCTP to function in such\nunconventional networking environments.\n\nSysctl options:\n0 - Disable IPv4 address scoping draft altogether\n1 - Enable IPv4 address scoping (default, current behavior)\n2 - Enable address scoping but allow IPv4 private addresses in init/init-ack\n3 - Enable address scoping but allow IPv4 link local address in init/init-ack\n\nSigned-off-by: Bhaskar Dutta \u003cbhaskar.dutta@globallogic.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "a803c942303e6a4ef0ab6b80114529852cffa058",
      "tree": "d1da47a93ef1683957256a582ed2fcb27d3e9a4b",
      "parents": [
        "4007cc88ceec8892b74792f0a10983b140beae72"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:01 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:01 2009 -0400"
      },
      "message": "sctp: Turn flags in \u0027sctp_packet\u0027 into bit fields\n\nThis shrinks the size of sctp_packet a little.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "f68b2e05f326971cd76c65aa91a1a41771dd7485",
      "tree": "2940d83f3787570cc030791378ee23b89b941662",
      "parents": [
        "cb95ea32a457871f72752164de8d94fa20f4703c"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "message": "sctp: Fix SCTP_MAXSEG socket option to comply to spec.\n\nWe had a bug that we never stored the user-defined value for\nMAXSEG when setting the value on an association.  Thus future\nPMTU events ended up re-writing the frag point and increasing\nit past user limit.  Additionally, when setting the option on\nthe socket/endpoint, we effect all current associations, which\nis against spec.\n\nNow, we store the user \u0027maxseg\u0027 value along with the computed\n\u0027frag_point\u0027.  We inherit \u0027maxseg\u0027 from the socket at association\ncreation and use it as an upper limit for \u0027frag_point\u0027 when its\nset.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "cb95ea32a457871f72752164de8d94fa20f4703c",
      "tree": "0a419cdc3fe5e7e2d5fa5036a40d93a4bb6aac42",
      "parents": [
        "b29e7907288554db9c987c36facfd0304ee8ff5a"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "message": "sctp: Don\u0027t do NAGLE delay on large writes that were fragmented small\n\nSCTP will delay the last part of a large write due to NAGLE, if that\npart is smaller then MTU.  Since we are doing large writes, we might\nas well send the last portion now instead of waiting untill the next\nlarge write happens.  The small portion will be sent as is regardless,\nso it\u0027s better to not delay it.\n\nThis is a result of much discussions with Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nand Doug Graham \u003cdgraham@nortel.com\u003e.  Many thanks go out to them.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "4d3c46e6833208428d366630aa708f6876e61fc1",
      "tree": "cb5f57a90a261b7443d202d96cf5725dbba371c8",
      "parents": [
        "33ce828131ca6655b48bd2070dadd80f816dfe0d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "message": "sctp: drop a_rwnd to 0 when receive buffer overflows.\n\nSCTP has a problem that when small chunks are used, it is possible\nto exhaust the receiver buffer without fully closing receive window.\nThis happens due to all overhead that we have account for with small\nmessages.  To fix this, when receive buffer is exceeded, we\u0027ll drop\nthe window to 0 and save the \u0027drop\u0027 portion.  When application starts\nreading data and freeing up recevie buffer space, we\u0027ll wait until\nwe\u0027ve reached the \u0027drop\u0027 window and then add back this \u0027drop\u0027 one\nmtu at a time.  This worked well in testing and under stress produced\nrather even recovery.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "9c5c62be2f794c7cee533d856f9f34c3cf21ff1b",
      "tree": "e81bcc703cedf4e667b91504b5cf9e8e01ffb6a5",
      "parents": [
        "5d7ff261ef497c62f54c39effc259910a28b313d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Aug 10 13:51:03 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:57 2009 -0400"
      },
      "message": "sctp: Send user messages to the lower layer as one\n\nCurrenlty, sctp breaks up user messages into fragments and\nsends each fragment to the lower layer by itself.  This means\nthat for each fragment we go all the way down the stack\nand back up.  This also discourages bundling of multiple\nfragments when they can fit into a sigle packet (ex: due\nto user setting a low fragmentation threashold).\n\nWe introduce a new command SCTP_CMD_SND_MSG and hand the\nwhole message down state machine.  The state machine and\nthe side-effect parser will cork the queue, add all chunks\nfrom the message to the queue, and then un-cork the queue\nthus causing the chunks to get transmitted.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "bec9640bb0d451813b1bb1f2cc13a5bfb17c3e48",
      "tree": "8c44f18560570c7200eed1a92cd0d9fab6c2a4f2",
      "parents": [
        "af87b823ca2b05257192e8d48dc686db6173d7b2"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jul 30 18:08:28 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:56 2009 -0400"
      },
      "message": "sctp: Disallow new connection on a closing socket\n\nIf a socket has a lot of association that are in the process of\nof being closed/aborted, it is possible for a remote to establish\nnew associations during the time period that the old ones are shutting\ndown.  If this was a result of a close() call, there will be no socket\nand will cause a memory leak.  We\u0027ll prevent this by setting the\nsocket state to CLOSING and disallow new associations when in this state.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "b4e8c6a7e6caa9c80edcbfb78fc50962b792d5f0",
      "tree": "426cfc5240b6a1d6d49b4f504b359c2d2648a0fa",
      "parents": [
        "40187886bc31aee9c5c6f08f46cde4ab618e9736"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "rosenrami@gmail.com",
        "time": "Thu Jul 30 09:38:43 2009 +0300"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:55 2009 -0400"
      },
      "message": "sctp: remove unused union (sctp_cmsg_data_t) definition\n\nThis patch removes an unused union definition (sctp_cmsg_data_t)\nfrom include/net/sctp/user.h.\n\nSigned-off-by: Rami Rosen \u003crosenrami@gmail.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "aa1330766c49199bdab4d4a9096d98b072df9044",
      "tree": "98787478dbef0faa7caee09c4996abcda723a608",
      "parents": [
        "05c6a8d7a7d778f26d8eb821556988993b766092"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Sep 02 23:45:45 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 23:45:45 2009 -0700"
      },
      "message": "tcp: replace hard coded GFP_KERNEL with sk_allocation\n\nThis fixed a lockdep warning which appeared when doing stress\nmemory tests over NFS:\n\n\tinconsistent {RECLAIM_FS-ON-W} -\u003e {IN-RECLAIM_FS-W} usage.\n\n\tpage reclaim \u003d\u003e nfs_writepage \u003d\u003e tcp_sendmsg \u003d\u003e lock sk_lock\n\n\tmount_root \u003d\u003e nfs_root_data \u003d\u003e tcp_close \u003d\u003e lock sk_lock \u003d\u003e\n\t\t\ttcp_send_fin \u003d\u003e alloc_skb_fclone \u003d\u003e page reclaim\n\nDavid raised a concern that if the allocation fails in tcp_send_fin(), and it\u0027s\nGFP_ATOMIC, we are going to yield() (which sleeps) and loop endlessly waiting\nfor the allocation to succeed.\n\nBut fact is, the original GFP_KERNEL also sleeps. GFP_ATOMIC+yield() looks\nweird, but it is no worse the implicit sleep inside GFP_KERNEL. Both could\nloop endlessly under memory pressure.\n\nCC: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCC: David S. Miller \u003cdavem@davemloft.net\u003e\nCC: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e59af3dcbdf11635c03f22bfc9706744465d589",
      "tree": "c01e87c0ef6568bae987f4628a8656ba0d05aa23",
      "parents": [
        "5848cc096a23b80b3d15c27d72299f79caf7c517"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Sep 02 18:03:00 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 18:03:00 2009 -0700"
      },
      "message": "vlan: multiqueue vlan device\n\nvlan devices are currently not multi-queue capable.\n\nWe can do that with a new rtnl_link_ops method,\nget_tx_queues(), called from rtnl_create_link()\n\nThis new method gets num_tx_queues/real_num_tx_queues\nfrom real device.\n\nregister_vlan_device() is also handled.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b401a81c0d50ea9c718cf837f62cc2e6e79cc30",
      "tree": "cfb386a92521ae614fc8d76932461f26d14e9fa3",
      "parents": [
        "b2e4b3debc327a5b53d9622e0b1785eea2ea2aad"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Sep 01 19:25:04 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 01:03:49 2009 -0700"
      },
      "message": "inet: inet_connection_sock_af_ops const\n\nThe function block inet_connect_sock_af_ops contains no data\nmake it constant.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6cdee2f96a97f6da26bd3759c3f8823332fbb438",
      "tree": "ec79086f05ffc3bdf1aecc37e108ccfc3a95450d",
      "parents": [
        "0625491493d9000e4556bf566d205c28c8e7dc4e",
        "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 02 00:32:56 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/yellowfin.c\n"
    },
    {
      "commit": "2fbd3da3877ad8d923b055e5996f80b4d4a6daf4",
      "tree": "7caa4ea3f3517d2f6b38142f64527c82b8e57b2e",
      "parents": [
        "d66ee0587c3927aea5178a822976c7c853d815fe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:59:25 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:59:25 2009 -0700"
      },
      "message": "pkt_sched: Revert tasklet_hrtimer changes.\n\nThese are full of unresolved problems, mainly that conversions don\u0027t\nwork 1-1 from hrtimers to tasklet_hrtimers because unlike hrtimers\ntasklets can\u0027t be killed from softirq context.\n\nAnd when a qdisc gets reset, that\u0027s exactly what we need to do here.\n\nWe\u0027ll work this out in the net-next-2.6 tree and if warranted we\u0027ll\nbackport that work to -stable.\n\nThis reverts the following 3 changesets:\n\na2cb6a4dd470d7a64255a10b843b0d188416b78f\n(\"pkt_sched: Fix bogon in tasklet_hrtimer changes.\")\n\n38acce2d7983632100a9ff3fd20295f6e34074a8\n(\"pkt_sched: Convert CBQ to tasklet_hrtimer.\")\n\nee5f9757ea17759e1ce5503bdae2b07e48e32af9\n(\"pkt_sched: Convert qdisc_watchdog to tasklet_hrtimer\")\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89d69d2b75a8f7e258f4b634cd985374cfd3202e",
      "tree": "2f01d6ae1844c92ef09160ad1966edee34ee2d8a",
      "parents": [
        "dcbfef820bdd1cdb412ccf234840e23edf67014f"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Tue Sep 01 11:13:19 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:40:57 2009 -0700"
      },
      "message": "net: make neigh_ops constant\n\nThese tables are never modified at runtime. Move to read-only\nsection.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5152fc7de3ae31b46692022ea63ce0501280f5b1",
      "tree": "44aff7228b23b90ab42e0afea7178104b231d885",
      "parents": [
        "72c60683282a6cd047db47d605eb96e2a6fac72c"
      ],
      "author": {
        "name": "Damian Lukowski",
        "email": "damian@tvk.rwth-aachen.de",
        "time": "Tue Sep 01 10:24:00 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:40:47 2009 -0700"
      },
      "message": "RTO connection timeout: coding style fixes and comments\n\nThis patch affects the retransmits_timed_out() function.\n\nChanges:\n1) Variables have more meaningful names\n2) retransmits_timed_out() has an introductionary comment.\n3) Small coding style changes.\n\nSigned-off-by: Damian Lukowski \u003cdamian@tvk.rwth-aachen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86393e52c3f1e2f6be18383f6ecdbcdc5727d545",
      "tree": "f5c688c0cb5292143478249f807c4b2372f69dfd",
      "parents": [
        "885a136c52a8871175477baf3903e1c38751b35a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Sat Aug 29 01:34:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 17:40:31 2009 -0700"
      },
      "message": "netns: embed ip6_dst_ops directly\n\nstruct net::ipv6.ip6_dst_ops is separatedly dynamically allocated,\nbut there is no fundamental reason for it. Embed it directly into\nstruct netns_ipv6.\n\nFor that:\n* move struct dst_ops into separate header to fix circular dependencies\n\tI honestly tried not to, it\u0027s pretty impossible to do other way\n* drop dynamical allocation, allocate together with netns\n\nFor a change, remove struct dst_ops::dst_net, it\u0027s deducible\nby using container_of() given dst_ops pointer.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6fa12c85031485dff38ce550c24f10da23b0adaa",
      "tree": "73f6cac32302ab99381f38505a5dbe930cb28e44",
      "parents": [
        "f1ecd5d9e7366609d640ff4040304ea197fbc618"
      ],
      "author": {
        "name": "Damian Lukowski",
        "email": "damian@tvk.rwth-aachen.de",
        "time": "Wed Aug 26 00:16:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 02:45:47 2009 -0700"
      },
      "message": "Revert Backoff [v3]: Calculate TCP\u0027s connection close threshold as a time value.\n\nRFC 1122 specifies two threshold values R1 and R2 for connection timeouts,\nwhich may represent a number of allowed retransmissions or a timeout value.\nCurrently linux uses sysctl_tcp_retries{1,2} to specify the thresholds\nin number of allowed retransmissions.\n\nFor any desired threshold R2 (by means of time) one can specify tcp_retries2\n(by means of number of retransmissions) such that TCP will not time out\nearlier than R2. This is the case, because the RTO schedule follows a fixed\npattern, namely exponential backoff.\n\nHowever, the RTO behaviour is not predictable any more if RTO backoffs can be\nreverted, as it is the case in the draft\n\"Make TCP more Robust to Long Connectivity Disruptions\"\n(http://tools.ietf.org/html/draft-zimmermann-tcp-lcd).\n\nIn the worst case TCP would time out a connection after 3.2 seconds, if the\ninitial RTO equaled MIN_RTO and each backoff has been reverted.\n\nThis patch introduces a function retransmits_timed_out(N),\nwhich calculates the timeout of a TCP connection, assuming an initial\nRTO of MIN_RTO and N unsuccessful, exponentially backed-off retransmissions.\n\nWhenever timeout decisions are made by comparing the retransmission counter\nto some value N, this function can be used, instead.\n\nThe meaning of tcp_retries2 will be changed, as many more RTO retransmissions\ncan occur than the value indicates. However, it yields a timeout which is\nsimilar to the one of an unpatched, exponentially backing off TCP in the same\nscenario. As no application could rely on an RTO greater than MIN_RTO, there\nshould be no risk of a regression.\n\nSigned-off-by: Damian Lukowski \u003cdamian@tvk.rwth-aachen.de\u003e\nAcked-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1ecd5d9e7366609d640ff4040304ea197fbc618",
      "tree": "ef4901d52ad0d2555094998f02d08788e197c20a",
      "parents": [
        "4d1a2d9ec1c17df077ed09a0d135bccf5637a3b7"
      ],
      "author": {
        "name": "Damian Lukowski",
        "email": "damian@tvk.rwth-aachen.de",
        "time": "Wed Aug 26 00:16:31 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 02:45:42 2009 -0700"
      },
      "message": "Revert Backoff [v3]: Revert RTO on ICMP destination unreachable\n\nHere, an ICMP host/network unreachable message, whose payload fits to\nTCP\u0027s SND.UNA, is taken as an indication that the RTO retransmission has\nnot been lost due to congestion, but because of a route failure\nsomewhere along the path.\nWith true congestion, a router won\u0027t trigger such a message and the\npatched TCP will operate as standard TCP.\n\nThis patch reverts one RTO backoff, if an ICMP host/network unreachable\nmessage, whose payload fits to TCP\u0027s SND.UNA, arrives.\nBased on the new RTO, the retransmission timer is reset to reflect the\nremaining time, or - if the revert clocked out the timer - a retransmission\nis sent out immediately.\nBackoffs are only reverted, if TCP is in RTO loss recovery, i.e. if\nthere have been retransmissions and reversible backoffs, already.\n\nChanges from v2:\n1) Renaming of skb in tcp_v4_err() moved to another patch.\n2) Reintroduced tcp_bound_rto() and __tcp_set_rto().\n3) Fixed code comments.\n\nSigned-off-by: Damian Lukowski \u003cdamian@tvk.rwth-aachen.de\u003e\nAcked-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7114323b1761bdf787ed79323a4a13f787878295",
      "tree": "1865da7083d5d6129d2b3fcd66ebea6ff11f7856",
      "parents": [
        "0f6f290259896afdca30e1ff4a28aff8edd79a14"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Mon Aug 31 12:32:55 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 01 01:24:30 2009 -0700"
      },
      "message": "dcbnl: Add support for setapp/getapp to netdev dcbnl_rtnl_ops\n\nAdds support of dcbnl setapp/getapp to dcbnl_rtnl_ops in netdev to allow\nLLDs to implement their corresponding dcbnl setapp/getapp ops to support\nthe IEEE 802.1Q DCBX setapp/getapp commands.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nAcked-by: Peter P Waskiewicz Jr \u003cpeter.p.waskiewicz.jr@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9caaabb995c6ff103e2457b9a36930b9699de7c",
      "tree": "5e2fd04c5eb07ae1373c5c64250056e902982fa8",
      "parents": [
        "fc57e515a2c02599b00d252545521288dfc0158a",
        "7e7430908c3ccaf71f0851050c8ccaf9ecfb3b56"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 30 21:30:39 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 30 21:30:39 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-next-2.6\n"
    },
    {
      "commit": "df19a6267705456f463871ae2aabc44299909d2a",
      "tree": "59654abf9eb5dc58c9f8773dde5738b5bcb18312",
      "parents": [
        "5e9b2dbfcbc9b180a0064d8a473a4652ee99c9ad"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Aug 28 23:48:54 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 28 23:48:54 2009 -0700"
      },
      "message": "tcp: keepalive cleanups\n\nIntroduce keepalive_probes(tp) helper, and use it, like \nkeepalive_time_when(tp) and keepalive_intvl_when(tp)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "103bf9f7d35849bce52ad412e4da5063b0716969",
      "tree": "67712138dc332cc42f3cc69ab2db9dbb60b4b4e1",
      "parents": [
        "b0a4e7d8a291de63f35b04464de9ab4a83d38a7c"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 16:34:15 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:29 2009 -0400"
      },
      "message": "mac80211: remove ieee80211_rx namespace hack\n\nWith the libipw naming scheme change, it is no longer necessary for\nmac80211 to avoid the ieee80211_rx name clash.\n\nReported-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b0a4e7d8a291de63f35b04464de9ab4a83d38a7c",
      "tree": "c95a79b15483070bf1ca92ddf7b7e9ba4d4af026",
      "parents": [
        "01a0ac417ce9b4f1216a266f2fd454cffefc5aee"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 14:48:03 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:28 2009 -0400"
      },
      "message": "libipw: switch from ieee80211_* to libipw_* naming policy\n\nThis eliminates the dual definition of ieee80211_channel (and possibly\nothers), further clarifying who defines what and paving the way for\ninclusion of cfg80211.h.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2246b2f1b43f3fbd128e72b129dcbbd3202cc592",
      "tree": "edfe82ab47829bb320c41c04289e2a01f23fba56",
      "parents": [
        "ca42a613c92d131ff02d5714419d58c36c3459f3"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Wed Aug 26 04:04:02 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Aug 26 00:12:20 2009 -0700"
      },
      "message": "Bluetooth: Handle L2CAP case when the remote receiver is busy\n\nImplement all issues related to RemoteBusy in the RECV state table.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "3993832464dd4e14a4c926583a11f0fa92c1f0f0",
      "tree": "a84cdac586ee63e48f711ad93dec098ad84c1b6c",
      "parents": [
        "3a6c2b419b7768703cfb2cabdb894517c5065e33"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:58 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:58 2009 +0200"
      },
      "message": "netfilter: nfnetlink: constify message attributes and headers\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "3a6c2b419b7768703cfb2cabdb894517c5065e33",
      "tree": "d8d8dc9ad34ffdd2f0f56876e9d3b6f0e6d5eceb",
      "parents": [
        "74f7a6552c8d76ffc5e11eb8d9d6c07238b9ae77"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:40 2009 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 25 16:07:40 2009 +0200"
      },
      "message": "netlink: constify nlmsghdr arguments\n\nConsitfy nlmsghdr arguments to a couple of functions as preparation\nfor the next patch, which will constify the netlink message data in\nall nfnetlink users.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "940917226260d6e029f55742a34a7d7810983c75",
      "tree": "871af506fa09aa2717c6c27307838f43993dabaf",
      "parents": [
        "9818f660f433b58e770cfeb2ee9566f7b42ca0ae",
        "929122cdd5d4c344e59f9b55f870a8fcf7aa0d27"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 23 19:19:30 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 23 19:19:30 2009 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan\n"
    },
    {
      "commit": "ee5f9757ea17759e1ce5503bdae2b07e48e32af9",
      "tree": "0625fdaf307890a0875981d28ecb77e7ddd96143",
      "parents": [
        "649bf17829d087f83754e2a8161e094a167ce3d3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 21 16:33:34 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 22 18:09:17 2009 -0700"
      },
      "message": "pkt_sched: Convert qdisc_watchdog to tasklet_hrtimer\n\nNone of this stuff should execute in hw IRQ context, therefore\nuse a tasklet_hrtimer so that it runs in softirq context.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "9e726b17422bade75fba94e625cd35fd1353e682",
      "tree": "af8cf616d9cbda12f51682dbb96e696f135be436",
      "parents": [
        "ef54fd937fbd5ebaeb023818524565bd526a5f36"
      ],
      "author": {
        "name": "Luiz Augusto von Dentz",
        "email": "luiz.dentz@openbossa.org",
        "time": "Wed Jul 15 13:50:58 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:05:58 2009 -0700"
      },
      "message": "Bluetooth: Fix rejected connection not disconnecting ACL link\n\nWhen using DEFER_SETUP on a RFCOMM socket, a SABM frame triggers\nauthorization which when rejected send a DM response. This is fine\naccording to the RFCOMM spec:\n\n    the responding implementation may replace the \"proper\" response\n    on the Multiplexer Control channel with a DM frame, sent on the\n    referenced DLCI to indicate that the DLCI is not open, and that\n    the responder would not grant a request to open it later either.\n\nBut some stacks doesn\u0027t seems to cope with this leaving DLCI 0 open after\nreceiving DM frame.\n\nTo fix it properly a timer was introduced to rfcomm_session which is used\nto set a timeout when the last active DLC of a session is unlinked, this\nwill give the remote stack some time to reply with a proper DISC frame on\nDLCI 0 avoiding both sides sending DISC to each other on stacks that\nfollow the specification and taking care of those who don\u0027t by taking\ndown DLCI 0.\n\nSigned-off-by: Luiz Augusto von Dentz \u003cluiz.dentz@openbossa.org\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "ef54fd937fbd5ebaeb023818524565bd526a5f36",
      "tree": "c664288f00548b8c531ff44a0bc8c7f18542740e",
      "parents": [
        "8f17154f1f70fcc6faa31ac82164fcf7f0599f38"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:04 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:03:43 2009 -0700"
      },
      "message": "Bluetooth: Full support for receiving L2CAP SREJ frames\n\nSupport for receiving of SREJ frames as specified by the state table.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "8f17154f1f70fcc6faa31ac82164fcf7f0599f38",
      "tree": "f210dae590f600720b974d367082c368d03eac86",
      "parents": [
        "fcc203c30d72dde82692f6b761a80e5ca5fdd8fa"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:03 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 15:01:25 2009 -0700"
      },
      "message": "Bluetooth: Add support for L2CAP SREJ exception\n\nWhen L2CAP loses an I-frame we send a SREJ frame to the transmitter side\nrequesting the lost packet. This patch implement all Recv I-frame events\non SREJ_SENT state table except the ones that deal with SendRej (the REJ\nexception at receiver side is yet not implemented).\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "fcc203c30d72dde82692f6b761a80e5ca5fdd8fa",
      "tree": "04eb154db3be85574efe74542f528efb39abf5bb",
      "parents": [
        "6840ed0770d79b9bb0800e5e026a067040ef18f5"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:02 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:59:49 2009 -0700"
      },
      "message": "Bluetooth: Add support for FCS option to L2CAP\n\nImplement CRC16 check for L2CAP packets. FCS is used by Streaming Mode and\nEnhanced Retransmission Mode and is a extra check for the packet content.\n\nUsing CRC16 is the default, L2CAP won\u0027t use FCS only when both side send\na \"No FCS\" request.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "e90bac061b17cd81bd0df30606c64f4543bf5ca0",
      "tree": "3529111fa5ba07bdd8ed9627d10d623f77416ace",
      "parents": [
        "30afb5b2aa83adf4f69e5090d48e1bb04b64c58a"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:26:00 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:56:15 2009 -0700"
      },
      "message": "Bluetooth: Add support for Retransmission and Monitor Timers\n\nL2CAP uses retransmission and monitor timers to inquiry the other side\nabout unacked I-frames. After sending each I-frame we (re)start the\nretransmission timer. If it expires, we start a monitor timer that send a\nS-frame with P bit set and wait for S-frame with F bit set. If monitor\ntimer expires, try again, at a maximum of L2CAP_DEFAULT_MAX_TX.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "30afb5b2aa83adf4f69e5090d48e1bb04b64c58a",
      "tree": "f47506c5f02b8e1d23123cadee49f518c928afa5",
      "parents": [
        "c74e560cd0101455f1889515e1527e4c2e266113"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:59 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:55:20 2009 -0700"
      },
      "message": "Bluetooth: Initial support for retransmission of packets with REJ frames\n\nWhen receiving an I-frame with unexpected txSeq, receiver side start the\nrecovery procedure by sending a REJ S-frame to the transmitter side. So\nthe transmitter can re-send the lost I-frame.\n\nThis patch just adds a basic support for retransmission, it doesn\u0027t\nmean that ERTM now has full support for packet retransmission.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "c74e560cd0101455f1889515e1527e4c2e266113",
      "tree": "a828b646b60578c1e90580da0d92e5d1ee7e7981",
      "parents": [
        "1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:58 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:53:58 2009 -0700"
      },
      "message": "Bluetooth: Add support for Segmentation and Reassembly of SDUs\n\nERTM should use Segmentation and Reassembly to break down a SDU in many\nPDUs on sending data to the other side.\n\nOn sending packets we queue all \u0027segments\u0027 until end of segmentation and\njust the add them to the queue for sending. On receiving we create a new\nSKB with the SDU reassembled.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a",
      "tree": "c196f2acec0fa0ace48483ec99a691b4230f53d2",
      "parents": [
        "22121fc9152ca8f25a2d790860832ccb6a414c4d"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Thu Aug 20 22:25:57 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:53:01 2009 -0700"
      },
      "message": "Bluetooth: Add initial support for ERTM packets transfers\n\nThis patch adds support for ERTM transfers, without retransmission, with\ntxWindow up to 63 and with acknowledgement of packets received. Now the\npackets are queued before call l2cap_do_send(), so packets couldn\u0027t be\nsent at the time we call l2cap_sock_sendmsg(). They will be sent in\nan asynchronous way on later calls of l2cap_ertm_send(). Besides if an\nerror occurs on calling l2cap_do_send() we disconnect the channel.\n\nInitially based on a patch from Nathan Holstein \u003cnathan@lampreynetworks.com\u003e\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "f2fcfcd670257236ebf2088bbdf26f6a8ef459fe",
      "tree": "5bc6061e3b684ae545b24e2919ab43b711e04c4d",
      "parents": [
        "65c7c4918450f8c4545ccb02a9c7a3d77e073535"
      ],
      "author": {
        "name": "Gustavo F. Padovan",
        "email": "gustavo@las.ic.unicamp.br",
        "time": "Sat Jul 04 15:06:24 2009 -0300"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Add configuration support for ERTM and Streaming mode\n\nAdd support to config_req and config_rsp to configure ERTM and Streaming\nmode. If the remote device specifies ERTM or Streaming mode, then the\nsame mode is proposed. Otherwise ERTM or Basic mode is used. And in case\nof a state 2 device, the remote device should propose the same mode. If\nnot, then the channel gets disconnected.\n\nSigned-off-by: Gustavo F. Padovan \u003cgustavo@las.ic.unicamp.br\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "c6b03cf986eab00e20d0dbc852b233bb83472138",
      "tree": "94fe92aafca068e3eb1cd6f4c53a3c86801fe7e0",
      "parents": [
        "44dd46de325c4d47abfd1361e5d84a548edb8e42"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat May 02 22:31:10 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:50:07 2009 -0700"
      },
      "message": "Bluetooth: Allow setting of L2CAP ERTM via socket option\n\nTo enable Enhanced Retransmission mode it needs to be set via a socket\noption. A different mode can be set on a socket, but on listen() and\nconnect() the mode is checked and ERTM is only allowed if it is enabled\nvia the module parameter.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "a6a67efd7088702fdbbb780c5a3f8e1a74e77b63",
      "tree": "fe35247ef5806ed690df3581de877fb84faad42b",
      "parents": [
        "5959809ded86e267c1a95fb44738a224c30d3434"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jul 26 08:18:19 2009 +0000"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:35:02 2009 -0700"
      },
      "message": "Bluetooth: Convert hdev-\u003ereq_lock to a mutex\n\nhdev-\u003ereq_lock is used as mutex so make it a mutex.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "9eba32b86d17ef87131fa0bce43c614904ab5781",
      "tree": "cd7e40a026475b7e4ddb8bdc944e75bc5a18c250",
      "parents": [
        "364f63519d94442ed373ac7da79033c8282df46a"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:19:26 2009 -0700"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Sat Aug 22 14:19:26 2009 -0700"
      },
      "message": "Bluetooth: Add extra device reference counting for connections\n\nThe device model itself has no real usable reference counting at the\nmoment and this causes problems if parents are deleted before their\nchildren. The device model itself handles the memory details of this\ncorrectly, but the uevent order is not consistent. This causes various\nproblems for systems like HAL or even X.\n\nSo until device_put() does a proper cleanup, the device for Bluetooth\nconnection will be protected with an extra reference counting to ensure\nthe correct order of uevents when connections are terminated.\n\nThis is not an automatic feature. Higher Bluetooth layers like HIDP or\nBNEP should grab this new reference to ensure that their uevents are\nsend before the ones from the parent device.\n\nBased on a report by Brian Rogers \u003cbrian@xyzw.org\u003e\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "ad002395fd230528281083f4be71855ed7e35b04",
      "tree": "c2bccce17ad69dcfb454fe3a38ba68f0f210b5b5",
      "parents": [
        "21f8a73f829797eb7ebc12202b4c68e10e751ddb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Aug 18 19:51:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:36:05 2009 -0400"
      },
      "message": "cfg80211: fix dangling scan request checking\n\nMy patch \"cfg80211: fix deadlock\" broke the code it\nwas supposed to fix, the scan request checking. But\nit\u0027s not trivial to put it back the way it was, since\nthe original patch had a deadlock.\n\nNow do it in a completely new way: queue the check\noff to a work struct, where we can freely lock. But\nthat has some more complications, like needing to\nwait for it to be done before the wiphy/rdev can be\ndestroyed, so some code is required to handle that.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f424afa17899408cbd267a4c4534ca6fc9d8f71c",
      "tree": "ef68af16e693231b6842767ecd2ad04ba341cd93",
      "parents": [
        "3ac64beecd27400d12cc7afb4108eef26c499f6a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 16:18:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:58 2009 -0400"
      },
      "message": "mac80211: remove deprecated API\n\nAll but two drivers have now stopped using the two\ndeprecated members radio_enabled and beacon_int,\nso it\u0027s about time to remove them for good.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3ac64beecd27400d12cc7afb4108eef26c499f6a",
      "tree": "da0220085f68e30fe61ba9b8833dc6311d6dc25e",
      "parents": [
        "ea416a793d2b611f22b42ba094fd2e5bd30fff43"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 16:16:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:58 2009 -0400"
      },
      "message": "mac80211: allow configure_filter callback to sleep\n\nOver time, a whole bunch of drivers have come up\nwith their own scheme to delay the configure_filter\noperation to a workqueue. To be able to simplify\nthings, allow configure_filter to sleep, and add\na new prepare_multicast callback that drivers that\nneed the multicast address list implement. This new\ncallback must be atomic, but most drivers either\ndon\u0027t care or just calculate a hash which can be\ndone atomically and then uploaded to the hardware\nnon-atomically.\n\nA cursory look suggests that at76c50x-usb, ar9170,\nmwl8k (which is actually very broken now), rt2x00,\nwl1251, wl1271 and zd1211 should make use of this\nnew capability.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "16eea493da563b5a3356a77c6d8776dffc29d3b6",
      "tree": "6a6444442b8d7789d4c2fcb8ba990453969121fc",
      "parents": [
        "81f9510381ee43205564063f2e8650672b11d453"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Wed Aug 19 19:32:24 2009 +0400"
      },
      "committer": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Wed Aug 19 23:08:22 2009 +0400"
      },
      "message": "ieee802154: add support for channel pages from IEEE 802.15.4-2006\n\nIEEE 802.15.4-2006 adds new concept: channel pages, which can contain several\nchannels. Add support for channel pages in the API and in the fakehard driver.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\n"
    },
    {
      "commit": "2bfb1070ba1fdb8cbc2b0b9ff61a3b0701ab40de",
      "tree": "72b91a81b05f74fb62eeb4b4e918c36fe57c8f26",
      "parents": [
        "a0aea57786fe9c6b62b1a4f28409582520fa494f"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Fri Aug 14 16:13:12 2009 +0400"
      },
      "committer": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Wed Aug 19 23:08:20 2009 +0400"
      },
      "message": "ieee802154: add a sysfs representation of WPAN master devices\n\nAdd a sysfs/in-kernel representation of LR-WPAN master devices.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\n"
    },
    {
      "commit": "c1a8f1f1c8e01eab5862c8db39b49ace814e6c66",
      "tree": "0679f709f70d9a91850888636a28adb79940c402",
      "parents": [
        "c6ba973b8fa97422aab4204f7d79f1d413cde925"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Aug 16 09:36:49 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 17 21:33:49 2009 -0700"
      },
      "message": "net: restore gnet_stats_basic to previous definition\n\nIn 5e140dfc1fe87eae27846f193086724806b33c7d \"net: reorder struct Qdisc\nfor better SMP performance\" the definition of struct gnet_stats_basic\nchanged incompatibly, as copies of this struct are shipped to\nuserland via netlink.\n\nRestoring old behavior is not welcome, for performance reason.\n\nFix is to use a private structure for kernel, and\nteach gnet_stats_copy_basic() to convert from kernel to user land,\nusing legacy structure (struct gnet_stats_basic)\n\nBased on a report and initial patch from Michael Spang.\n\nReported-by: Michael Spang \u003cmspang@csclub.uwaterloo.ca\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16cb9d42b68b339852e8914f2538ca9a2aec616c",
      "tree": "aef8822ae4d5dc7574af3c52501b8d6449c2ccc0",
      "parents": [
        "36e6fea84905512ea776707e82b5b435220efc17"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Aug 12 23:33:20 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:08 2009 -0400"
      },
      "message": "cfg80211: allow driver to override PS default\n\nSometimes drivers might have a good reason to override\nthe PS default, like iwlwifi right now where it affects\nRX performance significantly at this point. This will\nallow them to override the default, if desired, in a\nway that users can still change it according to their\ntrade-off choices, not the driver\u0027s, like would happen\nif the driver just disabled PS completely then.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d5b96a6f39a8aaa7534069b3db71048df44f023b",
      "tree": "f02b5a32440794d33b6a18ea78a491ede05cb061",
      "parents": [
        "1afcfd54fdf913017c07fa1ee497141a7958991d"
      ],
      "author": {
        "name": "Pat Erley",
        "email": "pat-lkml@erley.org",
        "time": "Sat Aug 08 17:53:19 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:53 2009 -0400"
      },
      "message": "mac80211: remove max_bandwidth\n\nThis removes the max_bandwidth attribute.  It is only ever\nwritten to, and is duplicated by max_bandwidth_khz in the\nregulatory code.\n\nSigned-off-by: Pat Erley \u003cpat-lkml@erley.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5ba63533bbf653631faab60f6988506160ec6ba4",
      "tree": "8d9ef2670cd3b2f50fe3581820fba5aca365634d",
      "parents": [
        "ad5351db89681515681c5d5659ddf4c69e3cc6f5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 17:54:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:44 2009 -0400"
      },
      "message": "cfg80211: fix alignment problem in scan request\n\nThe memory layout for scan requests was rather wrong,\nwe put the scan SSIDs before the channels which could\nlead to the channel pointers being unaligned in memory.\nIt turns out that using a pointer to the channel array\nisn\u0027t necessary anyway since we can embed a zero-length\narray into the struct.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ad5351db89681515681c5d5659ddf4c69e3cc6f5",
      "tree": "3c77642d10862aa9eea9c9366090941c18b69ac3",
      "parents": [
        "ab5b5342fd0ba5b9a2f58a94c5d41dd074b7c48e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 16:42:15 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:44 2009 -0400"
      },
      "message": "mac80211: allow DMA optimisation\n\nIf we have a lot of frames to transmit at once, for\ninstance with fragmentation, it can be an optimisation\nto only tell the DMA engine about them on the last\nfragment/frame to avoid banging the IO too much. This\npatch allows implementation such an optimisation by\ntelling the driver when more frames can be expected.\n\nCurrently, this is used by mac80211 only on fragmented\nframes, but could also be used in the future on other\nframes when the queue was full and there are multiple\nframes pending.\n\nNote that drivers need to be careful when using this\nflag, they need to kick their DMA engines not just\nwhen this flag is clear, but also when the queue gets\nfull so that progress can be made.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ab5b5342fd0ba5b9a2f58a94c5d41dd074b7c48e",
      "tree": "1a1797f02a5994981bfa91048ba97878ed410291",
      "parents": [
        "c555b9b3713e05586fabe85f4e46f28859e72930"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 16:28:09 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "mac80211: document TX powersave filter requirements\n\nThis documents what\u0027s required to implement that TX powersave\nfilter properly wrt. handling hardware queues.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c555b9b3713e05586fabe85f4e46f28859e72930",
      "tree": "c94e3ab08a99e5ffba369304ca790318ab093cab",
      "parents": [
        "f5ea9120be2e5d5c846243416cfdce01d02f5836"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 16:23:43 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "mac80211: explain TX retry and status\n\nAdd some more documentation including an example so that\nit\u0027s clearer what should be done for TX retries.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f5ea9120be2e5d5c846243416cfdce01d02f5836",
      "tree": "cade27e47a90dde79a523598b96a2ebb50770d2f",
      "parents": [
        "f401a6f7ede753e56b84025e7d2db0d5ef560ce6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 16:17:38 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "nl80211: add generation number to all dumps\n\nIn order for userspace to be able to figure out whether\nit obtained a consistent snapshot of data or not when\nusing netlink dumps, we need to have a generation number\nin each dump message that indicates whether the list has\nchanged or not -- its value is arbitrary.\n\nThis patch adds such a number to all dumps, this needs\nsome mac80211 involvement to keep track of a generation\nnumber to start with when adding/removing mesh paths or\nstations.\n\nThe wiphy and netdev lists can be fully handled within\ncfg80211, of course, but generation numbers need to be\nstored there as well.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f401a6f7ede753e56b84025e7d2db0d5ef560ce6",
      "tree": "12b077096234ba0f990c637665d11e0afa608b17",
      "parents": [
        "59bbb6f7574bc693ed8313b98eac641116c95b94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "cfg80211: use reassociation when possible\n\nWith the move of everything related to the SME from\nmac80211 to cfg80211, we lost the ability to send\nreassociation frames. This adds them back, but only\nfor wireless extensions. With the userspace SME, it\nshall control assoc vs. reassoc (it already can do\nso with the nl80211 interface).\n\nI haven\u0027t touched the connect() implementation, so\nit is not possible to reassociate with the nl80211\nconnect primitive. I think that should be done with\nthe NL80211_CMD_ROAM command, but we\u0027ll have to see\nhow that can be handled in the future, especially\nwith fullmac chips.\n\nThis patch addresses only the immediate regression\nwe had in mac80211, which previously sent reassoc.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "acb8aacda3f0bc3aeb652f4365c078a2b0adb0bf",
      "tree": "1f80a689cce54e35bbecb807c3da8655e6c5f10b",
      "parents": [
        "99eb8558642b988055d2b8b16a334475550f78d3"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Fri Aug 07 02:58:44 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 21:54:51 2009 -0700"
      },
      "message": "nl802154: support START-CONFIRM primitive\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99eb8558642b988055d2b8b16a334475550f78d3",
      "tree": "c139d938a9b3c43e8ce28201a995bf6973122daf",
      "parents": [
        "74eda55db4335383ccdd1fb51a7b014202f89366"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Fri Aug 07 02:58:43 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 21:54:50 2009 -0700"
      },
      "message": "af_ieee802154: add support for WANT_ACK socket option\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8505091d2a067ad27d4a82df9cff8eae6ee52fca",
      "tree": "275be6bbf896fd094caa8be4f4c470c248faa5bf",
      "parents": [
        "6885ffb3a1b4abf731fd0891a2c1544a83c2651d"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Fri Aug 07 02:58:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 20:49:48 2009 -0700"
      },
      "message": "af_ieee802154: drop IEEE802154_SIOC_ADD_SLAVE declaration\n\nIEEE802154_SIOC_ADD_SLAVE was used to allocate 802.15.4 interfaces\non the top of radio. It\u0027s not used anymore, drop it.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa11d958d1a6572eda08214d7c6a735804fe48a5",
      "tree": "d025b05270ad1e010660d17eeadc6ac3c1abbd7d",
      "parents": [
        "07f6642ee9418e962e54cbc07471cfe2e559c568",
        "9799218ae36910af50f002a5db1802d576fffb43"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 12 17:44:53 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tarch/microblaze/include/asm/socket.h\n"
    },
    {
      "commit": "bbd8a0d3a3b65d341437f8b99c828fa5cc29c739",
      "tree": "a4055c65be5ce3f8fd4987a32a38dfab1642ec95",
      "parents": [
        "9f519f68cfffba022978634f724944a0b971fec1"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Thu Aug 06 01:44:21 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 06 20:10:18 2009 -0700"
      },
      "message": "net: Avoid enqueuing skb for default qdiscs\n\ndev_queue_xmit enqueue\u0027s a skb and calls qdisc_run which\ndequeue\u0027s the skb and xmits it. In most cases, the skb that\nis enqueue\u0027d is the same one that is dequeue\u0027d (unless the\nqueue gets stopped or multiple cpu\u0027s write to the same queue\nand ends in a race with qdisc_run). For default qdiscs, we\ncan remove the redundant enqueue/dequeue and simply xmit the\nskb since the default qdisc is work-conserving.\n\nThe patch uses a new flag - TCQ_F_CAN_BYPASS to identify the\ndefault fast queue. The controversial part of the patch is\nincrementing qlen when a skb is requeued - this is to avoid\nchecks like the second line below:\n\n+  } else if ((q-\u003eflags \u0026 TCQ_F_CAN_BYPASS) \u0026\u0026 !qdisc_qlen(q) \u0026\u0026\n\u003e\u003e         !q-\u003egso_skb \u0026\u0026\n+          !test_and_set_bit(__QDISC_STATE_RUNNING, \u0026q-\u003estate)) {\n\nResults of a 2 hour testing for multiple netperf sessions (1,\n2, 4, 8, 12 sessions on a 4 cpu system-X). The BW numbers are\naggregate Mb/s across iterations tested with this version on\nSystem-X boxes with Chelsio 10gbps cards:\n\n----------------------------------\nSize |  ORG BW          NEW BW   |\n----------------------------------\n128K |  156964          159381   |\n256K |  158650          162042   |\n----------------------------------\n\nChanges from ver1:\n\n1. Move sch_direct_xmit declaration from sch_generic.h to\n   pkt_sched.h\n2. Update qdisc basic statistics for direct xmit path.\n3. Set qlen to zero in qdisc_reset.\n4. Changed some function names to more meaningful ones.\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bfe34ebbaa125f00da309f59cc9d30febe1e3115",
      "tree": "505b43fc81be09ec5b42f82a3e64f300a5e838d5",
      "parents": [
        "3d7ddd540b4c2d24c6a3e7a52c083a0c31e6151c",
        "6b4f645a491ac29c7dced415d034eea7736155a6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 06 12:57:18 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 06 12:57:18 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "36cbd3dcc10384f813ec0814255f576c84f2bcd4",
      "tree": "c3579edea972519d2f9ae99d7da9a5dd56e6f5c1",
      "parents": [
        "db71789c01ae7b641f83c5aa64e7df25122f4b28"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 05 10:42:58 2009 -0700"
      },
      "message": "net: mark read-only arrays as const\n\nString literals are constant, and usually, we can also tag the array\nof pointers const too, moving it to the .rodata section.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3b90ca28412fb9dcc8c5ca38e179e78fec07eee",
      "tree": "fa17113d9d7c96edc076b3f46558e8c3fb78d673",
      "parents": [
        "e48e3a2f17f189deb086ff221e489e7fd8ec4302"
      ],
      "author": {
        "name": "Igor Perminov",
        "email": "igor.perminov@inbox.ru",
        "time": "Tue Aug 04 16:48:51 2009 +0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:35 2009 -0400"
      },
      "message": "mac80211: FIF_PSPOLL filter flag\n\nWhen an interface is configured in the AP mode, the mac80211\nimplementation doesn\u0027t inform the driver to receive PS Poll frames.\nIt leads to inability to communicate with power-saving stations\nreliably.\nThe FIF_CONTROL flag isn\u0027t passed by mac80211 to\nieee80211_ops.configure_filter when an interface is in the AP mode.\nAnd it\u0027s ok, because we don\u0027t want to receive ACK frames and other\ncontrol ones, but only PS Poll ones.\n\nThis patch introduces the FIF_PSPOLL filter flag in addition to\nFIF_CONTROL, which means for the driver \"pass PS Poll frames\".\n\nThis flag is passed to the driver:\nA) When an interface is configured in the AP mode.\nB) In all cases, when the FIF_CONTROL flag was passed earlier (in\naddition to it).\n\nSigned-off-by: Igor Perminov \u003cigor.perminov@inbox.ru\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b19e6ca3bac7e04e93fb73f561d670e77c5fae6",
      "tree": "50a1487febe99b670aab253c4eebee2b8b3c8268",
      "parents": [
        "abc7381bcca6ce9dc101f112a13e14957bfbda7e"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:38:09 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:19 2009 -0400"
      },
      "message": "cfg80211: enable country IE support to all cfg80211 drivers\n\nSince the bss is always set now once we are connected, if the\nbss has its own information element we refer to it and pass that\ninstead of relying on mac80211\u0027s parsing.\n\nNow all cfg80211 drivers get country IE support, automatically and\nwe reduce the call overhead that we had on mac80211 which called this\nupon every beacon and instead now call this only upon a successfull\nconnection by a STA on cfg80211.\n\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "42935ecaf4e784d0815afa9a7e5fe7e141157ca3",
      "tree": "dc0a0dcfff761e98d8a2a23a7edc8f9182c2774c",
      "parents": [
        "64344d78228f6346a0462ba2d5fc03494aef4e6b"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Wed Jul 29 20:08:07 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:44:14 2009 -0400"
      },
      "message": "mac80211: redefine usage of the mac80211 workqueue\n\nThe mac80211 workqueue exists to enable mac80211 and drivers\nto queue their own work on a single threaded workqueue. mac80211\ntakes care to flush the workqueue during suspend but we never\nreally had requirements on drivers for how they should use\nthe workqueue in consideration for suspend.\n\nWe extend mac80211 to document how the mac80211 workqueue should\nbe used, how it should not be used and finally move raw access to\nthe workqueue to mac80211 only. Drivers and mac80211 use helpers\nto queue work onto the mac80211 workqueue:\n\n  * ieee80211_queue_work()\n  * ieee80211_queue_delayed_work()\n\nThese helpers will now warn if mac80211 already completed its\nsuspend cycle and someone is trying to queue work. mac80211\nflushes the mac80211 workqueue prior to suspend a few times,\nbut we haven\u0027t taken the care to ensure drivers won\u0027t add more\nwork after suspend. To help with this we add a warning when\nsomeone tries to add work and mac80211 already completed the\nsuspend cycle.\n\nDrivers should ensure they cancel any work or delayed work\nin the mac80211 stop() callback.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "eca4c3d2dd66d0230140c9af05dee591df6f0e42",
      "tree": "59167ea2ac39a78f626bb3905e495963af326b77",
      "parents": [
        "f6caa14aa0b126d4a2933907d1519611b2a8524a",
        "99f1b01562b7dcae75b043114f76163fbf84fcab"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 03 19:05:50 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 03 19:05:50 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "371842448c05b42d11a4be1c8e4e81d62ecc7534",
      "tree": "37c6f66d8a34999801cd09abffd7d7b66c0925dd",
      "parents": [
        "cd3468bad96c00b5a512f551674f36776129520e"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 30 17:43:48 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 03 16:31:21 2009 -0400"
      },
      "message": "cfg80211: fix regression on beacon world roaming feature\n\nA regression was added through patch a4ed90d6:\n\n\"cfg80211: respect API on orig_flags on channel for beacon hint\"\n\nWe did indeed respect _orig flags but the intention was not clearly\nstated in the commit log. This patch fixes firmware issues picked\nup by iwlwifi when we lift passive scan of beaconing restrictions\non channels its EEPROM has been configured to always enable.\n\nBy doing so though we also disallowed beacon hints on devices\nregistering their wiphy with custom world regulatory domains\nenabled, this happens to be currently ath5k, ath9k and ar9170.\nThe passive scan and beacon restrictions on those devices would\nnever be lifted even if we did find a beacon and the hardware did\nsupport such enhancements when world roaming.\n\nSince Johannes indicates iwlwifi firmware cannot be changed to\nallow beacon hinting we set up a flag now to specifically allow\ndrivers to disable beacon hints for devices which cannot use them.\n\nWe enable the flag on iwlwifi to disable beacon hints and by default\nenable it for all other drivers. It should be noted beacon hints lift\npassive scan flags and beacon restrictions when we receive a beacon from\nan AP on any 5 GHz non-DFS channels, and channels 12-14 on the 2.4 GHz\nband. We don\u0027t bother with channels 1-11 as those channels are allowed\nworld wide.\n\nThis should fix world roaming for ath5k, ath9k and ar9170, thereby\nimproving scan time when we receive the first beacon from any AP,\nand also enabling beaconing operation (AP/IBSS/Mesh) on cards which\nwould otherwise not be allowed to do so. Drivers not using custom\nregulatory stuff (wiphy_apply_custom_regulatory()) were not affected\nby this as the orig_flags for the channels would have been cleared\nupon wiphy registration.\n\nI tested this with a world roaming ath5k card.\n\nCc: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "af0d3b103bcfa877343ee338de12002cd50c9ee5",
      "tree": "a06b348fae8d295b17e7620d00df6701f678d449",
      "parents": [
        "eb4ad826419ab5b1260bc1625249114767d36bea"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Mon Aug 03 04:26:16 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 03 13:24:39 2009 -0700"
      },
      "message": "bluetooth: rfcomm_init bug fix\n\nrfcomm tty may be used before rfcomm_tty_driver initilized,\nThe problem is that now socket layer init before tty layer, if userspace\nprogram do socket callback right here then oops will happen.\n\nreporting in:\nhttp://marc.info/?l\u003dlinux-bluetooth\u0026m\u003d124404919324542\u0026w\u003d2\n\nmake 3 changes:\n1. remove #ifdef in rfcomm/core.c,\nmake it blank function when rfcomm tty not selected in rfcomm.h\n\n2. tune the rfcomm_init error patch to ensure\ntty driver initilized before rfcomm socket usage.\n\n3. remove __exit for rfcomm_cleanup_sockets\nbecause above change need call it in a __init function.\n\nReported-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nTested-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e4c4e448cf557921ffbbbd6d6ddac81fdceacb4f",
      "tree": "6813f4b0228e1ec26c26c5c56ef980a2a7c0963c",
      "parents": [
        "1e3e238e9c4bf9987b19185235cd0cdc21ea038c"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 30 03:15:07 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 02 18:35:16 2009 -0700"
      },
      "message": "neigh: Convert garbage collection from softirq to workqueue\n\nCurrent neigh_periodic_timer() function is fired by timer IRQ, and\nscans one hash bucket each round (very litle work in fact)\n\nAs we are supposed to scan whole hash table in 15 seconds, this means\nneigh_periodic_timer() can be fired very often. (depending on the number\nof concurrent hash entries we stored in this table)\n\nConverting this to a workqueue permits scanning whole table, minimizing\nicache pollution, and firing this work every 15 seconds, independantly\nof hash table size.\n\nThis 15 seconds delay is not a hard number, as work is a deferrable one.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e3e238e9c4bf9987b19185235cd0cdc21ea038c",
      "tree": "c58e2f1954ccb86ad1cca93ef269200cb183403c",
      "parents": [
        "bcd218be5aebed94951a750b1d477aea86fb68ea"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "heder@google.com",
        "time": "Sun Aug 02 11:05:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 02 18:29:30 2009 -0700"
      },
      "message": "IPVS: use pr_err and friends instead of IP_VS_ERR and friends\n\nSince pr_err and friends are used instead of printk there is no point\nin keeping IP_VS_ERR and friends.  Furthermore make use of \u0027__func__\u0027\ninstead of hard coded function names.\n\nSigned-off-by: Hannes Eder \u003cheder@google.com\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f6d7c1b34403b97fa57473edcb6749d1db5ace3",
      "tree": "97da33c077b08b72a361ff5a4542b86d190b0164",
      "parents": [
        "df597efb5737063497f1a4f7c996cc9aec294230",
        "1e4247d457c6a42e4a05cb7dfa4e6ea1fa65c112"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 19:26:55 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 19:26:55 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "df597efb5737063497f1a4f7c996cc9aec294230",
      "tree": "17bb60f68ee299d9717038197a932501625f1621",
      "parents": [
        "a33bc5c15154c835aae26f16e6a3a7d9ad4acb45",
        "0a924578bc4a2823a95c151f56975c71f5c156bb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 19:22:43 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 19:22:43 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-3945.h\n\tdrivers/net/wireless/iwlwifi/iwl-tx.c\n\tdrivers/net/wireless/iwlwifi/iwl3945-base.c\n"
    },
    {
      "commit": "a33bc5c15154c835aae26f16e6a3a7d9ad4acb45",
      "tree": "cf7683b1b2d2fd170bfc6650ea84a4b9a81eebbf",
      "parents": [
        "9aada7ac047f789ffb27540cc1695989897b2dfe"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Thu Jul 30 18:52:15 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 18:52:15 2009 -0700"
      },
      "message": "xfrm: select sane defaults for xfrm[4|6] gc_thresh\n\nChoose saner defaults for xfrm[4|6] gc_thresh values on init\n\nCurrently, the xfrm[4|6] code has hard-coded initial gc_thresh values\n(set to 1024).  Given that the ipv4 and ipv6 routing caches are sized\ndynamically at boot time, the static selections can be non-sensical.\nThis patch dynamically selects an appropriate gc threshold based on\nthe corresponding main routing table size, using the assumption that\nwe should in the worst case be able to handle as many connections as\nthe routing table can.\n\nFor ipv4, the maximum route cache size is 16 * the number of hash\nbuckets in the route cache.  Given that xfrm4 starts garbage\ncollection at the gc_thresh and prevents new allocations at 2 *\ngc_thresh, we set gc_thresh to half the maximum route cache size.\n\nFor ipv6, its a bit trickier.  there is no maximum route cache size,\nbut the ipv6 dst_ops gc_thresh is statically set to 1024.  It seems\nsane to select a simmilar gc_thresh for the xfrm6 code that is half\nthe number of hash buckets in the v6 route cache times 16 (like the v4\ncode does).\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9aada7ac047f789ffb27540cc1695989897b2dfe",
      "tree": "c55838fbe9060dd0b7d3857f0c850256d7ba8517",
      "parents": [
        "b4076d1715b8a38138db0805a85932b3b650d583"
      ],
      "author": {
        "name": "Hannes Eder",
        "email": "heder@google.com",
        "time": "Thu Jul 30 14:29:44 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 30 14:29:44 2009 -0700"
      },
      "message": "IPVS: use pr_fmt\n\nWhile being at it cleanup whitespace.\n\nSigned-off-by: Hannes Eder \u003cheder@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f9298f96082692bdfe73af6fc2167f627f21647",
      "tree": "ac99b1e27f93e0f4296112af23f78ab7e3a36144",
      "parents": [
        "562e482265ac4d660d9f0114419591d62f44361d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:18 2009 -0400"
      },
      "message": "cfg80211: combine IWESSID handlers\n\nSince we now have handlers IWESSID for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "562e482265ac4d660d9f0114419591d62f44361d",
      "tree": "fd57e0b515aef085a4eb1fc0d351811c82210db8",
      "parents": [
        "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:51 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:16 2009 -0400"
      },
      "message": "cfg80211: combine IWAP handlers\n\nSince we now have IWAP handlers for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca",
      "tree": "c6b73524d4db86ddcaa866d7ea81a9600b610413",
      "parents": [
        "a7bc376c858e0e724b8cb2db09b6874562d377ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:50 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:14 2009 -0400"
      },
      "message": "cfg80211: combine iwfreq implementations\n\nUntil now we implemented iwfreq for managed mode, we\nneeded to keep the implementations separate, but now\nthat we have all versions implemented we can combine\nthem and export just one handler.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3fa52056f3a8e755708241d5795e6d3e6f55ad85",
      "tree": "17986e56e775dc55627e4ba9aa0639182ee34339",
      "parents": [
        "91a3bd76155085d41520cf41ede39e8b7f01aeff"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 24 13:23:09 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 27 15:24:19 2009 -0400"
      },
      "message": "mac80211: fix PS-poll response, race\n\nWhen a station queries us for a PS-poll response, we wrongly\nqueue the frame on the virtual interface\u0027s queue rather than\nthe pending queue.\n\nAdditionally, fix a race condition where we could potentially\nsend multiple frames to the sleeping station due to using a\nstation flag rather than a packet flag. When converting to a\npacket flag, we can also convert p54 and remove the filter\nclearing we added for it.\n\n(Also remove a now dead function)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nReported-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nTested-by: Bob Copeland \u003cme@bobcopeland.com\u003e\nCc: Christian Lamparter \u003cchunkeey@web.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "463d018323851a608eef52a9427b0585005c647f",
      "tree": "b5ad2ee6115e6b780c264022cbc20b36d22fe80c",
      "parents": [
        "5061b0c2b9066de426fbc63f1278d2210e789412"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 14 00:33:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 27 15:24:07 2009 -0400"
      },
      "message": "cfg80211: make aware of net namespaces\n\nIn order to make cfg80211/nl80211 aware of network namespaces,\nwe have to do the following things:\n\n * del_virtual_intf method takes an interface index rather\n   than a netdev pointer - simply change this\n\n * nl80211 uses init_net a lot, it changes to use the sender\u0027s\n   network namespace\n\n * scan requests use the interface index, hold a netdev pointer\n   and reference instead\n\n * we want a wiphy and its associated virtual interfaces to be\n   in one netns together, so\n    - we need to be able to change ns for a given interface, so\n      export dev_change_net_namespace()\n    - for each virtual interface set the NETIF_F_NETNS_LOCAL\n      flag, and clear that flag only when the wiphy changes ns,\n      to disallow breaking this invariant\n\n * when a network namespace goes away, we need to reparent the\n   wiphy to init_net\n\n * cfg80211 users that support creating virtual interfaces must\n   create them in the wiphy\u0027s namespace, currently this affects\n   only mac80211\n\nThe end result is that you can now switch an entire wiphy into\na different network namespace with the new command\n\tiw phy#\u003cidx\u003e set netns \u003cpid\u003e\nand all virtual interfaces will follow (or the operation fails).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f004ec728bff3cf924ffc19387baca503cd73b01",
      "tree": "d70d86b6697002cf4d71642185003d5e1bbf16f5",
      "parents": [
        "c685bfc6c6bcb9bcc42d1345a3650d3ce5185c52",
        "987b8816661332978efd0f85bedf9866fe2e3232"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 27 11:29:31 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 27 11:29:31 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lowpan/lowpan\n"
    },
    {
      "commit": "dcf777f6ed9799c5ac90ac17a5c369e6b73ca92e",
      "tree": "dc15b2d5800241d124528d627f8b039ac29d32d4",
      "parents": [
        "d513d018e2236930b6163241bbdce64d2c0de49e"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Jul 26 19:11:14 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 26 19:11:14 2009 -0700"
      },
      "message": "NET: ROSE: Don\u0027t use static buffer.\n\nThe use of a static buffer in rose2asc() to return its result is not\nthreadproof and can result in corruption if multiple threads are trying\nto use one of the procfs files based on rose2asc().\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3b8d81e020f77c9da8b85b0685c8cd2ca7c7b150",
      "tree": "a19fcddbf28fecdbd13ad009fe07b8afc5e95c90",
      "parents": [
        "c4029083e2acb82229c43b791c07afb089d972ff"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 17 17:43:56 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:30 2009 -0400"
      },
      "message": "mac80211: remove master netdev\n\nWith the internal \u0027pending\u0027 queue system in place, we can simply\nput packets there instead of pushing them off to the master dev,\ngetting rid of the master interface completely.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4c6d4f5c33fbe19b134c1af43af166fee79eb986",
      "tree": "789bd7f9c049ea9c57ad8f4826df6bcad3774ade",
      "parents": [
        "943ab70f6aebfdc0005ef7e58ae982e9ec22224b"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 16 10:05:41 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:16 2009 -0400"
      },
      "message": "mac80211: add helper for management / no-ack frame rate decision\n\nAll current rate control algorithms agree to send management and no-ack\nframes at the lowest rate. They also agree to do this when sta\nand the private rate control data is NULL. We add a hlper to mac80211\nfor this and simplify the rate control algorithm code.\n\nDevelopers wishing to make enhancements to rate control algorithms\nare for broadcast/multicast can opt to not use this in their\ngate_rate() mac80211 callback.\n\nCc: Zhu Yi \u003cyi.zhu@intel.com\u003e\nAcked-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nCc: ipw3945-devel@lists.sourceforge.net\nCc: Gabor Juhos \u003cjuhosg@openwrt.org\u003e\nAcked-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nCc: Derek Smithies \u003cderek@indranet.co.nz\u003e\nCc: Chittajit Mitra \u003cChittajit.Mitra@Atheros.com\u003e\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b770b43e95a66587fbd8c1841de83da87fbf23ea",
      "tree": "8b91a3936e0964192e4f59a98e157606cbe932ac",
      "parents": [
        "fe643414dbf330d6d910e01edd48dd93dc6f2942"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Thu Jul 16 10:15:09 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:14 2009 -0400"
      },
      "message": "mac80211: drop frames for sta with no valid rate\n\nWhen we\u0027re associated we should be able to send data to\ntarget sta. If we cannot we may be trying to use the incorrect\nband to talk to the sta. Lets catch any such cases, warn, and\ndrop the frames to not invalidate assumptions being made on\nrate control algorithms when they have a valid sta to\ncommunicate with. Any such cases should be handled and fixed.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ca3dbc20d47ae43c201c215259d078e227bfcf01",
      "tree": "6812bfccf5e2a0108c58facf3ed1b889616fb2db",
      "parents": [
        "a43816df2a1a61effcb701037bdf63621d066182"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Fri Jul 10 14:54:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: update misleading comment\n\nIn cfg80211_scan_request n_channels refers to the total number\nof channels to scan. Update the misleading comment accordingly.\n\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "74d154189d597b91da4322996dbf4f5c3d1544ab",
      "tree": "6f09861b5e2f875d2d8ea2127b16add9103221c6",
      "parents": [
        "5a6338db37885af06760d40cad589316e48431e9",
        "ffafa60d496f80c250f2ae0340ae94434c0b0b4d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 19:03:51 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwmc3200wifi/netdev.c\n\tnet/wireless/scan.c\n"
    },
    {
      "commit": "c1dc13e9d0bc35a8d85bf4238c48c1b627d48f35",
      "tree": "7bc3ecf8a72b1dc940f6cd676eb9bcfebfc2402e",
      "parents": [
        "e8834a63bddf87f7b85955d1ba60d28343d88469"
      ],
      "author": {
        "name": "Rémi Denis-Courmont",
        "email": "remi.denis-courmont@nokia.com",
        "time": "Tue Jul 21 01:57:57 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 23 17:58:19 2009 -0700"
      },
      "message": "Phonet: sockets list through proc_fs\n\nThis provides a list of sockets with their Phonet bind addresses and\nsome socket debug informations through /proc/net/phonet.\n\nSigned-off-by: Rémi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0166e5e3cdab66d5a31f796ce18e21fd3ce99dc",
      "tree": "dbdd622cfa4fb8cbf127d3b494c9db2eec2a4760",
      "parents": [
        "878fa89f97954337d1dc41f0ccc3a8b5f89cfbc7"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Thu Jul 23 16:56:29 2009 +0400"
      },
      "committer": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Thu Jul 23 17:08:51 2009 +0400"
      },
      "message": "ieee802154: move headers out of extra directory\n\ninclude/net/ieee802154/af_ieee802154.h (and others) naming seems to be too long\nand redundant. Drop one level of subdirectories.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\n"
    },
    {
      "commit": "878fa89f97954337d1dc41f0ccc3a8b5f89cfbc7",
      "tree": "975db3d7d99ee5cd9a55e23683d14468a6ccb4be",
      "parents": [
        "dfd06fe8246c0425f8d6850b8e2c872b0d691ec3"
      ],
      "author": {
        "name": "Daniel Silverstone",
        "email": "dsilvers@digital-scurf.org",
        "time": "Wed Jul 22 18:51:24 2009 +0200"
      },
      "committer": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Thu Jul 23 17:06:49 2009 +0400"
      },
      "message": "IEEE80154: Add documentation to the IEEE80154 netlink and fakehard driver\n\nThis adds some perfunctory documentation comments to the IEEE 802.15.4\nfakehard.c driver (Fake hard MAC) and the nl802154.h (outgoing netlink messages)\nheader.\n\nThese comments are not necessarily complete, but they do reference the\nIEEE 802.15.4-2006 document where possible.\n\nSigned-off-by: Daniel Silverstone \u003cdsilvers@simtec.co.uk\u003e\n"
    },
    {
      "commit": "4edf547b4d0f886acf5aa5a0c8f8edbaff280830",
      "tree": "5dd08879421a2be32a3c89c9bd76506a5cb8e9e3",
      "parents": [
        "27e0955184a70c4bd4542ee2da18c749b4f43345"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 15 06:16:34 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 20 08:03:00 2009 -0700"
      },
      "message": "net: explain netns notifiers a little better\n\nEric explained this to me -- and afterwards the comment\nmade sense, but not before. Add the the critical point\nabout interfaces having to be gone from the netns before\nsubsys notifiers are called.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3afe7b75ed8f809c1473ea9b39267487c187ccb",
      "tree": "715aa813d57ffbc6b1a179e2f7f2957b88b415dc",
      "parents": [
        "a50a97d415d839e6db9df288ff0205528e52c03e"
      ],
      "author": {
        "name": "John Dykstra",
        "email": "john.dykstra1@gmail.com",
        "time": "Thu Jul 16 05:04:51 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 20 07:49:07 2009 -0700"
      },
      "message": "tcp: Fix MD5 signature checking on IPv4 mapped sockets\n\nFix MD5 signature checking so that an IPv4 active open\nto an IPv6 socket can succeed.  In particular, use the\ncorrect address family\u0027s signature generation function\nfor the SYN/ACK.\n\nReported-by:   Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: John Dykstra \u003cjohn.dykstra1@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da8120355e80ddaf534adb8ed910871d97512d56",
      "tree": "9958a6c33e29b5af5faccf6650e98729151618a2",
      "parents": [
        "c86ae82605ef92594a0de809a8c588ae955fed63",
        "7fefe6a88494b00b151b5ca7bb84daaa781bbca7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 20:21:24 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/orinoco/main.c\n"
    },
    {
      "commit": "4dc6dc7162c08b9965163c9ab3f9375d4adff2c7",
      "tree": "f4b9959e9ca5e5b8bdb6301663a15e0f67d4c68c",
      "parents": [
        "303d67c288319768b19ed8dbed429fef7eb7c275"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jul 15 23:13:10 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 16 18:05:26 2009 -0700"
      },
      "message": "net: sock_copy() fixes\n\nCommit e912b1142be8f1e2c71c71001dc992c6e5eb2ec1\n(net: sk_prot_alloc() should not blindly overwrite memory)\ntook care of not zeroing whole new socket at allocation time.\n\nsock_copy() is another spot where we should be very careful.\nWe should not set refcnt to a non null value, until\nwe are sure other fields are correctly setup, or\na lockless reader could catch this socket by mistake,\nwhile not fully (re)initialized.\n\nThis patch puts sk_node \u0026 sk_refcnt to the very beginning\nof struct sock to ease sock_copy() \u0026 sk_prot_alloc() job.\n\nWe add appropriate smp_wmb() before sk_refcnt initializations\nto match our RCU requirements (changes to sock keys should\nbe committed to memory before sk_refcnt setting)\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b333b3d22822cf9b295990866798e9239c9dee72",
      "tree": "307298699e475eb93a3326384fff6f28b1e28b0f",
      "parents": [
        "97fd5bc7f2e442482a7a6cc4bc2a286cbb5f4754"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jun 24 01:34:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 15 08:53:32 2009 -0700"
      },
      "message": "wireless extensions: make netns aware\n\nThis makes wireless extensions netns aware. The\ntasklet sending the events is converted to a work\nstruct so that we can rtnl_lock() in it.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ea2f2c5a66e4e9a8d96296ac47ad895c467ee1d",
      "tree": "3375f979fd62839465b8538fe658ab4f31b6e0f8",
      "parents": [
        "c31d5326902cebffcd83b1aede67a0e0ac923090"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Thu Jul 09 08:10:01 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 12 14:29:28 2009 -0700"
      },
      "message": "udpv6: Remove unused skb argument of ipv6_select_ident()\n\n- move ipv6_select_ident() inline function to ipv6.h and remove the unused\n  skb argument\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "d7ca4cc01fd154f2da30ae6dae160fa5800af758"
}
