)]}'
{
  "log": [
    {
      "commit": "f13ec93fba60d339dc1663eb47b2fb801225d2d2",
      "tree": "1f6f12311f307d46b33a2a2afae43853f28fb5ad",
      "parents": [
        "d09f51b6997f3f443c5741bc696651e479576715"
      ],
      "author": {
        "name": "Dmitry Butskoy",
        "email": "dmitry@butskoy.name",
        "time": "Sat Jul 14 23:53:08 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 23:53:08 2007 -0700"
      },
      "message": "[IPV6]: MSG_ERRQUEUE messages do not pass to connected raw sockets\n\nFrom: Dmitry Butskoy \u003cdmitry@butskoy.name\u003e\n\nTaken from http://bugzilla.kernel.org/show_bug.cgi?id\u003d8747\n\nProblem Description:\n\nIt is related to the possibility to obtain MSG_ERRQUEUE messages from the udp\nand raw sockets, both connected and unconnected.\n\nThere is a little typo in net/ipv6/icmp.c code, which prevents such messages\nto be delivered to the errqueue of the correspond raw socket, when the socket\nis CONNECTED.  The typo is due to swap of local/remote addresses.\n\nConsider __raw_v6_lookup() function from net/ipv6/raw.c. When a raw socket is\nlooked up usual way, it is something like:\n\nsk \u003d __raw_v6_lookup(sk, nexthdr, daddr, saddr, IP6CB(skb)-\u003eiif);\n\nwhere \"daddr\" is a destination address of the incoming packet (IOW our local\naddress), \"saddr\" is a source address of the incoming packet (the remote end).\n\nBut when the raw socket is looked up for some icmp error report, in\nnet/ipv6/icmp.c:icmpv6_notify() , daddr/saddr are obtained from the echoed\nfragment of the \"bad\" packet, i.e.  \"daddr\" is the original destination\naddress of that packet, \"saddr\" is our local address.  Hence, for\nicmpv6_notify() must use \"saddr, daddr\" in its arguments, not \"daddr, saddr\"\n...\n\nSteps to reproduce:\n\nCreate some raw socket, connect it to an address, and cause some error\nsituation: f.e. set ttl\u003d1 where the remote address is more than 1 hop to reach.\nSet IPV6_RECVERR .\nThen send something and wait for the error (f.e. poll() with POLLERR|POLLIN).\nYou should receive \"time exceeded\" icmp message (because of \"ttl\u003d1\"), but the\nsocket do not receive it.\n\nIf you do not connect your raw socket, you will receive MSG_ERRQUEUE\nsuccessfully.  (The reason is that for unconnected socket there are no actual\nchecks for local/remote addresses).\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b1ac759d7c6bba6e5f4731ef6ea720b6636e27c",
      "tree": "52b309bb91de1b4ca82b8a3b505dcfcd9a0812c6",
      "parents": [
        "0621ed2e4edbe2f6f83dafbf85eecefae7aaf2e8"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Sat Jul 14 20:51:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:51:44 2007 -0700"
      },
      "message": "[IPV4]: Cleanup call to __neigh_lookup()\n\nBack in the times of Linux 2.2, negative values for the creat parameter\nof __neigh_lookup() had a particular meaning, but no longer, so we\nshould pass 1 instead.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0621ed2e4edbe2f6f83dafbf85eecefae7aaf2e8",
      "tree": "30e005117719da029a238b88c742b0a7e516ad50",
      "parents": [
        "59eecdfb166f6846ae356ddc744abed5820ad965"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 20:49:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:49:26 2007 -0700"
      },
      "message": "[NET_SCHED]: Revert \"avoid transmit softirq on watchdog wakeup\" optimization\n\nAs noticed by Ranko Zivojnovic \u003cranko@spidernet.net\u003e, calling qdisc_run\nfrom the timer handler can result in deadlock:\n\n\u003e CPU#0\n\u003e\n\u003e qdisc_watchdog() fires and gets dev-\u003equeue_lock\n\u003e qdisc_run()...qdisc_restart()...\n\u003e -\u003e releases dev-\u003equeue_lock and enters dev_hard_start_xmit()\n\u003e\n\u003e CPU#1\n\u003e\n\u003e tc del qdisc dev ...\n\u003e qdisc_graft()...dev_graft_qdisc()...dev_deactivate()...\n\u003e -\u003e grabs dev-\u003equeue_lock ...\n\u003e\n\u003e qdisc_reset()...{cbq,hfsc,htb,netem,tbf}_reset()...qdisc_watchdog_cancel()...\n\u003e -\u003e hrtimer_cancel() - waiting for the qdisc_watchdog() to exit, while still\n\u003e\t\t        holding dev-\u003equeue_lock\n\u003e\n\u003e CPU#0\n\u003e\n\u003e dev_hard_start_xmit() returns ...\n\u003e -\u003e wants to get dev-\u003equeue_lock(!)\n\u003e\n\u003e DEADLOCK!\n\nThe entire optimization is a bit questionable IMO, it moves potentially\nlarge parts of NET_TX_SOFTIRQ work to TIMER_SOFTIRQ/HRTIMER_SOFTIRQ,\nwhich kind of defeats the separation of them.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Ranko Zivojnovic \u003cranko@spidernet.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59eecdfb166f6846ae356ddc744abed5820ad965",
      "tree": "5cfbafad5bcb8d5197b9f515f1e23387427cea29",
      "parents": [
        "61075af51f252913401c41fbe94075b46c94e9f1"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 20:48:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:48:44 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: UDPLITE support\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61075af51f252913401c41fbe94075b46c94e9f1",
      "tree": "bf97f2a5ed93ed1767953b0ae8678d921ebc0473",
      "parents": [
        "370786f9cfd430cb424f00ce4110e75bb1b95a19"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 20:48:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:48:19 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: mark protocols __read_mostly\n\nAlso remove two unnecessary EXPORT_SYMBOLs and move the\nnf_conntrack_l3proto_ipv4 declaration to the correct file.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "370786f9cfd430cb424f00ce4110e75bb1b95a19",
      "tree": "df0e51882850f8db8da8f6e4ab746179b1993b9c",
      "parents": [
        "a887c1c148ffb3eb1c193e9869ca5297c6e22078"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@gmx.de",
        "time": "Sat Jul 14 20:47:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:47:26 2007 -0700"
      },
      "message": "[NETFILTER]: x_tables: add connlimit match\n\nipt_connlimit has been sitting in POM-NG for a long time.\nHere is a new shiny xt_connlimit with:\n\n * xtables\u0027ified\n * will request the layer3 module\n   (previously it hotdropped every packet when it was not loaded)\n * fixed: there was a deadlock in case of an OOM condition\n * support for any layer4 protocol (e.g. UDP/SCTP)\n * using jhash, as suggested by Eric Dumazet\n * ipv6 support\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a887c1c148ffb3eb1c193e9869ca5297c6e22078",
      "tree": "d0fe99a74d2fad3984aa4b3946f9b50b5adebbce",
      "parents": [
        "130e7a83d7ec8c5c673225e0fa8ea37b1ed507a5"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 20:46:15 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:46:15 2007 -0700"
      },
      "message": "[NETFILTER]: Lower *tables printk severity\n\nLower ip6tables, arptables and ebtables printk severity similar to\nDan Aloni\u0027s patch for iptables.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "130e7a83d7ec8c5c673225e0fa8ea37b1ed507a5",
      "tree": "35b4d5f60070309cb592b156590c1fb431e37ef6",
      "parents": [
        "e2a3123fbe58da9fd3f35cd242087896ace6049f"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 14 20:45:41 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:45:41 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: Don\u0027t track locally generated special ICMP error\n\nThe conntrack assigned to locally generated ICMP error is usually the one\nassigned to the original packet which has caused the error. But if\nthe original packet is handled as invalid by nf_conntrack, no conntrack\nis assigned to the original packet. Then nf_ct_attach() cannot assign\nany conntrack to the ICMP error packet. In that case the current\nnf_conntrack_icmp assigns appropriate conntrack to it. But the current\ncode mistakes the direction of the packet. As a result, NAT code mistakes\nthe address to be mangled.\n\nTo fix the bug, this changes nf_conntrack_icmp not to assign conntrack\nto such ICMP error. Actually no address is necessary to be mangled\nin this case.\n\nSpotted by Jordan Russell.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e2a3123fbe58da9fd3f35cd242087896ace6049f",
      "tree": "f17f8b6f505bb50be97e204c382a92288f75c986",
      "parents": [
        "ffc30690480bdd337e4914302b926d24870b56b2"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 14 20:45:14 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:45:14 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: Introduces nf_ct_get_tuplepr and uses it\n\nnf_ct_get_tuple() requires the offset to transport header and that bothers\ncallers such as icmp[v6] l4proto modules. This introduces new function\nto simplify them.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffc30690480bdd337e4914302b926d24870b56b2",
      "tree": "805dfdda135a6f91648aded75b1cfb754705a4b4",
      "parents": [
        "d87d8469e2dd19a3a134b99f78288d41854c614b"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 14 20:44:50 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:44:50 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: make l3proto-\u003eprepare() generic and renames it\n\nThe icmp[v6] l4proto modules parse headers in ICMP[v6] error to get tuple.\nBut they have to find the offset to transport protocol header before that.\nTheir processings are almost same as prepare() of l3proto modules.\nThis makes prepare() more generic to simplify icmp[v6] l4proto module\nlater.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d87d8469e2dd19a3a134b99f78288d41854c614b",
      "tree": "c976ea2c818ecfb1fb3b6d96eaa2bd7859c19d09",
      "parents": [
        "6460d948f3ebf7d5040328a60a0ab7221f69945b"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 14 20:44:23 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 20:44:23 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: Increment error count on parsing IPv4 header\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6460d948f3ebf7d5040328a60a0ab7221f69945b",
      "tree": "d7c2a7eda9f20a03698df32bdc4677ca0c2479d5",
      "parents": [
        "febca281f677a775c61cd0572c2f35e4ead9e7d5"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Sat Jul 14 19:07:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:07:52 2007 -0700"
      },
      "message": "[NET]: Add ethtool support for NETIF_F_IPV6_CSUM devices.\n\nAdd ethtool utility function to set or clear IPV6_CSUM feature flag.\nModify tg3.c and bnx2.c to use this function when doing ethtool -K\nto change tx checksum.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "febca281f677a775c61cd0572c2f35e4ead9e7d5",
      "tree": "64a58deba476ff3dbc7468d6d2e8e33e1351bf68",
      "parents": [
        "13fdc9a74df0fec70f421c6891e184ed8c3b9088"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "braunu@de.ibm.com",
        "time": "Sat Jul 14 19:04:25 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:04:25 2007 -0700"
      },
      "message": "[AF_IUCV]: Add lock when updating accept_q\n\nThe accept_queue of an af_iucv socket will be corrupted, if\nadding and deleting of entries in this queue occurs at the\nsame time (connect request from one client, while accept call\nis processed for another client).\nSolution: add locking when updating accept_q\n\nSigned-off-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nAcked-by: Frank Pavlic \u003cfpavlic@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13fdc9a74df0fec70f421c6891e184ed8c3b9088",
      "tree": "efd81d0f35e2300ee86e538fa8c136654c7c0dae",
      "parents": [
        "da7de31cc50796a53593785d4508b7b7ffa9a9b2"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "braunu@de.ibm.com",
        "time": "Sat Jul 14 19:03:41 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:03:41 2007 -0700"
      },
      "message": "[AF_IUCV]: Avoid deadlock between iucv_path_connect and tasklet.\n\nAn iucv deadlock may occur, where one CPU is spinning on the\niucv_table_lock for iucv_tasklet_fn(), while another CPU is holding\nthe iucv_table_lock for an iucv_path_connect() and is waiting for\nthe first CPU in an smp_call_function.\nSolution: replace spin_lock in iucv_tasklet_fn by spin_trylock and\nreschedule tasklet in case of non-granted lock.\n\nSigned-off-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nAcked-by: Frank Pavlic \u003cfpavlic@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da7de31cc50796a53593785d4508b7b7ffa9a9b2",
      "tree": "bbd3dd15b45b5093de93dc32f585eb6c56c4d871",
      "parents": [
        "acd159b6b5828175be6b9ccccd9b054239ec63e9"
      ],
      "author": {
        "name": "Jennifer Hunt",
        "email": "jenhunt@us.ibm.com",
        "time": "Sat Jul 14 19:03:00 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:03:00 2007 -0700"
      },
      "message": "[AF_IUCV]: Improve description of IUCV and AFIUCV configuration options.\n\nSigned-off-by: Jennifer Hunt \u003cjenhunt@us.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003ebraunu@de.ibm.com\u003e\nAcked-by: Frank Pavlic \u003cfpavlic@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "acd159b6b5828175be6b9ccccd9b054239ec63e9",
      "tree": "bf0af1a1700a114f489bce36a85f8b0947287268",
      "parents": [
        "cf3842ec5015c862f4869e3641a8549393bb958e"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Jul 14 19:00:59 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 19:00:59 2007 -0700"
      },
      "message": "[INET_SOCK]: make net/ipv4/inet_timewait_sock.c:__inet_twsk_kill() static\n\nThis patch makes the needlessly global __inet_twsk_kill() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf3842ec5015c862f4869e3641a8549393bb958e",
      "tree": "6c2f0158504f3463fcca1359de90b699cb636e97",
      "parents": [
        "b3b0b681b12478a7afa7d1f3d58be96830e16c7d",
        "63fc33ceb0ccc08b3f62d7bfe56a33eb33ca9427"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jul 14 18:58:49 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jul 14 18:58:49 2007 -0700"
      },
      "message": "Merge branch \u0027upstream-davem\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "b3b0b681b12478a7afa7d1f3d58be96830e16c7d",
      "tree": "3e3dc5d37d88bdc53c9cdc27fa0cb655195129f8",
      "parents": [
        "a7ecfc866578e665e20004a2f5fff5b73e8be3bc"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Sat Jul 14 18:57:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:57:19 2007 -0700"
      },
      "message": "[TCP]: tcp probe add back ssthresh field\n\nSangtae noticed the ssthresh got missed.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7ecfc866578e665e20004a2f5fff5b73e8be3bc",
      "tree": "9967d6cc6eb1e098251f4e230266caa69616b4f1",
      "parents": [
        "b863ceb7ddcea8c55fcf1d7b2ac591d50aa7ed53"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:56:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:56:30 2007 -0700"
      },
      "message": "[VLAN]: Fix memset length\n\nFix sizeof(ETH_ALEN) Introduced by my rtnl_link patches.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b863ceb7ddcea8c55fcf1d7b2ac591d50aa7ed53",
      "tree": "a65d5e4be77666600c0005c5f4c9091df63a3a1b",
      "parents": [
        "56addd6eeeb4e11f5a0af7093ca078e0f29140e0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:55:06 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:55:06 2007 -0700"
      },
      "message": "[NET]: Add macvlan driver\n\nAdd macvlan driver, which allows to create virtual ethernet devices\nbased on MAC address.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56addd6eeeb4e11f5a0af7093ca078e0f29140e0",
      "tree": "814e84aa686d9fec602f977901634ebf576d039d",
      "parents": [
        "6c78dcbd47a68a7d25d2bee7a6c74b9136cb5fde"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:53:28 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:53:28 2007 -0700"
      },
      "message": "[VLAN]: Use multicast list synchronization helpers\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6c78dcbd47a68a7d25d2bee7a6c74b9136cb5fde",
      "tree": "21e4a2ea3eb7ed87ce525c59bb8c4d23d8c84589",
      "parents": [
        "a0a400d79e3dd7843e7e81baa3ef2957bdc292d0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:52:56 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:52:56 2007 -0700"
      },
      "message": "[VLAN]: Fix promiscous/allmulti synchronization races\n\nThe set_multicast_list function may be called without holding the rtnl\nmutex, resulting in races when changing the underlying device\u0027s promiscous\nand allmulti state. Use the change_rx_mode hook, which is always invoked\nunder the rtnl.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0a400d79e3dd7843e7e81baa3ef2957bdc292d0",
      "tree": "1391190938fb43587967f44f0ab139a2522b4a65",
      "parents": [
        "24023451c8df726692e2f52288a20870d13b501f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:52:02 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:52:02 2007 -0700"
      },
      "message": "[NET]: dev_mcast: add multicast list synchronization helpers\n\nThe method drivers currently use to synchronize multicast lists is not\nvery pretty:\n\n- walk the multicast list\n- search each entry on a copy of the previous list\n- if new add to lower device\n- walk the copy of the previous list\n- search each entry on the current list\n- if removed delete from lower device\n- copy entire list\n\nThis patch adds a new field to struct dev_addr_list to store the\nsynchronization state and adds two helper functions for synchronization\nand cleanup.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24023451c8df726692e2f52288a20870d13b501f",
      "tree": "b80c48dfe817a1a18484dadbc110ca07353c86c8",
      "parents": [
        "e6c9116d1dc984cb7ecf1b0fe26ca4a8ab36bb57"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 14 18:51:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:51:31 2007 -0700"
      },
      "message": "[NET]: Add net_device change_rx_mode callback\n\nCurrently the set_multicast_list (and set_rx_mode) callbacks are\nresponsible for configuring the device according to the IFF_PROMISC,\nIFF_MULTICAST and IFF_ALLMULTI flags and the mc_list (and uc_list in\ncase of set_rx_mode).\n\nThese callbacks can be invoked from BH context without the rtnl_mutex\nby dev_mc_add/dev_mc_delete, which makes reading the device flags and\npromiscous/allmulti count racy. For real hardware drivers that just\ncommit all changes to the hardware this is not a real problem since\nthe stack guarantees to call them for every change, so at least the\nfinal call will not race and commit the correct configuration to the\nhardware.\n\nFor software devices that want to synchronize promiscous and multicast\nstate to an underlying device however this can cause corruption of the\nunderlying device\u0027s flags or promisc/allmulti counts.\n\nWhen the software device is concurrently put in promiscous or allmulti\nmode while set_multicast_list is invoked from bottem half context, the\ndevice might synchronize the change to the underlying device without\nholding the rtnl_mutex, which races with concurrent changes to the\nunderlying device.\n\nAdd a dev-\u003echange_rx_flags hook that is invoked when any of the flags\nthat affect rx filtering change (under the rtnl_mutex), which allows\ndrivers to perform synchronization immediately and only synchronize\nthe address lists in set_multicast_list/set_rx_mode.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e6c9116d1dc984cb7ecf1b0fe26ca4a8ab36bb57",
      "tree": "4097167cef775da1006b762f30ceff323ccf6071",
      "parents": [
        "8d9107e8c50e1c4ff43c91c8841805833f3ecfb9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jul 14 18:50:15 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 14 18:50:15 2007 -0700"
      },
      "message": "[RFKILL]: fix net/rfkill/rfkill-input.c bug on 64-bit systems\n\nSubject: [patch] net/input: fix net/rfkill/rfkill-input.c bug on 64-bit systems\n\nthis recent commit:\n\n commit cf4328cd949c2086091c62c5685f1580fe9b55e4\n Author: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\n Date:   Mon May 7 00:34:20 2007 -0700\n\n     [NET]: rfkill: add support for input key to control wireless radio\n\nadded this 64-bit bug:\n\n        ....\n\tunsigned int flags;\n \n \tspin_lock_irqsave(\u0026task-\u003elock, flags);\n        ....\n\nirq \u0027flags\u0027 must be unsigned long, not unsigned int. The -rt tree has \nstrict checks about this on 64-bit so this triggered a build failure. \n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16cefa8c3863721fd40445a1b34dea18cd16ccfe",
      "tree": "c8e58ca06e2edfd667d3e6062a642b80cc58e5e7",
      "parents": [
        "4fbef206daead133085fe33905f5e842d38fb8da",
        "d8558f99fbc5ef5d4ae76b893784005056450f82"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 16:46:18 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 16:46:18 2007 -0700"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (122 commits)\n  sunrpc: drop BKL around wrap and unwrap\n  NFSv4: Make sure unlock is really an unlock when cancelling a lock\n  NLM: fix source address of callback to client\n  SUNRPC client: add interface for binding to a local address\n  SUNRPC server: record the destination address of a request\n  SUNRPC: cleanup transport creation argument passing\n  NFSv4: Make the NFS state model work with the nosharedcache mount option\n  NFS: Error when mounting the same filesystem with different options\n  NFS: Add the mount option \"nosharecache\"\n  NFS: Add support for mounting NFSv4 file systems with string options\n  NFS: Add final pieces to support in-kernel mount option parsing\n  NFS: Introduce generic mount client API\n  NFS: Add enums and match tables for mount option parsing\n  NFS: Improve debugging output in NFS in-kernel mount client\n  NFS: Clean up in-kernel NFS mount\n  NFS: Remake nfsroot_mount as a permanent part of NFS client\n  SUNRPC: Add a convenient default for the hostname when calling rpc_create()\n  SUNRPC: Rename rpcb_getport to be consistent with new rpcb_getport_sync name\n  SUNRPC: Rename rpcb_getport_external routine\n  SUNRPC: Allow rpcbind requests to be interrupted by a signal.\n  ...\n"
    },
    {
      "commit": "e030dbf91a87da7e8be3be3ca781558695bea683",
      "tree": "4ff2e01621a888be4098ca48c404775e56a55a0d",
      "parents": [
        "12a22960549979c10a95cc97f8ec63b461c55692",
        "3039f0735a280b54c7364fbfe6a9287f7f0b510a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 10:52:27 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Jul 13 10:52:27 2007 -0700"
      },
      "message": "Merge branch \u0027ioat-md-accel-for-linus\u0027 of git://lost.foo-projects.org/~dwillia2/git/iop\n\n* \u0027ioat-md-accel-for-linus\u0027 of git://lost.foo-projects.org/~dwillia2/git/iop: (28 commits)\n  ioatdma: add the unisys \"i/oat\" pci vendor/device id\n  ARM: Add drivers/dma to arch/arm/Kconfig\n  iop3xx: surface the iop3xx DMA and AAU units to the iop-adma driver\n  iop13xx: surface the iop13xx adma units to the iop-adma driver\n  dmaengine: driver for the iop32x, iop33x, and iop13xx raid engines\n  md: remove raid5 compute_block and compute_parity5\n  md: handle_stripe5 - request io processing in raid5_run_ops\n  md: handle_stripe5 - add request/completion logic for async expand ops\n  md: handle_stripe5 - add request/completion logic for async read ops\n  md: handle_stripe5 - add request/completion logic for async check ops\n  md: handle_stripe5 - add request/completion logic for async compute ops\n  md: handle_stripe5 - add request/completion logic for async write ops\n  md: common infrastructure for running operations with raid5_run_ops\n  md: raid5_run_ops - run stripe operations outside sh-\u003elock\n  raid5: replace custom debug PRINTKs with standard pr_debug\n  raid5: refactor handle_stripe5 and handle_stripe6 (v3)\n  async_tx: add the async_tx api\n  xor: make \u0027xor_blocks\u0027 a library routine for use with async_tx\n  dmaengine: make clients responsible for managing channels\n  dmaengine: refactor dmaengine around dma_async_tx_descriptor\n  ...\n"
    },
    {
      "commit": "d379b01e9087a582d58f4b678208a4f8d8376fe7",
      "tree": "155920bca93c18afba66b9d5acfecd359d5bec65",
      "parents": [
        "7405f74badf46b5d023c5d2b670b4471525f6c91"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Mon Jul 09 11:56:42 2007 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Fri Jul 13 08:06:13 2007 -0700"
      },
      "message": "dmaengine: make clients responsible for managing channels\n\nThe current implementation assumes that a channel will only be used by one\nclient at a time.  In order to enable channel sharing the dmaengine core is\nchanged to a model where clients subscribe to channel-available-events.\nInstead of tracking how many channels a client wants and how many it has\nreceived the core just broadcasts the available channels and lets the\nclients optionally take a reference.  The core learns about the clients\u0027\nneeds at dma_event_callback time.\n\nIn support of multiple operation types, clients can specify a capability\nmask to only be notified of channels that satisfy a certain set of\ncapabilities.\n\nChangelog:\n* removed DMA_TX_ARRAY_INIT, no longer needed\n* dma_client_chan_free -\u003e dma_chan_release: switch to global reference\n  counting only at device unregistration time, before it was also happening\n  at client unregistration time\n* clients now return dma_state_client to dmaengine (ack, dup, nak)\n* checkpatch.pl fixes\n* fixup merge with git-ioat\n\nCc: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: Shannon Nelson \u003cshannon.nelson@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dc690d8ef842b464f1c429a376ca16cb8dbee6ae",
      "tree": "77955849af5a15755f5e55e24ae4b9c520583a72",
      "parents": [
        "57399ec9077a4b962b81037aaa279fab52f5e989",
        "91a6902958f052358899f58683d44e36228d85c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 12 13:40:20 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 12 13:40:20 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6: (61 commits)\n  sysfs: add parameter \"struct bin_attribute *\" in .read/.write methods for sysfs binary attributes\n  sysfs: make directory dentries and inodes reclaimable\n  sysfs: implement sysfs_get_dentry()\n  sysfs: move sysfs_drop_dentry() to dir.c and make it static\n  sysfs: restructure add/remove paths and fix inode update\n  sysfs: use sysfs_mutex to protect the sysfs_dirent tree\n  sysfs: consolidate sysfs spinlocks\n  sysfs: make kobj point to sysfs_dirent instead of dentry\n  sysfs: implement sysfs_find_dirent() and sysfs_get_dirent()\n  sysfs: implement SYSFS_FLAG_REMOVED flag\n  sysfs: rename sysfs_dirent-\u003es_type to s_flags and make room for flags\n  sysfs: make sysfs_drop_dentry() access inodes using ilookup()\n  sysfs: Fix oops in sysfs_drop_dentry on x86_64\n  sysfs: use singly-linked list for sysfs_dirent tree\n  sysfs: slim down sysfs_dirent-\u003es_active\n  sysfs: move s_active functions to fs/sysfs/dir.c\n  sysfs: fix root sysfs_dirent -\u003e root dentry association\n  sysfs: use iget_locked() instead of new_inode()\n  sysfs: reorganize sysfs_new_indoe() and sysfs_create()\n  sysfs: fix parent refcounting during rename and move\n  ...\n"
    },
    {
      "commit": "63fc33ceb0ccc08b3f62d7bfe56a33eb33ca9427",
      "tree": "6fb60af08616b2f4065cdd74b83f43c819f1853c",
      "parents": [
        "5628221caf88e2a052782b042e12da7cd34111b0"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@gentoo.org",
        "time": "Tue Jul 10 19:32:11 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:26 2007 -0400"
      },
      "message": "[PATCH] mac80211: improved 802.11g CTS protection\n\nCurrently, CTS protection is partially implemented twice:\n 1. via prism2 ioctls, only used by hostapd\n 2. via STA beacon parsing, recorded in sta.use_protection but never used\n    (other than printed in debugfs)\n\nProtection control should be implemented on a per-subif basis. For example,\na single physical device may be running a soft AP on one channel, and a STA\non another. The AP interface should use protection based on what hostapd told\nit, and the STA interface should use protection based on beacon parsing.\nThese should operate independantly: one subif using protection should not\ninfluence the other.\n\nTo implement this, I moved the use_protection flag into ieee80211_sub_if_data\nand removed the device-global cts_protect_erp_frames flag.\n\nI also made the PRISM2_PARAM_CTS_PROTECT_ERP_FRAMES write operation only\navailable for AP interfaces, to avoid any possibility of the user messing with\nthe behaviour of a STA.\n\nSigned-off-by: Daniel Drake \u003cdsd@gentoo.org\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5628221caf88e2a052782b042e12da7cd34111b0",
      "tree": "b4dbee3be1aa2b39e3d4c6f384b28d07740465fd",
      "parents": [
        "1fd5e589d8c7d3cd42ddd39358338766cfcedec8"
      ],
      "author": {
        "name": "Daniel Drake",
        "email": "dsd@gentoo.org",
        "time": "Tue Jul 10 19:32:10 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:26 2007 -0400"
      },
      "message": "[PATCH] mac80211: ERP IE handling improvements\n\nThe \"protection needed\" flag is currently parsed out of the ERP IE in\nbeacons. This patch allows the ERP IE to be available at assocation time\nand causes the appropriate actions to be performed earlier.\n\nIt is slightly complicated by the fact that most APs don\u0027t include the\nERP IE in association responses. To work around this, we store ERP\nvalues in the ieee80211_sta_bss structure.\n\nAlso added some WLAN_ERP defines for use by upcoming patches.\n\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1fd5e589d8c7d3cd42ddd39358338766cfcedec8",
      "tree": "10158cea9fdca493c16f2f4790b6488091254731",
      "parents": [
        "4480f15ca62a595248d6d8e2b3e75052113cde59"
      ],
      "author": {
        "name": "Larry Finger",
        "email": "Larry.Finger@lwfinger.net",
        "time": "Tue Jul 10 19:32:10 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:26 2007 -0400"
      },
      "message": "[PATCH] mac80211: Implementation of SIOCSIWRATE\n\nThe WEXT ioctl SIOCSIWRATE is not implemented in mac80211. This patch\nadds the missing routine. It supports the \u0027auto\u0027 keyword, fixed rates,\nand the combination of \u0027auto\u0027 and a fixed rate to select an upper bound.\n\nBased on the patch from Mohamed Abbas \u003cmabbas@linux.intel.com\u003e.\n\nSigned-off-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4480f15ca62a595248d6d8e2b3e75052113cde59",
      "tree": "fec2e3536bbe508a6a5de4a1e14d0c0ac904836f",
      "parents": [
        "5558235c6bade6662e6f257a35f2dfdc8a742147"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:10 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:26 2007 -0400"
      },
      "message": "[PATCH] mac80211: clarify some mac80211 things\n\nThe semantics of not having an add_interface callback are not well\ndefined, this callback is required because otherwise you cannot obtain\nthe requested MAC address of the device. Change the documentation to\nreflect this, add a note about having no MAC address at all, add a\nwarning that mac_addr in struct ieee80211_if_init_conf can be NULL and\nfinally verify that a few callbacks are assigned by way of BUG_ON()\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5558235c6bade6662e6f257a35f2dfdc8a742147",
      "tree": "1e27576a4185fc9ef9948ec104787941f5565809",
      "parents": [
        "191b92666e3a8aa52af84e2d03350c25145be695"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:09 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: conserve stack space due to padding\n\nThis patch reorders some fields in struct ieee802_11_elems to save 17*7\nor 17*3 bytes (on 64/32-bit machines respectively) stack space in a few\nfunctions.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "191b92666e3a8aa52af84e2d03350c25145be695",
      "tree": "4f0db30cb2d2e4cc4aa8ef2fb9124a39e95bffa4",
      "parents": [
        "fda6cc7ac45f97d4d40cc42781041dec488fa78c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:09 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: kill PRISM2_PARAM_CLEAR_KEYS\n\nNot used anywhere, hence dead code. wpa_supplicant has its\nown clear_keys routine.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fda6cc7ac45f97d4d40cc42781041dec488fa78c",
      "tree": "dcb49dd5b16004c65c016a28bec485e0e413df63",
      "parents": [
        "9771f740c6319e67bab44d18b9717c894a6f266d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:09 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: remove PRISM2_PARAM_DROP_UNENCRYPTED ioctl\n\nInterestingly, wpa_supplicant doesn\u0027t use it, but uses the\ncurrently unsupported IW_AUTH_DROP_UNENCRYPTED. So I guess\nit doesn\u0027t matter anyway.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9771f740c6319e67bab44d18b9717c894a6f266d",
      "tree": "e7f3e2866c8fc25928eed995fc99512330a186c8",
      "parents": [
        "3ef8bed4692a0de6a47d162196c850c5dea85b70"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:09 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: kill antenna select ioctls\n\nNot used anywhere.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3ef8bed4692a0de6a47d162196c850c5dea85b70",
      "tree": "69aee2bb1eee824449dc74e9427248e4806661d0",
      "parents": [
        "40f7cac9f8dd662c1dd02334afdceef0be03e34f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:09 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: kill rate control ioctls\n\nThese aren\u0027t used anywhere (hostapd, wpa_supplicant) and until we\nhave a proper interface to the rate control algorithms they don\u0027t\nmake much sense either since e.g. rc80211_lowest won\u0027t honour them.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "40f7cac9f8dd662c1dd02334afdceef0be03e34f",
      "tree": "6c8cedbfa99b67305d1b845d7a140a0a185981a6",
      "parents": [
        "333af2f0715c8d4d38cb657d8f4fb7c4e3ceba9f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:08 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: separate monitor/subif_start_xmit\n\nThis patch separates the monitor interface start_xmit from the\nsubif start xmit (those other devices have 802.3 framing, monitor\ninterfaces have radiotap framing)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "333af2f0715c8d4d38cb657d8f4fb7c4e3ceba9f",
      "tree": "88dbcd33da19e837f1d1904a609aec05a65a7ded",
      "parents": [
        "c59304b5e07128816347fe3996d7952561f60529"
      ],
      "author": {
        "name": "Hong Liu",
        "email": "hong.liu@intel.com",
        "time": "Tue Jul 10 19:32:08 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: add support for iwlist channel\n\nAdd supported channels info in SIOCGIWRANGE implementation.\n\nSigned-off-by: Hong Liu \u003chong.liu@intel.com\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c59304b5e07128816347fe3996d7952561f60529",
      "tree": "ed36d08fb9503534fa28e4a04b16cf72196a2d39",
      "parents": [
        "7f8c05982865a32ee001b79ee0bd469f55ac8aba"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:08 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:25 2007 -0400"
      },
      "message": "[PATCH] mac80211: remove ieee80211_set_aid_for_sta\n\nRemove ieee80211_set_aid_for_sta and associated code.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7f8c05982865a32ee001b79ee0bd469f55ac8aba",
      "tree": "099ce5fb09d701b4f3f75af1f06aec68f998a5ed",
      "parents": [
        "b306f45300866adc01b84f7aa083bfcd9cbb89c4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:08 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:24 2007 -0400"
      },
      "message": "[PATCH] mac80211: remove ieee80211_msg_passive_scan\n\nThis constant is unused.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b306f45300866adc01b84f7aa083bfcd9cbb89c4",
      "tree": "8e8a49b9687377ef7d42a383b66bd61f3b50519d",
      "parents": [
        "e4c967c6d88ca94365dd8e2a7bbd22eedb8d7ae7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 10 19:32:08 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:24 2007 -0400"
      },
      "message": "[PATCH] mac80211: show transmitted frames on monitor interfaces\n\nThis patch makes mac80211 show transmitted frames on monitor interfaces,\nincluding radiotap headers that indicate some transmission parameters.\nThe shown parameters will need to be expanded, but this should work as\na basis to work from.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e4c967c6d88ca94365dd8e2a7bbd22eedb8d7ae7",
      "tree": "ae6e1d6335018c2540b5fd58c679e4bdd5c05dfd",
      "parents": [
        "179f831bc33104d14deb54a52b7a8b43433f8ccc"
      ],
      "author": {
        "name": "Andy Green",
        "email": "andy@warmcat.com",
        "time": "Tue Jul 10 19:32:07 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:24 2007 -0400"
      },
      "message": "[PATCH] mac80211: Monitor mode radiotap-based packet injection\n\nSigned-off-by: Andy Green \u003candy@warmcat.com\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "179f831bc33104d14deb54a52b7a8b43433f8ccc",
      "tree": "8834c628a493fbd4aff1e09dc77b334154c6a050",
      "parents": [
        "08d1f2155cd5b21bb3848f46d9747afb1ccd249d"
      ],
      "author": {
        "name": "Andy Green",
        "email": "andy@warmcat.com",
        "time": "Tue Jul 10 19:29:38 2007 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jul 12 16:07:24 2007 -0400"
      },
      "message": "[PATCH] cfg80211: Radiotap parser\n\nGeneric code to walk through the fields in a radiotap header, accounting\nfor nasties like extended \"field present\" bitfields and alignment rules\n\nSigned-off-by: Andy Green \u003candy@warmcat.com\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "db3d99c090e0cdb34b1274767e062bfddbb384bc",
      "tree": "9130391307ac77b7f458db5d3994309df6c9877b",
      "parents": [
        "662ad4f8efd3ba2ed710d36003f968b500e6f123"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 11 19:46:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:46:26 2007 -0700"
      },
      "message": "[NET_SCHED]: ematch: module autoloading\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "662ad4f8efd3ba2ed710d36003f968b500e6f123",
      "tree": "925ca3708b8e4d7c958ef8aec45014caa6f0c550",
      "parents": [
        "0e06877c6fdbc67b1132be895f995acd1ff30135"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Jul 11 19:43:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 11 19:45:39 2007 -0700"
      },
      "message": "[TCP]: tcp probe wraparound handling and other changes\n\nSwitch from formatting messages in probe routine and copying with\nkfifo, to using a small circular queue of information and formatting\non read.  This avoids wraparound issues with kfifo, and saves one\ncopy.\n\nAlso make sure to state correct license, rather than copying off some\nother driver I started with.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e06877c6fdbc67b1132be895f995acd1ff30135",
      "tree": "ddaba8cddc8a95d23ee18f812c6aba67dd9b1c6f",
      "parents": [
        "2d85cba2b272a5201a60966a65a4f8c0bcc0bb71"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 11 19:42:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 11 19:45:36 2007 -0700"
      },
      "message": "[RTNETLINK]: rtnl_link: allow specifying initial device address\n\nDrivers need to validate the initial addresses in their netlink attribute\nvalidation function or manually reject them if they can\u0027t support this.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2d85cba2b272a5201a60966a65a4f8c0bcc0bb71",
      "tree": "f8dd1ca6d7c963eade714a4ecc7aec4d7751f55a",
      "parents": [
        "8c979c26a0f093c13290320edda799d8335e50ae"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 11 19:42:13 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 11 19:45:33 2007 -0700"
      },
      "message": "[RTNETLINK]: rtnl_link API simplification\n\nAll drivers need to unregister their devices in the module unload function.\nWhile doing so they must hold the rtnl and atomically unregister the\nrtnl_link ops as well. This makes the rtnl_link_unregister function that\ntakes the rtnl itself completely useless.\n\nProvide default newlink/dellink functions, make __rtnl_link_unregister and\nrtnl_link_unregister unregister all devices with matching rtnl_link_ops and\nchange the existing users to take advantage of that.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c979c26a0f093c13290320edda799d8335e50ae",
      "tree": "3189e5568583a794aff9d014898ff9a74b79d7cc",
      "parents": [
        "71bffe556c59a7865bf0b1ecd94530f1e296cdb0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 11 19:45:24 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:45:24 2007 -0700"
      },
      "message": "[VLAN]: Fix MAC address handling\n\nThe VLAN MAC address handling is broken in multiple ways. When the address\ndiffers when setting it, the real device is put in promiscous mode twice,\nbut never taken out again. Additionally it doesn\u0027t resync when the real\ndevice\u0027s address is changed and needlessly puts it in promiscous mode when\nthe vlan device is still down.\n\nFix by moving address handling to vlan_dev_open/vlan_dev_stop and properly\ndeal with address changes in the device notifier. Also switch to\ndev_unicast_add (which needs the exact same handling).\n\nSince the set_mac_address handler is identical to the generic ethernet one\nwith these changes, kill it and use ether_setup().\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "71bffe556c59a7865bf0b1ecd94530f1e296cdb0",
      "tree": "936bca47c59179b81b2a0ddd7ef731a196aeb97d",
      "parents": [
        "50b65cc6fa3a69bdfbc8b3342d8ca6ddbbf5ec88"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Jul 11 19:41:18 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:41:18 2007 -0700"
      },
      "message": "[ETH]: Validate address in eth_mac_addr\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50b65cc6fa3a69bdfbc8b3342d8ca6ddbbf5ec88",
      "tree": "12d6cd90cc58808fb78986116502dac82df4f512",
      "parents": [
        "29578624e354f56143d92510fff33a8b2aaa2c03",
        "5b7f990927fe87ad3bec762a33c0e72bcbf6841e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 11 19:37:40 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Jul 11 19:37:40 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6\n"
    },
    {
      "commit": "29578624e354f56143d92510fff33a8b2aaa2c03",
      "tree": "67d0f28264dbeacedde4882f1e76157894ba33ba",
      "parents": [
        "1fd05ba5a2f2aa8e7b9b52ef55df850e2e7d54c9"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "olaf.kirch@oracle.com",
        "time": "Wed Jul 11 19:32:02 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 19:32:02 2007 -0700"
      },
      "message": "[NET]: Fix races in net_rx_action vs netpoll.\n\nKeep netpoll/poll_napi from messing with the poll_list.\nOnly net_rx_action is allowed to manipulate the list.\n\nSigned-off-by: Olaf Kirch \u003colaf.kirch@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e00c5d8b4d800b95b72b3f072e1d55d7c7034702",
      "tree": "737ffff95a250bcb344de7263e059eeb0df97678",
      "parents": [
        "2b1244a43be97f504494b557a7f7a65fe0d00dba"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 08 09:57:36 2007 -0800"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jul 11 16:10:53 2007 -0700"
      },
      "message": "I/OAT: warning fix\nnet/ipv4/tcp.c: In function \u0027tcp_recvmsg\u0027:\nnet/ipv4/tcp.c:1111: warning: unused variable \u0027available\u0027\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\n"
    },
    {
      "commit": "2b1244a43be97f504494b557a7f7a65fe0d00dba",
      "tree": "d3be36597917dbbae664fc6eb97dbe876c5e44e3",
      "parents": [
        "72d0b7a81d60f5e64ee7197bc190b9b3265f99dd"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Thu Mar 08 09:57:36 2007 -0800"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jul 11 16:10:53 2007 -0700"
      },
      "message": "I/OAT: Only offload copies for TCP when there will be a context switch\nThe performance wins come with having the DMA copy engine doing the copies\nin parallel with the context switch.  If there is enough data ready on the\nsocket at recv time just use a regular copy.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\n"
    },
    {
      "commit": "91a6902958f052358899f58683d44e36228d85c2",
      "tree": "a713792cf3bb09bdbd2ac6906aa44b3da3e49250",
      "parents": [
        "51225039f3cf9d250596d1344494b293274b9169"
      ],
      "author": {
        "name": "Zhang Rui",
        "email": "rui.zhang@intel.com",
        "time": "Sat Jun 09 13:57:22 2007 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 11 16:09:09 2007 -0700"
      },
      "message": "sysfs: add parameter \"struct bin_attribute *\" in .read/.write methods for sysfs binary attributes\n\nWell, first of all, I don\u0027t want to change so many files either.\n\nWhat I do:\nAdding a new parameter \"struct bin_attribute *\" in the\n.read/.write methods for the sysfs binary attributes.\n\nIn fact, only the four lines change in fs/sysfs/bin.c and\ninclude/linux/sysfs.h do the real work.\nBut I have to update all the files that use binary attributes\nto make them compatible with the new .read and .write methods.\nI\u0027m not sure if I missed any. :(\n\nWhy I do this:\nFor a sysfs attribute, we can get a pointer pointing to the\nstruct attribute in the .show/.store method,\nwhile we can\u0027t do this for the binary attributes.\nI don\u0027t know why this is different, but this does make it not\nso handy to use the binary attributes as the regular ones.\nSo I think this patch is reasonable. :)\n\nWho benefits from it:\nThe patch that exposes ACPI tables in sysfs\nrequires such an improvement.\nAll the table binary attributes share the same .read method.\nParameter \"struct bin_attribute *\" is used to get\nthe table signature and instance number which are used to\ndistinguish different ACPI table binary attributes.\n\nWithout this parameter, we need to offer different .read methods\nfor different ACPI table binary attributes.\nThis is impossible as there are various ACPI tables on different\nplatforms, and we don\u0027t know what they are until they are loaded.\n\nSigned-off-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7b595756ec1f49e0049a9e01a1298d53a7faaa15",
      "tree": "cd06687ab3e5c7a5a4ef91903dff207a18c4db76",
      "parents": [
        "dbde0fcf9f8f6d477af3c32d9979e789ee680cde"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Thu Jun 14 03:45:17 2007 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Jul 11 16:09:06 2007 -0700"
      },
      "message": "sysfs: kill unnecessary attribute-\u003eowner\n\nsysfs is now completely out of driver/module lifetime game.  After\ndeletion, a sysfs node doesn\u0027t access anything outside sysfs proper,\nso there\u0027s no reason to hold onto the attribute owners.  Note that\noften the wrong modules were accounted for as owners leading to\naccessing removed modules.\n\nThis patch kills now unnecessary attribute-\u003eowner.  Note that with\nthis change, userland holding a sysfs node does not prevent the\nbacking module from being unloaded.\n\nFor more info regarding lifetime rule cleanup, please read the\nfollowing message.\n\n  http://article.gmane.org/gmane.linux.kernel/510293\n\n(tweaked by Greg to not delete the field just yet, to make it easier to\nmerge things properly.)\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1fd05ba5a2f2aa8e7b9b52ef55df850e2e7d54c9",
      "tree": "3403194403ab25f1f7a360a002adf63be2b4e9b0",
      "parents": [
        "99d24edeb6abc6ca3a0d0fbdb83c664c04403c8c"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "mszeredi@suse.cz",
        "time": "Wed Jul 11 14:22:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 11 14:22:39 2007 -0700"
      },
      "message": "[AF_UNIX]: Rewrite garbage collector, fixes race.\n\nThrow out the old mark \u0026 sweep garbage collector and put in a\nrefcounting cycle detecting one.\n\nThe old one had a race with recvmsg, that resulted in false positives\nand hence data loss.  The old algorithm operated on all unix sockets\nin the system, so any additional locking would have meant performance\nproblems for all users of these.\n\nThe new algorithm instead only operates on \"in flight\" sockets, which\nare very rare, and the additional locking for these doesn\u0027t negatively\nimpact the vast majority of users.\n\nIn fact it\u0027s probable, that there weren\u0027t *any* heavy senders of\nsockets over sockets, otherwise the above race would have been\ndiscovered long ago.\n\nThe patch works OK with the app that exposed the race with the old\ncode.  The garbage collection has also been verified to work in a few\nsimple cases.\n\nSigned-off-by: Miklos Szeredi \u003cmszeredi@suse.cz\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99d24edeb6abc6ca3a0d0fbdb83c664c04403c8c",
      "tree": "1ddcd854dd106878c4e7fcc55147131a137d4aca",
      "parents": [
        "56b3d975bbce65f655c5612b4822da671f9fd9b2"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 10 23:24:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:24:52 2007 -0700"
      },
      "message": "[NETFILTER]: {ip, nf}_conntrack_sctp: fix remotely triggerable NULL ptr dereference (CVE-2007-2876)\n\nWhen creating a new connection by sending an unknown chunk type, we\ndon\u0027t transition to a valid state, causing a NULL pointer dereference\nin sctp_packet when accessing sctp_timeouts[SCTP_CONNTRACK_NONE].\n\nFix by don\u0027t creating new conntrack entry if initial state is invalid.\n\nNoticed by Vilmos Nebehaj \u003cvilmos.nebehaj@ramsys.hu\u003e\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56b3d975bbce65f655c5612b4822da671f9fd9b2",
      "tree": "7e29d70405d9c8e28ddee3b03a07157477fc780f",
      "parents": [
        "3be550f34b03e5eb762f74d447ebbeba97efbd6d"
      ],
      "author": {
        "name": "Philippe De Muyter",
        "email": "phdm@macqel.be",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:07:31 2007 -0700"
      },
      "message": "[NET]: Make all initialized struct seq_operations const.\n\nMake all initialized struct seq_operations in net/ const\n\nSigned-off-by: Philippe De Muyter \u003cphdm@macqel.be\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3be550f34b03e5eb762f74d447ebbeba97efbd6d",
      "tree": "07881880089af5f9d8dbea1444f09e34a0100ef1",
      "parents": [
        "dffe4f048b420f1af0b10a6090add0c5ea69e585"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 10 23:06:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:06:43 2007 -0700"
      },
      "message": "[UDP]: Fix length check.\n\nRémi Denis-Courmont wrote:\n\u003e Right. By the way, shouldn\u0027t \"len\" rather be signed in there?\n\u003e \n\u003e \t\tunsigned int len;\n\u003e \n\u003e \t\t/* if we\u0027re overly short, let UDP handle it */\n\u003e \t\tlen \u003d skb-\u003elen - sizeof(struct udphdr);\n\u003e \t\tif (len \u003c\u003d 0)\n\u003e \t\t\tgoto udp;\n\nIt should, but the \u003c 0 case can\u0027t happen since __udp4_lib_rcv\nalready makes sure that we have at least a complete UDP header.\n\nAnyways, this patch fixes it.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dffe4f048b420f1af0b10a6090add0c5ea69e585",
      "tree": "9229870705d35aaf0190521514e865625844a5e3",
      "parents": [
        "ed8b548ce3cb988f59a0fd9af6ccdc4f8198cd19"
      ],
      "author": {
        "name": "Micah Gruber",
        "email": "micah.gruber@gmail.com",
        "time": "Tue Jul 10 23:04:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:04:19 2007 -0700"
      },
      "message": "[IPV6]: Remove unneeded pointer idev from addrconf_cleanup().\n\nThis trivial patch removes the unneeded pointer idev returned from\n__in6_dev_get(), which is never used. The check for NULL can be simply\ndone by if (__in6_dev_get(dev) \u003d\u003d NULL).\n\nSigned-off-by: Micah Gruber \u003cmicah.gruber@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c752098f529f41abfc985426a3eca0f2cb96676",
      "tree": "038e2f0c488619ff1cd7d278d393852ea7202f6a",
      "parents": [
        "bb4dbf9e61d0801927e7df2569bb3dd8287ea301"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed May 23 13:28:48 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:56:31 2007 -0700"
      },
      "message": "[IPV6]: Make IPV6_{RECV,2292}RTHDR boolean options.\n\nBecause reversing RH0 is no longer supported by deprecation\nof RH0, let\u0027s make IPV6_{RECV,2292}RTHDR boolean options.\nBoolean are more appropriate from standard POV.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb4dbf9e61d0801927e7df2569bb3dd8287ea301",
      "tree": "62d0878b6128fbed608bdee342e705fd371c78cd",
      "parents": [
        "c382bb9d32a55029fb13b118858e25908fab4617"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Jul 10 22:55:49 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:55:49 2007 -0700"
      },
      "message": "[IPV6]: Do not send RH0 anymore.\n\nBased on \u003cdraft-ietf-ipv6-deprecate-rh0-00.txt\u003e.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c382bb9d32a55029fb13b118858e25908fab4617",
      "tree": "0a7466b0e27ec88d27af579393d26df80c38a35e",
      "parents": [
        "c9726d6890f7f3a892c879e067c3ed839f61e745"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Jul 10 22:47:58 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:47:58 2007 -0700"
      },
      "message": "[IPV6]: Restore semantics of Routing Header processing.\n\nThe \"fix\" for emerging security threat was overkill and it broke\nbasic semantic of IPv6 routing header processing.  We should assume\nRT0 (or even RT2, depends on configuration) as \"unknown\" RH type so\nthat we\n- silently ignore the routing header if segleft \u003d\u003d 0\n- send ICMPv6 Parameter Problem message back to the sender,\n  otherwise.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c9726d6890f7f3a892c879e067c3ed839f61e745",
      "tree": "aaae7b138f7c409d62a1223742df38d79130acb4",
      "parents": [
        "c6c6e3e05c0b4349824efcdd36650e7be9d5c7c3"
      ],
      "author": {
        "name": "Ranjit Manomohan",
        "email": "ranjitm@google.com",
        "time": "Tue Jul 10 22:43:16 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:43:16 2007 -0700"
      },
      "message": "[NET_SCHED]: Make HTB scheduler work with TSO.\n\nCurrently the HTB scheduler does not correctly account for TSO packets\nwhich causes large inaccuracies in the bandwidth control when using TSO.\nThis patch allows the HTB scheduler to work with TSO enabled devices.\n\nSigned-off-by: Ranjit Manomohan \u003cranjitm@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5b7f990927fe87ad3bec762a33c0e72bcbf6841e",
      "tree": "1c9356fe04e235e938fa7a1a7a2c7a75bc124de0",
      "parents": [
        "8de0a15483b357d0f0b821330ec84d1660cadc4e"
      ],
      "author": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jul 11 09:51:55 2007 +0200"
      },
      "committer": {
        "name": "Marcel Holtmann",
        "email": "marcel@holtmann.org",
        "time": "Wed Jul 11 07:35:32 2007 +0200"
      },
      "message": "[Bluetooth] Add basics to better support and handle eSCO links\n\nTo better support and handle eSCO links in the future a bunch of\nconstants needs to be added and some basic routines need to be\nupdated. This is the initial step.\n\nSigned-off-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\n"
    },
    {
      "commit": "cfbba49d80be6cf8d3872b66fc5421f119843b36",
      "tree": "2e2a966d43b6cd80c2ae7c8d5e37ab4c8a0262ad",
      "parents": [
        "4839c52b01ca91be1c62761e08fb3deb3881e857"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 09 15:33:40 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:19:05 2007 -0700"
      },
      "message": "[NET]: Avoid copying writable clones in tunnel drivers\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4839c52b01ca91be1c62761e08fb3deb3881e857",
      "tree": "21bc1e568bc76b7556816d995fdf6b3304511eab",
      "parents": [
        "6b25d30bf112370a12d05c3c0fd43732985dab01"
      ],
      "author": {
        "name": "Philippe De Muyter",
        "email": "phdm@macqel.be",
        "time": "Mon Jul 09 15:32:57 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:19:04 2007 -0700"
      },
      "message": "[IPV4]: Make ip_tos2prio const.\n\nSigned-off-by: Philippe De Muyter \u003cphdm@macqel.be\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b25d30bf112370a12d05c3c0fd43732985dab01",
      "tree": "9739e7085a36283e3755ba33887457e4dd25206a",
      "parents": [
        "1498b3f1952ae539a7d5c356acf942d5f4c1aece"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Jul 09 15:30:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:19:03 2007 -0700"
      },
      "message": "[NET]: Fix gen_estimator timer removal race\n\nAs noticed by Jarek Poplawski \u003cjarkao2@o2.pl\u003e, the timer removal in\ngen_kill_estimator races with the timer function rearming the timer.\n\nCheck whether the timer list is empty before rearming the timer\nin the timer function to fix this.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Jarek Poplawski \u003cjarkao2@o2.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1498b3f1952ae539a7d5c356acf942d5f4c1aece",
      "tree": "70307da369971a106f817c47b0b9cf9d8e3d574f",
      "parents": [
        "5f1de3ec661e7b08348f565b7ca17586e7e94fc5"
      ],
      "author": {
        "name": "Satyam Sharma",
        "email": "ssatyam@cse.iitk.ac.in",
        "time": "Mon Jul 09 15:22:23 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:19:02 2007 -0700"
      },
      "message": "[NETPOLL]: Fix a leak-n-bug in netpoll_cleanup()\n\n93ec2c723e3f8a216dde2899aeb85c648672bc6b applied excessive duct tape to\nthe netpoll beast\u0027s netpoll_cleanup(), thus substituting one leak with\nanother, and opening up a little buglet :-)\n\nnet_device-\u003enpinfo (netpoll_info) is a shared and refcounted object and\ncannot simply be set NULL the first time netpoll_cleanup() is called.\nOtherwise, further netpoll_cleanup()\u0027s see np-\u003edev-\u003enpinfo \u003d\u003d NULL and\nbecome no-ops, thus leaking. And it\u0027s a bug too: the first call to\nnetpoll_cleanup() would thus (annoyingly) \"disable\" other (still alive)\nnetpolls too. Maybe nobody noticed this because netconsole (only user\nof netpoll) never supported multiple netpoll objects earlier.\n\nThis is a trivial and obvious one-line fixlet.\n\nSigned-off-by: Satyam Sharma \u003cssatyam@cse.iitk.ac.in\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5f1de3ec661e7b08348f565b7ca17586e7e94fc5",
      "tree": "d7568a57252a5bac38cf227c90e85928a9ef2e1f",
      "parents": [
        "0236e667e188af0336cd776e5b54c1f3fd19a03c"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Mon Jul 09 13:20:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:19:01 2007 -0700"
      },
      "message": "[RXRPC]: Remove Makefile reference to obsolete RXRPC config variable\n\nSince there is no Kconfig variable RXRPC anywhere in the tree, and the\nvariable AF_RXRPC performs exactly the same function, remove the\nreference to CONFIG_RXRPC from net/Makefile.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0236e667e188af0336cd776e5b54c1f3fd19a03c",
      "tree": "07a5e515b155ff3612bd1f15031ea6da9f06fe83",
      "parents": [
        "4fda25a2cd7a18e0ef9f29ba3dd6f6cd9b7ca43f"
      ],
      "author": {
        "name": "Dan Aloni",
        "email": "da-x@monatomic.org",
        "time": "Mon Jul 09 13:20:12 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:53 2007 -0700"
      },
      "message": "[NETFILTER] net/ipv4/netfilter/ip_tables.c: lower printk severity\n\nSigned-off-by: Dan Aloni \u003cda-x@monatomic.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fda25a2cd7a18e0ef9f29ba3dd6f6cd9b7ca43f",
      "tree": "ad9e55895315b49c7bcf43a949cb07c4e0c6a8ec",
      "parents": [
        "aa4291108f434a183207e645379414270118dccb"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jul 09 13:18:57 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:52 2007 -0700"
      },
      "message": "[DCCP]: Make struct dccp_li_cachep static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f11df8355e8f59f7572bf6ac1f63d692483b0c6",
      "tree": "953a9f37a6aa18e6086bbc346cf61ae38414ac2a",
      "parents": [
        "60f0438a87cfd9f5faa439ca419497cd64e4c59e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 09 13:16:00 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:50 2007 -0700"
      },
      "message": "[NET]: \"wrong timeout value in sk_wait_data()\": cleanups\n\n- save 4 bytes\n\n- it\u0027s read-mostly.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nAcked-by: Vasily Averin \u003cvvs@sw.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60f0438a87cfd9f5faa439ca419497cd64e4c59e",
      "tree": "8ab1a0bbe0ad19eafe3418dc0f3991d870b501c7",
      "parents": [
        "9af97186fcc9a1d9bbf195eb4bc2399d0dd66223"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Mon Jul 09 13:15:14 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:49 2007 -0700"
      },
      "message": "[NET]: Make some network-related proc files use seq_list_xxx helpers\n\nThis includes /proc/net/protocols, /proc/net/rxrpc_calls and\n/proc/net/rxrpc_connections files.\n\nAll three need seq_list_start_head to show some header.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9af97186fcc9a1d9bbf195eb4bc2399d0dd66223",
      "tree": "526a2be17c0464e6807efb196594bcb35843f23f",
      "parents": [
        "1c8c7d64169dc4b1ae3d8cd1bf35ea0a099b50ad"
      ],
      "author": {
        "name": "Pavel Emelianov",
        "email": "xemul@openvz.org",
        "time": "Mon Jul 09 13:12:24 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:48 2007 -0700"
      },
      "message": "[ATM] br2684: Use seq_list_xxx helpers\n\nThe .show callback receives the list_head pointer now, not the struct\nbr2684_dev one.\n\nSigned-off-by: Pavel Emelianov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5faf41535214b68c989a22302c8870f8758cbb8c",
      "tree": "00a39404ff44b222436290193101651fb7ceed24",
      "parents": [
        "585426fdc5b4cccaacf0afc8cf821ff763750ae8"
      ],
      "author": {
        "name": "Balazs Scheidler",
        "email": "bazsi@balabit.hu",
        "time": "Sat Jul 07 22:41:01 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:29 2007 -0700"
      },
      "message": "[NETFILTER]: x_tables: add more detail to error message about match/target mask mismatch\n\nSigned-off-by: Balazs Scheidler \u003cbazsi@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "585426fdc5b4cccaacf0afc8cf821ff763750ae8",
      "tree": "6dfaf7fc842003a33c89872cf6c1a96932c57f14",
      "parents": [
        "ce7663d84a87bb4e1743f62950bf7dceed723a13"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 07 22:40:26 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:28 2007 -0700"
      },
      "message": "[NETFILTER]: nf_queue: Use RCU and mutex for queue handlers\n\nQueue handlers are registered/unregistered in only process context.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce7663d84a87bb4e1743f62950bf7dceed723a13",
      "tree": "3c1b16e33913199da3181b92ed7dc0fbb6e0aa64",
      "parents": [
        "0d53778e81ac7af266dac8a20cc328328c327112"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Sat Jul 07 22:40:08 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:21 2007 -0700"
      },
      "message": "[NETFILTER]: nfnetlink_queue: don\u0027t unregister handler of other subsystem\n\nThe queue handlers registered by ip[6]_queue.ko at initialization should\nnot be unregistered according to requests from userland program\nusing nfnetlink_queue. If we allow that, there is no way to register\nthe handlers of built-in ip[6]_queue again.\n\nSigned-off-by: Yasuyuki Kozakai \u003cyasuyuki.kozakai@toshiba.co.jp\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d53778e81ac7af266dac8a20cc328328c327112",
      "tree": "034226154ea7c3466a31ef2d57b5a600d4a106e6",
      "parents": [
        "342b7e3c8a3c84252799c4ac4d9a604b8903d2b4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:39:38 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:20 2007 -0700"
      },
      "message": "[NETFILTER]: Convert DEBUGP to pr_debug\n\nConvert DEBUGP to pr_debug and fix lots of non-compiling debug statements.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "342b7e3c8a3c84252799c4ac4d9a604b8903d2b4",
      "tree": "c61ffbcbf24287df26a6dfc58684630289669c7f",
      "parents": [
        "91e8db80065d655ce1b6d74cadc921671e8d5285"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:39:16 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:19 2007 -0700"
      },
      "message": "[NETFILTER]: xt_helper: use RCU\n\nThe -\u003ehelper pointer is protected by RCU, no need to take\nnf_conntrack_lock. Also remove excessive debugging.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91e8db80065d655ce1b6d74cadc921671e8d5285",
      "tree": "c1368bd66a32c17cb7638082ca003ebf7461f63a",
      "parents": [
        "d3c3f4243e135b3d8c41d98be0cb2f54a4141abf"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:38:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:18 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_h323: turn some printks into DEBUGPs\n\nDon\u0027t spam the ringbuffer with decoding errors. The only printks remaining\nare for dropped packets when we\u0027re certain they are H.323.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3c3f4243e135b3d8c41d98be0cb2f54a4141abf",
      "tree": "082b4108551892eecffa8ce9dab555827540183d",
      "parents": [
        "3569b621ceba0a9cfb80e24c0bd19fd632ccee25"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:38:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:17 2007 -0700"
      },
      "message": "[NETFILTER]: ipt_CLUSTERIP: add compat code\n\nAdjust structure size and don\u0027t expect pointers passed in from\nuserspace to be valid. Also replace an enum in an ABI structure\nby a fixed size type.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3569b621ceba0a9cfb80e24c0bd19fd632ccee25",
      "tree": "becb6abd925950e4a57d98d3e42968c736a2def4",
      "parents": [
        "7ae7730fd6d98be1afe8ad9ea77813de607ec970"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:38:07 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:16 2007 -0700"
      },
      "message": "[NETFILTER]: ipt_SAME: add to feature-removal-schedule\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ae7730fd6d98be1afe8ad9ea77813de607ec970",
      "tree": "cb0cebe96de34a5d6116e4f76377e6ef4ca43547",
      "parents": [
        "ec59a1110aee6846adada8979915cacae64042ce"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:37:38 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:15 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: early_drop improvement\n\nWhen the maximum number of conntrack entries is reached and a new\none needs to be allocated, conntrack tries to drop an unassured\nconnection from the same hash bucket the new conntrack would hash\nto. Since with a properly sized hash the average number of entries\nper bucket is 1, the chances of actually finding one are not very\ngood. This patch makes it walk the hash until a minimum number of\n8 entries are checked.\n\nBased on patch by Vasily Averin \u003cvvs@sw.ru\u003e.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ec59a1110aee6846adada8979915cacae64042ce",
      "tree": "b4a19d1a84fd0f46e2f1f112f27ea716d819ff29",
      "parents": [
        "b8a7fe6c10511fce10b20efa163123f4041f2550"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:37:03 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:14 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: mark helpers __read_mostly\n\nMost are __read_mostly already, this changes the remaining ones.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8a7fe6c10511fce10b20efa163123f4041f2550",
      "tree": "a2e864f2dee638a08a02801320dc3700b4ed9cad",
      "parents": [
        "f264a7df08d50bb4a23be6a9aa06940e497ac1c4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:36:46 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:13 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_helper: use hashtable for conntrack helpers\n\nEliminate the last global list searched for every new connection.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f264a7df08d50bb4a23be6a9aa06940e497ac1c4",
      "tree": "c07c92616a50107c2dacc5836626d4b6a12c57ae",
      "parents": [
        "b560580a13b180bc1e3cad7ffbc93388cc39be5d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:36:24 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:12 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_expect: introduce nf_conntrack_expect_max sysct\n\nAs a last step of preventing DoS by creating lots of expectations, this\npatch introduces a global maximum and a sysctl to control it. The default\nis initialized to 4 * the expectation hash table size, which results in\n1/64 of the default maxmimum of conntracks.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b560580a13b180bc1e3cad7ffbc93388cc39be5d",
      "tree": "9ad6fd7a93c75ef4776239b4f43bde27737aa04b",
      "parents": [
        "31f15875c5ad98a13b528aaf19c839e22b43dc9a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:35:56 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:02 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_expect: maintain per conntrack expectation list\n\nThis patch brings back the per-conntrack expectation list that was\nremoved around 2.6.10 to avoid walking all expectations on expectation\neviction and conntrack destruction.\n\nAs these were the last users of the global expectation list, this patch\nalso kills that.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31f15875c5ad98a13b528aaf19c839e22b43dc9a",
      "tree": "3ede173710f42917ed228a2494af3b891a7ff4cf",
      "parents": [
        "5d08ad440feae11b8d6e7599147a8a20ac60f99a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:35:21 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:01 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_helper/nf_conntrack_netlink: convert to expectation hash\n\nConvert from the global expectation list to the hash table.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5d08ad440feae11b8d6e7599147a8a20ac60f99a",
      "tree": "41043588598c7dae1b1edecaac3764924f0cf3bf",
      "parents": [
        "a71c085562bcc99e8b711cab4222bff1f6e955da"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:34:07 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:00 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_expect: convert proc functions to hash\n\nConvert from the global expectation list to the hash table.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a71c085562bcc99e8b711cab4222bff1f6e955da",
      "tree": "7de563d406e8e9e44065b53c664f837f97f8b3fe",
      "parents": [
        "e9c1b084e17ca225b6be731b819308ee0f9e04b8"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:33:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:59 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: use hashtable for expectations\n\nCurrently all expectations are kept on a global list that\n\n- needs to be searched for every new conncetion\n- needs to be walked for evicting expectations when a master connection\n  has reached its limit\n- needs to be walked on connection destruction for connections that\n  have open expectations\n\nThis is obviously not good, especially when considering helpers like\nH.323 that register *lots* of expectations and can set up permanent\nexpectations, but it also allows for an easy DoS against firewalls\nusing connection tracking helpers.\n\nUse a hashtable for expectations to avoid incurring the search overhead\nfor every new connection. The default hash size is 1/256 of the conntrack\nhash table size, this can be overriden using a module parameter.\n\nThis patch only introduces the hash table for expectation lookups and\nkeeps other users to reduce the noise, the following patches will get\nrid of it completely.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e9c1b084e17ca225b6be731b819308ee0f9e04b8",
      "tree": "f2cb1ee43873b5c6bc6eb54a9b450f0409afcf05",
      "parents": [
        "cf6994c2b9812a9f02b99e89df411ffc5db9c779"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:32:53 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:58 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: move expectaton related init code to nf_conntrack_expect.c\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf6994c2b9812a9f02b99e89df411ffc5db9c779",
      "tree": "60cd51886db3d35080c6eea8b4b5ba437293bb42",
      "parents": [
        "4e1d4e6c5a448bd114e0cef6311c974cb7c7385e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:32:34 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:57 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_netlink: sync expectation dumping with conntrack table dumping\n\nResync expectation table dumping code with conntrack dumping: don\u0027t\nrely on the unique ID anymore since that requires to walk the list\nbackwards, which doesn\u0027t work with the upcoming conversion to hlists.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4e1d4e6c5a448bd114e0cef6311c974cb7c7385e",
      "tree": "aa785c5d14b7796de154872a754ae9e25df6650b",
      "parents": [
        "d4156e8cd93f5772483928aaf4960120caebd789"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:32:03 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:56 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_expect: avoid useless list walking\n\nDon\u0027t walk the list when unexpecting an expectation, we already\nhave a reference and the timer check is enough to guarantee\nthat it still is on the list.\n\nThis comment suggests that it was copied there by mistake from\nexpectation eviction:\n\n/* choose the oldest expectation to evict */\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d4156e8cd93f5772483928aaf4960120caebd789",
      "tree": "e740e629df29d8ea1ad21244998851362b64a70e",
      "parents": [
        "df43b4e7ca46952756b2fc039ed80469b1bff62d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:31:32 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:55 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack: reduce masks to a subset of tuples\n\nSince conntrack currently allows to use masks for every bit of both\nhelper and expectation tuples, we can\u0027t hash them and have to keep\nthem on two global lists that are searched for every new connection.\n\nThis patch removes the never used ability to use masks for the\ndestination part of the expectation tuple and completely removes\nmasks from helpers since the only reasonable choice is a full\nmatch on l3num, protonum and src.u.all.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df43b4e7ca46952756b2fc039ed80469b1bff62d",
      "tree": "84fed9a5fafb0dec8695985b1db150e9b879f9eb",
      "parents": [
        "6823645d608541c2c69e8a99454936e058c294e0"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:31:07 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:54 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_ftp: use nf_ct_expect_init\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6823645d608541c2c69e8a99454936e058c294e0",
      "tree": "e7b8b9200b4b03b7b787fc55f92c37c19076c225",
      "parents": [
        "53aba5979e1d964c0234816eda2316f1c2e7946d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:30:49 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:53 2007 -0700"
      },
      "message": "[NETFILTER]: nf_conntrack_expect: function naming unification\n\nCurrently there is a wild mix of nf_conntrack_expect_, nf_ct_exp_,\nexpect_, exp_, ...\n\nConsistently use nf_ct_ as prefix for exported functions.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53aba5979e1d964c0234816eda2316f1c2e7946d",
      "tree": "042b0528b82f119d2a452c0e2a448f1d4d04fb14",
      "parents": [
        "ac565e5fc104fe1842a87f2206fcfb7b6dda903d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sat Jul 07 22:30:27 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:17:43 2007 -0700"
      },
      "message": "[NETFILTER]: nf_nat: use hlists for bysource hash\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "ac565e5fc104fe1842a87f2206fcfb7b6dda903d"
}
