)]}'
{
  "log": [
    {
      "commit": "e3ec6cfc260e2322834e200c2fa349cdf104fd13",
      "tree": "997cfb56b22da747ff2e78acbb54e0bb694abee5",
      "parents": [
        "b22cecdd8fa4667ebab02def0866387e709927ee"
      ],
      "author": {
        "name": "Benjamin Thery",
        "email": "benjamin.thery@bull.net",
        "time": "Wed Nov 05 01:43:57 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 05 01:43:57 2008 -0800"
      },
      "message": "ipv6: fix run pending DAD when interface becomes ready\n\nWith some net devices types, an IPv6 address configured while the\ninterface was down can stay \u0027tentative\u0027 forever, even after the interface\nis set up. In some case, pending IPv6 DADs are not executed when the\ndevice becomes ready.\n\nI observed this while doing some tests with kvm. If I assign an IPv6 \naddress to my interface eth0 (kvm driver rtl8139) when it is still down\nthen the address is flagged tentative (IFA_F_TENTATIVE). Then, I set\neth0 up, and to my surprise, the address stays \u0027tentative\u0027, no DAD is\nexecuted and the address can\u0027t be pinged.\n\nI also observed the same behaviour, without kvm, with virtual interfaces\ntypes macvlan and veth.\n\nSome easy steps to reproduce the issue with macvlan:\n\n1. ip link add link eth0 type macvlan\n2. ip -6 addr add 2003::ab32/64 dev macvlan0\n3. ip addr show dev macvlan0\n   ... \n   inet6 2003::ab32/64 scope global tentative\n   ...\n4. ip link set macvlan0 up\n5. ip addr show dev macvlan0\n   ...\n   inet6 2003::ab32/64 scope global tentative\n   ...\n   Address is still tentative\n\nI think there\u0027s a bug in net/ipv6/addrconf.c, addrconf_notify():\naddrconf_dad_run() is not always run when the interface is flagged IF_READY.\nCurrently it is only run when receiving NETDEV_CHANGE event. Looks like\nsome (virtual) devices doesn\u0027t send this event when becoming up.\n\nFor both NETDEV_UP and NETDEV_CHANGE events, when the interface becomes\nready, run_pending should be set to 1. Patch below.\n\n\u0027run_pending \u003d 1\u0027 could be moved below the if/else block but it makes \nthe code less readable.\n\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79654a7698195fa043063092f5c1ca5245276fba",
      "tree": "28089eb142f4d67e241db0bf01990998e922c028",
      "parents": [
        "bbb770e7ab9a436752babfc8765e422d7481be1f"
      ],
      "author": {
        "name": "Andreas Steffen",
        "email": "andreas.steffen@strongswan.org",
        "time": "Tue Nov 04 14:49:19 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 04 14:49:19 2008 -0800"
      },
      "message": "xfrm: Have af-specific init_tempsel() initialize family field of temporary selector\n\nWhile adding MIGRATE support to strongSwan, Andreas Steffen noticed that\nthe selectors provided in XFRM_MSG_ACQUIRE have their family field\nuninitialized (those in MIGRATE do have their family set).\n\nLooking at the code, this is because the af-specific init_tempsel()\n(called via afinfo-\u003einit_tempsel() in xfrm_init_tempsel()) do not set\nthe value.\n\nReported-by: Andreas Steffen \u003candreas.steffen@strongswan.org\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Arnaud Ebalard \u003carno@natisbad.org\u003e\n"
    },
    {
      "commit": "0856f93958c488f0cc656be53c26dfd20663bdb3",
      "tree": "bba86ff48a9eef920fafde53127f7a3f5fc67bd1",
      "parents": [
        "f26ba1751145edbf52b2c89a40e389f2fbdfc1af"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sun Nov 02 16:14:27 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 02 23:52:46 2008 -0800"
      },
      "message": "udp: Fix the SNMP counter of UDP_MIB_INERRORS\n\nUDP packets received in udpv6_recvmsg() are not only IPv6 UDP packets, but\nalso have IPv4 UDP packets, so when do the counter of UDP_MIB_INERRORS in\nudpv6_recvmsg(), we should check whether the packet is a IPv6 UDP packet\nor a IPv4 UDP packet.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f26ba1751145edbf52b2c89a40e389f2fbdfc1af",
      "tree": "abb81ca460a07a99852f9c579d4c3324faacc801",
      "parents": [
        "70d9d15833864e7120c3ffcfdbd6fa61f5f9726a"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sun Nov 02 16:11:01 2008 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 02 23:52:45 2008 -0800"
      },
      "message": "udp: Fix the SNMP counter of UDP_MIB_INDATAGRAMS\n\nIf UDP echo is sent to xinetd/echo-dgram, the UDP reply will be received\nat the sender. But the SNMP counter of UDP_MIB_INDATAGRAMS will be not\nincreased, UDP6_MIB_INDATAGRAMS will be increased instead.\n\n  Endpoint A                      Endpoint B\n  UDP Echo request -----------\u003e\n  (IPv4, Dst port\u003d7)\n                   \u003c----------    UDP Echo Reply\n                                  (IPv4, Src port\u003d7)\n\nThis bug is come from this patch cb75994ec311b2cd50e5205efdcc0696abd6675d.\n\nIt do counter UDP[6]_MIB_INDATAGRAMS until udp[v6]_recvmsg. Because\nxinetd used IPv6 socket to receive UDP messages, thus, when received\nUDP packet, the UDP6_MIB_INDATAGRAMS will be increased in function\nudpv6_recvmsg() even if the packet is a IPv4 UDP packet.\n\nThis patch fixed the problem.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "920a46115ca3fa88990276d98520abab85495b2d",
      "tree": "a0960e925f2426da9766acfed2dbee144f30299c",
      "parents": [
        "d1a203eac0ec13cd1c0ba610fe7a55c9bc40473b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Nov 01 21:22:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Nov 01 21:22:23 2008 -0700"
      },
      "message": "udp: multicast packets need to check namespace\n\nCurrent UDP multicast delivery is not namespace aware.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5fdf11283e26719543eb5f9b68707e1af77eb875",
      "tree": "2d9a3fe6909e013c0bd2f5fc4c5bf5996eff7b19",
      "parents": [
        "2be508d847392e431759e370d21cea9412848758",
        "fdc9314cbe027281b5440780692105d49b53cf2c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 09:06:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 09:06:35 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:\n  netfilter: replace old NF_ARP calls with NFPROTO_ARP\n  netfilter: fix compilation error with NAT\u003dn\n  netfilter: xt_recent: use proc_create_data()\n  netfilter: snmp nat leaks memory in case of failure\n  netfilter: xt_iprange: fix range inversion match\n  netfilter: netns: use NFPROTO_NUMPROTO instead of NUMPROTO for tables array\n  netfilter: ctnetlink: remove obsolete NAT dependency from Kconfig\n  pkt_sched: sch_generic: Fix oops in sch_teql\n  dccp: Port redirection support for DCCP\n  tcp: Fix IPv6 fallout from \u0027Port redirection support for TCP\u0027\n  netdev: change name dropping error codes\n  ipvs: Update CONFIG_IP_VS_IPV6 description and help text\n"
    },
    {
      "commit": "fd5070370c74c32b7a98090eabb46c53baf41733",
      "tree": "092e6455cfc71285ca634331b81ffff8c03c4413",
      "parents": [
        "92845ffd2a221f9f90b064ac55bb010bf27a193f"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Sun Oct 19 23:35:58 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Oct 19 23:35:58 2008 -0700"
      },
      "message": "tcp: Fix IPv6 fallout from \u0027Port redirection support for TCP\u0027\n\n\u0027tcp: Port redirection support for TCP\u0027 (a3116ac5c) added a new member\nto inet_request_sock() which inet_csk_clone() makes use of but failed\nto add proper initialization to the IPv6 syncookie code and missed a\ncouple of places where the new member should be used instead of\ninet_sk(sk)-\u003esport.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb23832e3987a02428a274c8f259336f706b17e9",
      "tree": "0ab4c8aeafacaed9a4261f4ad46fdbe04121df8c",
      "parents": [
        "8ef50901d3c619127858b7d7f614fcab45e09d6b",
        "8fa0b315fc0c1a414da1371f1fc39523a657c192"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:26:26 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:26:26 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (26 commits)\n  decnet: Fix compiler warning in dn_dev.c\n  IPV6: Fix default gateway criteria wrt. HIGH/LOW preference radv option\n  net/802/fc.c: Fix compilation warnings\n  netns: correct mib stats in ip6_route_me_harder()\n  netns: fix net_generic array leak\n  rt2x00: fix regression introduced by \"mac80211: free up 2 bytes in skb-\u003ecb\"\n  rtl8187: Add USB ID for Belkin F5D7050 with RTL8187B chip\n  p54usb: Device ID updates\n  mac80211: fixme for kernel-doc\n  ath9k/mac80211: disallow fragmentation in ath9k, report to userspace\n  libertas : Remove unused variable warning for \"old_channel\" from cmd.c\n  mac80211: Fix scan RX processing oops\n  orinoco: fix unsafe locking in spectrum_cs_suspend\n  orinoco: fix unsafe locking in orinoco_cs_resume\n  cfg80211: fix debugfs error handling\n  mac80211: fix debugfs netdev rename\n  iwlwifi: fix ct kill configuration for 5350\n  mac80211: fix HT information element parsing\n  p54: Fix compilation problem on PPC\n  mac80211: fix debugfs lockup\n  ...\n"
    },
    {
      "commit": "f221e726bf4e082a05dcd573379ac859bfba7126",
      "tree": "a05f674caac693dc9aec7e46dd06115389f7ece3",
      "parents": [
        "f40cbaa5b0a4719489e6e7947351c99a159aca30"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 15 22:04:23 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:47 2008 -0700"
      },
      "message": "sysctl: simplify -\u003estrategy\n\nname and nlen parameters passed to -\u003estrategy hook are unused, remove\nthem.  In general -\u003estrategy hook should know what it\u0027s doing, and don\u0027t\ndo something tricky for which, say, pointer to original userspace array\nmay be needed (name).\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [ networking bits ]\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22441cfa0c70dcd457f3c081fcf285c3bd155824",
      "tree": "c313183f0b7a9c3736d5b042f8e97780d7670609",
      "parents": [
        "deb28d9bc4bb6922c1f7e459744d7b2d0db3a1d2"
      ],
      "author": {
        "name": "Pedro Ribeiro",
        "email": "pribeiro@net.ipl.pt",
        "time": "Wed Oct 15 15:47:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 15 16:03:01 2008 -0700"
      },
      "message": "IPV6: Fix default gateway criteria wrt. HIGH/LOW preference radv option\n\nProblem observed:\n               In IPv6, in the presence of multiple routers candidates to\n               default gateway in one segment, each sending a different\n               value of preference, the Linux hosts connected to the\n               segment weren\u0027t selecting the right one in all the\n               combinations possible of LOW/MEDIUM/HIGH preference.\n\nThis patch changes two files:\ninclude/linux/icmpv6.h\n               Get the \"router_pref\" bitfield in the right place\n               (as RFC4191 says), named the bit left with this fix as\n               \"home_agent\" (RFC3775 say that\u0027s his function)\n\nnet/ipv6/ndisc.c\n               Corrects the binary logic behind the updating of the\n               router preference in the flags of the routing table\n\nResult:\n               With this two fixes applied, the default route used by\n               the system was to consistent with the rules mentioned\n               in RFC4191 in case of changes in the value of preference\n               in router advertisements\n\nSigned-off-by: Pedro Ribeiro \u003cpribeiro@net.ipl.pt\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eef9d90dcde7bb4d029b67ed36457efc4970d5a2",
      "tree": "d58bd168acaa39834ff4f6c1ff94fa244fa3bdcc",
      "parents": [
        "4ef079ccc1d934c5f9966f2bfcd5dbbef8f7a0a7"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Tue Oct 14 22:55:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 14 22:55:21 2008 -0700"
      },
      "message": "netns: correct mib stats in ip6_route_me_harder()\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e7dc849494608fca7a7493c07eb190219c00d064",
      "tree": "851901f1f2651a7fb15c737ac43994d6f27fd92c",
      "parents": [
        "eb8a4cb6df3031de3c37c272c031b02ad58dcc67"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Oct 13 18:54:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 13 18:54:07 2008 -0700"
      },
      "message": "netns: mib6 section fixlet\n\n  LD      net/ipv6/ipv6.o\nWARNING: net/ipv6/ipv6.o(.text+0xd8): Section mismatch in reference from the function inet6_net_init() to the function .init.text:ipv6_init_mibs()\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fa3e5b4eb8261ae6ee27922881093db973e9d640",
      "tree": "1e3f2c168ca9154bfc5d43fea97b548c50c825b6",
      "parents": [
        "bb21c95e2d3325fcb53c591686dbbf4068a165bc"
      ],
      "author": {
        "name": "Guo-Fu Tseng",
        "email": "cooldavid@cooldavid.org",
        "time": "Thu Oct 09 21:11:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 09 21:11:56 2008 -0700"
      },
      "message": "tcpv6: fix error with CONFIG_TCP_MD5SIG disabled\n\nThis patch fix error with CONFIG_TCP_MD5SIG disabled.\n\nSigned-off-by: Guo-Fu Tseng \u003ccooldavid@cooldavid.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "626e264dd1989bdc98a5eaf2e059af4dba07ac4f",
      "tree": "200fe958b32d662a686ff597a9a3260af827767a",
      "parents": [
        "81ada62d70060023923f46ab666cdc2970e1e0ce"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Oct 09 14:42:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 09 14:42:40 2008 -0700"
      },
      "message": "tcpv6: combine tcp_v6_send_(reset|ack)\n\n$ codiff tcp_ipv6.o.old tcp_ipv6.o.new\nnet/ipv6/tcp_ipv6.c:\n  tcp_v6_md5_hash_hdr | -144\n  tcp_v6_send_ack     | -585\n  tcp_v6_send_reset   | -540\n 3 functions changed, 1269 bytes removed, diff: -1269\n\nnet/ipv6/tcp_ipv6.c:\n  tcp_v6_send_response | +791\n 1 function changed, 791 bytes added, diff: +791\n\ntcp_ipv6.o.new:\n 4 functions changed, 791 bytes added, 1269 bytes removed, diff: -478\n\nI choose to leave the reset related netns comment in place (not\nthe one that is killed) as I cannot understand its English so\nit\u0027s a bit hard for me to evaluate its usefulness :-).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81ada62d70060023923f46ab666cdc2970e1e0ce",
      "tree": "9ed51d05038619d237dbab98456c0e2ce85100df",
      "parents": [
        "77c676da1b717eed7239144fb539dfc4c7b78e04"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Oct 09 14:42:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 09 14:42:01 2008 -0700"
      },
      "message": "tcpv6: convert opt[] -\u003e topt in tcp_v6_send_reset\n\nafter this I get:\n\n$ diff-funcs tcp_v6_send_reset tcp_ipv6.c tcp_ipv6.c tcp_v6_send_ack\n --- tcp_ipv6.c:tcp_v6_send_reset()\n +++ tcp_ipv6.c:tcp_v6_send_ack()\n@@ -1,4 +1,5 @@\n-static void tcp_v6_send_reset(struct sock *sk, struct sk_buff *skb)\n+static void tcp_v6_send_ack(struct sk_buff *skb, u32 seq, u32 ack, u32 win,\nu32 ts,\n+                           struct tcp_md5sig_key *key)\n {\n        struct tcphdr *th \u003d tcp_hdr(skb), *t1;\n        struct sk_buff *buff;\n@@ -7,31 +8,14 @@\n        struct sock *ctl_sk \u003d net-\u003eipv6.tcp_sk;\n        unsigned int tot_len \u003d sizeof(struct tcphdr);\n        __be32 *topt;\n-#ifdef CONFIG_TCP_MD5SIG\n-       struct tcp_md5sig_key *key;\n-#endif\n-\n-       if (th-\u003erst)\n-               return;\n-\n-       if (!ipv6_unicast_destination(skb))\n-               return;\n\n+       if (ts)\n+               tot_len +\u003d TCPOLEN_TSTAMP_ALIGNED;\n #ifdef CONFIG_TCP_MD5SIG\n-       if (sk)\n-               key \u003d tcp_v6_md5_do_lookup(sk, \u0026ipv6_hdr(skb)-\u003edaddr);\n-       else\n-               key \u003d NULL;\n-\n        if (key)\n                tot_len +\u003d TCPOLEN_MD5SIG_ALIGNED;\n #endif\n\n-       /*\n-        * We need to grab some memory, and put together an RST,\n-        * and then put it into the queue to be sent.\n-        */\n-\n        buff \u003d alloc_skb(MAX_HEADER + sizeof(struct ipv6hdr) + tot_len,\n                         GFP_ATOMIC);\n        if (buff \u003d\u003d NULL)\n@@ -46,18 +30,20 @@\n        t1-\u003edest \u003d th-\u003esource;\n        t1-\u003esource \u003d th-\u003edest;\n        t1-\u003edoff \u003d tot_len / 4;\n-       t1-\u003erst \u003d 1;\n-\n-       if(th-\u003eack) {\n-               t1-\u003eseq \u003d th-\u003eack_seq;\n-       } else {\n-               t1-\u003eack \u003d 1;\n-               t1-\u003eack_seq \u003d htonl(ntohl(th-\u003eseq) + th-\u003esyn + th-\u003efin\n-                                   + skb-\u003elen - (th-\u003edoff\u003c\u003c2));\n-       }\n+       t1-\u003eseq \u003d htonl(seq);\n+       t1-\u003eack_seq \u003d htonl(ack);\n+       t1-\u003eack \u003d 1;\n+       t1-\u003ewindow \u003d htons(win);\n\n        topt \u003d (__be32 *)(t1 + 1);\n\n+       if (ts) {\n+               *topt++ \u003d htonl((TCPOPT_NOP \u003c\u003c 24) | (TCPOPT_NOP \u003c\u003c 16) |\n+                               (TCPOPT_TIMESTAMP \u003c\u003c 8) |\nTCPOLEN_TIMESTAMP);\n+               *topt++ \u003d htonl(tcp_time_stamp);\n+               *topt++ \u003d htonl(ts);\n+       }\n+\n #ifdef CONFIG_TCP_MD5SIG\n        if (key) {\n                *topt++ \u003d htonl((TCPOPT_NOP \u003c\u003c 24) | (TCPOPT_NOP \u003c\u003c 16) |\n@@ -84,15 +70,10 @@\n        fl.fl_ip_sport \u003d t1-\u003esource;\n        security_skb_classify_flow(skb, \u0026fl);\n\n-       /* Pass a socket to ip6_dst_lookup either it is for RST\n-        * Underlying function will use this to retrieve the network\n-        * namespace\n-        */\n        if (!ip6_dst_lookup(ctl_sk, \u0026buff-\u003edst, \u0026fl)) {\n                if (xfrm_lookup(\u0026buff-\u003edst, \u0026fl, NULL, 0) \u003e\u003d 0) {\n                        ip6_xmit(ctl_sk, buff, \u0026fl, NULL, 0);\n                        TCP_INC_STATS_BH(net, TCP_MIB_OUTSEGS);\n-                       TCP_INC_STATS_BH(net, TCP_MIB_OUTRSTS);\n                        return;\n                }\n        }\n\n\n...which starts to be trivial to combine.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77c676da1b717eed7239144fb539dfc4c7b78e04",
      "tree": "2ed22d9adc5698460a27284ca8c8110bb9bfe770",
      "parents": [
        "78e645cb890b0f32ea81a974e29427d9cd2f64f0"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Oct 09 14:41:38 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 09 14:41:38 2008 -0700"
      },
      "message": "tcpv6: trivial formatting changes to send_(ack|reset)\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "78e645cb890b0f32ea81a974e29427d9cd2f64f0",
      "tree": "338dfe7e005dcc835b57f4cd43b6fe0da7b2f64e",
      "parents": [
        "df58ef51caea073f4b45857c51f445f65267dac7"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Oct 09 14:37:47 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 09 14:37:47 2008 -0700"
      },
      "message": "tcpv[46]: fix md5 pseudoheader address field ordering\n\nMaybe it\u0027s just me but I guess those md5 people made a mess\nout of it by having *_md5_hash_* to use daddr, saddr order\ninstead of the one that is natural (and equal to what csum\nfunctions use). For the segment were sending, the original\naddresses are reversed so buff\u0027s saddr \u003d\u003d skb\u0027s daddr and\nvice-versa.\n\nMaybe I can finally proceed with unification of some code\nafter fixing it first... :-)\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53b125779fb0b29e5b316bf3dc7d199e6dcea567",
      "tree": "1c6ba910a930b686662be302d0358044403b5cd1",
      "parents": [
        "db2bf2476b2d99d91b4ce87e102dd3a61e92366f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Wed Oct 08 14:36:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 14:36:33 2008 -0700"
      },
      "message": "tcpv6: fix option space offsets with md5\n\nMore breakage :-), part of timestamps just were previously\noverwritten.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52cd5750e81ec8d213949fa7c0d2e08907bf498b",
      "tree": "10e7a8127022e99bf6e729fe04420fa82a0997a8",
      "parents": [
        "2ca89cea5c9fdafd495fb840fa055383d253174e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Wed Oct 08 11:34:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:34:06 2008 -0700"
      },
      "message": "tcp: fix length used for checksum in a reset\n\nWhile looking for some common code I came across difference\nin checksum calculation between tcp_v6_send_(reset|ack) I\ncouldn\u0027t explain. I checked both v4 and v6 and found out that\nboth seem to have the same \"feature\". I couldn\u0027t find anything\nin rfc nor anywhere else which would state that md5 option\nshould be ignored like it was in case of reset so I came to\na conclusion that this is probably a genuine bug. I suspect\nthat addition of md5 just was fooled by the excessive\ncopy-paste code in those functions and the reset part was\nnever tested well enough to find out the problem.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2ca89cea5c9fdafd495fb840fa055383d253174e",
      "tree": "413c63c1638f580f82f803eeb548aafcd3a1cba2",
      "parents": [
        "9261e53701121f83eb9482347d68833e95315362"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:36:24 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:17:07 2008 -0700"
      },
      "message": "ipv6: remove unused not init_ipv6_mibs/cleanup_ipv6_mibs\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9261e53701121f83eb9482347d68833e95315362",
      "tree": "9e3ba61bb72233eb544bc22ebd29a0dafa90a89e",
      "parents": [
        "087fe24033c4280a15b03cce41eaec844c92f8e5"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:36:03 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:16:45 2008 -0700"
      },
      "message": "ipv6: making ip and icmp statistics per/namespace\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55d43808eb26e689dacb95b11f956a3b1a56a5f3",
      "tree": "952e6111369f95ab5c25e41c439823966590ecec",
      "parents": [
        "a712d3e859b78edc44d5664d867626d3022bd18e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:34:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:15:46 2008 -0700"
      },
      "message": "ipv6: added net argument to ICMP6MSGIN_INC_STATS_BH\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a57d4c7fdac0e227efe8c5739fcbb263d9ae993",
      "tree": "77ebd3127bc823b31c1c82c1cfc6aa3a9c3f74d1",
      "parents": [
        "5c5d244bd388fe498dd7f5f57cb7770aae40b9ab"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:34:14 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:15:05 2008 -0700"
      },
      "message": "ipv6: added net argument to ICMP6MSGOUT_INC_STATS_BH\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c5d244bd388fe498dd7f5f57cb7770aae40b9ab",
      "tree": "21c994f3df95f4f3245a2fa6bf7380e9620ff86e",
      "parents": [
        "e41b5368e029e79d11acb5952bc73284e5026c62"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:33:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:14:44 2008 -0700"
      },
      "message": "ipv6: added net argument to ICMP6MSGOUT_INC_STATS\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e41b5368e029e79d11acb5952bc73284e5026c62",
      "tree": "82d519911fb97171259260655e9b86a20fcfe378",
      "parents": [
        "a862f6a6dc89c57dd3a959a1636b59f0c27169c2"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:33:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:14:13 2008 -0700"
      },
      "message": "ipv6: added net argument to ICMP6_INC_STATS_BH\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a862f6a6dc89c57dd3a959a1636b59f0c27169c2",
      "tree": "ade039995f548feecb13b7f0f1647b0f76740a90",
      "parents": [
        "821d57776d4dda47ef5f0c33fdb3c761214b2f9f"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:33:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:13:58 2008 -0700"
      },
      "message": "ipv6: added net argument to ICMP6_INC_STATS\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "821d57776d4dda47ef5f0c33fdb3c761214b2f9f",
      "tree": "62d32df18aec4fa6915d0c72b60b1cec86771f56",
      "parents": [
        "483a47d2fe794328d29950fe00ce26dd405d9437"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:32:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:13:31 2008 -0700"
      },
      "message": "ipv6: added net argument to IP6_ADD_STATS_BH\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "483a47d2fe794328d29950fe00ce26dd405d9437",
      "tree": "44a6daeb0ca377a733a1c8fcca44663ae8fd7811",
      "parents": [
        "3bd653c8455bc7991bae77968702b31c8f5df883"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 11:09:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 11:09:27 2008 -0700"
      },
      "message": "ipv6: added net argument to IP6_INC_STATS_BH\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3bd653c8455bc7991bae77968702b31c8f5df883",
      "tree": "f21c557e4b002ddf265ed111edd2c0bb97b01e38",
      "parents": [
        "98b3377ca77a06a7bd75a444e9f7136e9bb5112e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:54:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 10:54:51 2008 -0700"
      },
      "message": "netns: add net parameter to IP6_INC_STATS\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "98b3377ca77a06a7bd75a444e9f7136e9bb5112e",
      "tree": "505224cfdd8791099c75b346df39e3a19e35a1a3",
      "parents": [
        "0b0588d42b2774734b51525fe6550d77f8ea9bc0"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:31:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 10:53:30 2008 -0700"
      },
      "message": "ipv6: consolidate error paths in ipv6_frag_rcv\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b0588d42b2774734b51525fe6550d77f8ea9bc0",
      "tree": "097685546968bd8dfb3f80043387d95033fe9e9f",
      "parents": [
        "364ae953a48152be11f1aa424cbfd943b7762b0d"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 08 10:31:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 08 10:52:42 2008 -0700"
      },
      "message": "ipv6: local dev is actually unused in ip6_fragment\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "916a917dfec18535ff9e2afdafba82e6279eb4f4",
      "tree": "ebd2e944684f3f1a9c184e3e69d06d1465ed2f69",
      "parents": [
        "a2df1648ba615dd5908e9a1fa7b2f133fa302487"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:20 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:20 2008 +0200"
      },
      "message": "netfilter: xtables: provide invoked family value to extensions\n\nBy passing in the family through which extensions were invoked, a bit\nof data space can be reclaimed. The \"family\" member will be added to\nthe parameter structures and the check functions be adjusted.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a2df1648ba615dd5908e9a1fa7b2f133fa302487",
      "tree": "a70a2424cc660903fbcb8120344d80e62df4b0c4",
      "parents": [
        "af5d6dc200eb0fcc6fbd3df1ab4d8969004cb37f"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (6/6)\n\nThis patch does this for target extensions\u0027 destroy functions.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "af5d6dc200eb0fcc6fbd3df1ab4d8969004cb37f",
      "tree": "06f5805d0a98a421f23380bdb044f93216204b9d",
      "parents": [
        "7eb3558655aaa87a3e71a0c065dfaddda521fa6d"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (5/6)\n\nThis patch does this for target extensions\u0027 checkentry functions.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "7eb3558655aaa87a3e71a0c065dfaddda521fa6d",
      "tree": "724466c66c96f14b0378fab87040d8393bc05c8b",
      "parents": [
        "6be3d8598e883fb632edf059ba2f8d1b9f4da138"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (4/6)\n\nThis patch does this for target extensions\u0027 target functions.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "6be3d8598e883fb632edf059ba2f8d1b9f4da138",
      "tree": "ef8b3a40168b0f50079d05bd36b7b6f1c4fed9dd",
      "parents": [
        "9b4fce7a3508a9776534188b6065b206a9608ccf"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:19 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (3/6)\n\nThis patch does this for match extensions\u0027 destroy functions.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "9b4fce7a3508a9776534188b6065b206a9608ccf",
      "tree": "7df90f099a72738900deb93124ad86724a2df207",
      "parents": [
        "f7108a20dee44e5bb037f9e48f6a207b42e6ae1c"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (2/6)\n\nThis patch does this for match extensions\u0027 checkentry functions.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "f7108a20dee44e5bb037f9e48f6a207b42e6ae1c",
      "tree": "bfc741548cdf416a59a89d89a20ba2cbdc8e988e",
      "parents": [
        "c2df73de246ae75705af8ceed4f385b261dea108"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "message": "netfilter: xtables: move extension arguments into compound structure (1/6)\n\nThe function signatures for Xtables extensions have grown over time.\nIt involves a lot of typing/replication, and also a bit of stack space\neven if they are not used. Realize an NFWS2008 idea and pack them into\nstructs. The skb remains outside of the struct so gcc can continue to\napply its optimizations.\n\nThis patch does this for match extensions\u0027 match functions.\n\nA few ambiguities have also been addressed. The \"offset\" parameter for\nexample has been renamed to \"fragoff\" (there are so many different\noffsets already) and \"protoff\" to \"thoff\" (there is more than just one\nprotocol here, so clarify).\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "c2df73de246ae75705af8ceed4f385b261dea108",
      "tree": "9372e24e1569cf83f592ea93f899909c391ddad1",
      "parents": [
        "aba0d34800d7f56493b4d5548cc06498a4d69124"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:18 2008 +0200"
      },
      "message": "netfilter: xtables: use \"if\" blocks in Kconfig\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "aba0d34800d7f56493b4d5548cc06498a4d69124",
      "tree": "1ee6e0cf91cca286ea0601dcedfd5febc1461742",
      "parents": [
        "20f3c56f4d7c76bcb66050f3364aa8da110f5bbd"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "message": "netfilter: xtables: sort extensions alphabetically in Kconfig\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "2203eb47603b01b15a4b1d5b1c7886da96158e74",
      "tree": "12d4030d4bb2a885873b962cdb8a52f5b0db6d8b",
      "parents": [
        "77d7358995489bf354fb4f65f4528e47980ffb08"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "message": "netfilter: ip6tables: fix Kconfig entry dependency for ip6t_LOG\n\nip6t_LOG does certainly not depend on the filter table.\n(Also, move it so that menuconfig still displays it correctly.)\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "77d7358995489bf354fb4f65f4528e47980ffb08",
      "tree": "7ff6074f077e58b6943577b2203757002737cdc4",
      "parents": [
        "367c679007fa4f990eb7ee381326ec59d8148b0e"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "message": "netfilter: ip6tables: fix name of hopbyhop in Kconfig\n\nThe module is called hbh, not hopbyhop.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "367c679007fa4f990eb7ee381326ec59d8148b0e",
      "tree": "a543f22332eba9ef972ed8ea6e66448921671ef7",
      "parents": [
        "147c3844ad381b58715a6ee2ea697594e3c06284"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:17 2008 +0200"
      },
      "message": "netfilter: xtables: do centralized checkentry call (1/2)\n\nIt used to be that {ip,ip6,etc}_tables called extension-\u003echeckentry\nthemselves, but this can be moved into the xtables core.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "c2a2c7e0cc39e7f9336cd67e8307a110bdba82f3",
      "tree": "7f9636ad72ab8f2309b2d5b3ca74f8c074ac807a",
      "parents": [
        "c04d05529a6e0bf97183a2caf76a0c7f07f5b78c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:08 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:08 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: per-netns net.netfilter.nf_conntrack_log_invalid sysctl\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "c04d05529a6e0bf97183a2caf76a0c7f07f5b78c",
      "tree": "9d4df449b3a294b150d1c77ac4a4767e27e4a5df",
      "parents": [
        "802507071b72ed5025747126099cbc6d1542f596"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:08 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:08 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: per-netns net.netfilter.nf_conntrack_checksum sysctl\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a71996fccce4b2086a26036aa3c915365ca36926",
      "tree": "b029e46dccaa8eceabe44d67ae887630b8acccd2",
      "parents": [
        "678d66753091a4102910392fb6198a6c6ce7f510"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:07 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:07 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: pass conntrack to nf_conntrack_event_cache() not skb\n\nThis is cleaner, we already know conntrack to which event is relevant.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "74c51a1497033e6ff7b8096797daca233a4a30df",
      "tree": "cc5491a6e2cfcc71742e76226fcede365deba114",
      "parents": [
        "a702a65fc1376fc1f6757ec2a6960348af3f1876"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:05 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:05 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: pass netns pointer to L4 protocol\u0027s -\u003eerror hook\n\nAgain, it\u0027s deducible from skb, but we\u0027re going to use it for\nnf_conntrack_checksum and statistics, so just pass it from upper layer.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "a702a65fc1376fc1f6757ec2a6960348af3f1876",
      "tree": "4d44e147a76b35228a4535c9cc446c1d1bf0dddd",
      "parents": [
        "63c9a26264be108b52de087724673f8664570e34"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:04 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:04 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: pass netns pointer to nf_conntrack_in()\n\nIt\u0027s deducible from skb-\u003edev or skb-\u003edst-\u003edev, but we know netns at\nthe moment of call, so pass it down and use for finding and creating\nconntracks.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "b21f89019399ff75d9c239010e38b840eb6e01e7",
      "tree": "f4b2ef9f75e2330b983ba27515a5687f8e923e24",
      "parents": [
        "400dad39d1c33fe797e47326d87a3f54d0ac5181"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:03 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:03 2008 +0200"
      },
      "message": "netfilter: netns: fix {ip,6}_route_me_harder() in netns\n\nTake netns from skb-\u003edst-\u003edev. It should be safe because, they are called\nfrom LOCAL_OUT hook where dst is valid (though, I\u0027m not exactly sure about\nIPVS and queueing packets to userspace).\n\n[Patrick: its safe everywhere since they already expect skb-\u003edst to be set]\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "400dad39d1c33fe797e47326d87a3f54d0ac5181",
      "tree": "f3bb7c9f75bd24161c2dd745f1b475f5a6165cae",
      "parents": [
        "49ac8713b6d064adf7474080fdccebd7cce76be0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:03 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:03 2008 +0200"
      },
      "message": "netfilter: netns nf_conntrack: per-netns conntrack hash\n\n* make per-netns conntrack hash\n\n  Other solution is to add -\u003ect_net pointer to tuplehashes and still has one\n  hash, I tried that it\u0027s ugly and requires more code deep down in protocol\n  modules et al.\n\n* propagate netns pointer to where needed, e. g. to conntrack iterators.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "e10aad9998e463df8e25ec749538faf3324dd31b",
      "tree": "713fc7842695820ff55d74bc34abc72141359231",
      "parents": [
        "7dd1b8dad84c9561fe8949ed5db4de15aee877eb"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:02 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:02 2008 +0200"
      },
      "message": "netfilter: netns: ip6t_REJECT in netns for real\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "7dd1b8dad84c9561fe8949ed5db4de15aee877eb",
      "tree": "f2df68e053e13f26c88e38f82c1159d618b8b33b",
      "parents": [
        "1339dd91719f3e841b113ddaccd30fd87b9d2332"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:02 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:02 2008 +0200"
      },
      "message": "netfilter: netns: ip6table_mangle in netns for real\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "1339dd91719f3e841b113ddaccd30fd87b9d2332",
      "tree": "7b56845e2a55ce142a1e35dab7878132f75fc83d",
      "parents": [
        "48dc7865aa3db9404aedc8677d9daf8f8f469ab0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "message": "netfilter: netns: ip6table_raw in netns for real\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "48dc7865aa3db9404aedc8677d9daf8f8f469ab0",
      "tree": "bca166dfc0b1f7cdadc99d1583e2065c78f69266",
      "parents": [
        "55b69e91040c685a064198bd76e59885b7ad26c6"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "message": "netfilter: netns: remove nf_*_net() wrappers\n\nNow that dev_net() exists, the usefullness of them is even less. Also they\u0027re\na big problem in resolving circular header dependencies necessary for\nNOTRACK-in-netns patch. See below.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "ee999d8b9573df1b547aacdc6d79f86eb79c25cd",
      "tree": "83585a40918ad1ebad17f4a0cfbf5486c02c64d7",
      "parents": [
        "7e9c6eeb136a46dfd941852803b3a9dd78939b69"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:01 2008 +0200"
      },
      "message": "netfilter: x_tables: use NFPROTO_* in extensions\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "76108cea065cda58366d16a7eb6ca90d717a1396",
      "tree": "c4fc31d490c902f2c2478a6344ee988dccc6286f",
      "parents": [
        "be713a443ee019489890e93654557916fbf72612"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@medozas.de",
        "time": "Wed Oct 08 11:35:00 2008 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Oct 08 11:35:00 2008 +0200"
      },
      "message": "netfilter: Use unsigned types for hooknum and pf vars\n\nand (try to) consistently use u_int8_t for the L3 family.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "be713a443ee019489890e93654557916fbf72612",
      "tree": "0ff5bacfd4b6f17ccc380ef01fcd6661959531b8",
      "parents": [
        "0c7ed677fb7013c8028045d409a48ac42151187a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:50:06 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:50:06 2008 -0700"
      },
      "message": "netns: make uplitev6 mib per/namespace\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c7ed677fb7013c8028045d409a48ac42151187a",
      "tree": "7449bac3fd2433b541da0d458cf0aecfb90451b8",
      "parents": [
        "e43291cb37406dae405d50332eaa1ba2264c8dce"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:49:36 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:49:36 2008 -0700"
      },
      "message": "netns: make udpv6 mib per/namespace\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e43291cb37406dae405d50332eaa1ba2264c8dce",
      "tree": "90825e5790ff8700839d93f6b92cc2c4918b798a",
      "parents": [
        "ab38dc7a70e59a4888ab4acb51daf3c6012ce4b8"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:48:53 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:48:53 2008 -0700"
      },
      "message": "netns: add stub functions for per/namespace mibs allocation\n\nThe content of init_ipv6_mibs/cleanup_ipv6_mibs will be moved to new\ncalls one by one next.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab38dc7a70e59a4888ab4acb51daf3c6012ce4b8",
      "tree": "9c3c08b45a68a46f19c770c493d33fecef039d8e",
      "parents": [
        "2b4209e4b7ba9c7d70910a665ae4b60d49b75fcd"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:47:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:47:55 2008 -0700"
      },
      "message": "netns: allow per device ipv6 snmp statistics in non-initial namespace\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2b4209e4b7ba9c7d70910a665ae4b60d49b75fcd",
      "tree": "ceaa68694241649ad9e24a4ffedc5eb55d905397",
      "parents": [
        "7b43ccecc77480353a5657d993d671cae9e94efd"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:47:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:47:37 2008 -0700"
      },
      "message": "netns: register global ipv6 mibs statistics in each namespace\n\nUnused net variable will become used very soon.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b43ccecc77480353a5657d993d671cae9e94efd",
      "tree": "be4e5b0b700c024f53a8503ec8cf23f5e5fa1401",
      "parents": [
        "35f0a5df6cbc315da031c40541e135a059bfde7d"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:47:12 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:47:12 2008 -0700"
      },
      "message": "ipv6: separate seq_ops for global \u0026 per/device ipv6 statistics\n\nidev has been stored on seq-\u003eprivate. NULL has been stored for global\nstatistics.\n\nThe situation is changed with net namespace. We need to store pointer to\nstruct net and the only place is seq-\u003eprivate. So, we\u0027ll have for\n/proc/net/dev_snmp6/* and for /proc/net/snmp6 pointers of two different\ntypes stored in the same field.\n\nThis effectively requires to separate seq_ops of these files.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "35f0a5df6cbc315da031c40541e135a059bfde7d",
      "tree": "769aee7f786d768c09c01033cbcf6037790ce805",
      "parents": [
        "06f38527decedbea0588256ecbb5784d4bb35b81"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:46:47 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:46:47 2008 -0700"
      },
      "message": "ipv6: consolidate ipv6 sock_stat code at the beginning of net/ipv6/proc.c\n\nSimple, comsolidate sockstat6 staff in one place, at the beginning of\nthe file. Right now sockstat6_seq_open/sockstat6_seq_fops looks like an\nintrusion in the middle of snmp6 code.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06f38527decedbea0588256ecbb5784d4bb35b81",
      "tree": "b8efd6b4df3327a3daaeb6647eecbdd526d3a6dd",
      "parents": [
        "835bcc0497e18f54153ac9e32b598dd8ffb7aa66"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:46:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:46:18 2008 -0700"
      },
      "message": "netns: register /proc/net/dev_snmp6/* in each ns\n\nDo the same for /proc/net/snmp6.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "835bcc0497e18f54153ac9e32b598dd8ffb7aa66",
      "tree": "7d0e41088297d678597bc4a7e425a78b7c0a5076",
      "parents": [
        "4a7e56098f06d505f23f8d7c8d6762221065922a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Oct 07 14:45:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:45:55 2008 -0700"
      },
      "message": "netns: move /proc/net/dev_snmp6 to struct net\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b339a47c370ec669f789c5989f54eec1d78574bb",
      "tree": "a6da652fe9c0a78780b6d7cdf3cf283cc5b23191",
      "parents": [
        "68fffc679694d5f7c02fdeb684b481416cd8213b"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 07 14:15:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:15:00 2008 -0700"
      },
      "message": "ipv6: initialize ip6_route sysctl vars in ip6_route_net_init()\n\nThis makes that ip6_route_net_init() does all of the route init code.\nThere used to be a race between ip6_route_net_init() and ip6_net_init()\nand someone relying on the combined result was left out cold.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68fffc679694d5f7c02fdeb684b481416cd8213b",
      "tree": "63afbb6666c361af8a5480d206c170dd5610c646",
      "parents": [
        "23542618deb77cfed312842fe8c41ed19fb16470"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 07 14:12:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 14:12:10 2008 -0700"
      },
      "message": "ipv6: clean up ip6_route_net_init() error handling\n\nip6_route_net_init() error handling looked less than solid, fix \u0027er up.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23542618deb77cfed312842fe8c41ed19fb16470",
      "tree": "9658279a6e3593846a9127c7a8bffb7ce0077d62",
      "parents": [
        "607c4aaf03041c8bd81555a0218050c0f895088e"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Tue Oct 07 12:41:01 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 12:41:01 2008 -0700"
      },
      "message": "inet: Don\u0027t lookup the socket if there\u0027s a socket attached to the skb\n\nUse the socket cached in the skb if it\u0027s present.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "607c4aaf03041c8bd81555a0218050c0f895088e",
      "tree": "130cfcfca74eccb135592a883000a319e94cd7e2",
      "parents": [
        "9a1f27c48065ce713eb47f2fd475b717e63ef239"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Tue Oct 07 12:38:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 12:38:32 2008 -0700"
      },
      "message": "inet: Add udplib_lookup_skb() helpers\n\nTo be able to use the cached socket reference in the skb during input\nprocessing we add a new set of lookup functions that receive the skb on\ntheir argument list.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a1f27c48065ce713eb47f2fd475b717e63ef239",
      "tree": "79ebeb8386b98aca595625b9d2db26bd52a8077d",
      "parents": [
        "c7004482e8dcb7c3c72666395cfa98a216a4fb70"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Oct 07 11:41:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Oct 07 11:41:57 2008 -0700"
      },
      "message": "inet_hashtables: Add inet_lookup_skb helpers\n\nTo be able to use the cached socket reference in the skb during input\nprocessing we add a new set of lookup functions that receive the skb on\ntheir argument list.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1668e010cbe1a7567c81d4c02d31dde9859e9da1",
      "tree": "f3505d22a93ed9a4b6140a7f98a9d4cc2c1f66e9",
      "parents": [
        "b9fb15067ce93497bef852c05e406d7a96212a9a"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Wed Oct 01 07:33:10 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 07:33:10 2008 -0700"
      },
      "message": "ipv4: Make inet_sock.h independent of route.h\n\ninet_iif() in inet_sock.h requires route.h. Since users of inet_iif()\nusually require other route.h functionality anyway this patch moves\ninet_iif() to route.h.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b262e60309e1b0eb25d300c7e739427d5316abb1",
      "tree": "bf319d78c79bb5cb617ff0c8340c73aa349bba15",
      "parents": [
        "93c8b90f01f0dc73891da4e84b26524b61d29d66",
        "0523820482dcb42784572ffd2296c2f08c275a2b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 06:12:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 06:12:56 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/ath9k/core.c\n\tdrivers/net/wireless/ath9k/main.c\n\tnet/core/dev.c\n"
    },
    {
      "commit": "93c8b90f01f0dc73891da4e84b26524b61d29d66",
      "tree": "ec7fa47679cccf47716039f2c3898742a0881090",
      "parents": [
        "2bcb4b0f111053d0e8fb4366f0708395d997e93a"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Wed Oct 01 02:48:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 02:48:31 2008 -0700"
      },
      "message": "ipv6: almost identical frag hashing funcs combined\n\n$ diff-funcs ip6qhashfn reassembly.c netfilter/nf_conntrack_reasm.c\n --- reassembly.c:ip6qhashfn()\n +++ netfilter/nf_conntrack_reasm.c:ip6qhashfn()\n@@ -1,5 +1,5 @@\n-static unsigned int ip6qhashfn(__be32 id, struct in6_addr *saddr,\n-\t\t\t       struct in6_addr *daddr)\n+static unsigned int ip6qhashfn(__be32 id, const struct in6_addr *saddr,\n+\t\t\t       const struct in6_addr *daddr)\n {\n \tu32 a, b, c;\n\n@@ -9,7 +9,7 @@\n\n \ta +\u003d JHASH_GOLDEN_RATIO;\n \tb +\u003d JHASH_GOLDEN_RATIO;\n-\tc +\u003d ip6_frags.rnd;\n+\tc +\u003d nf_frags.rnd;\n \t__jhash_mix(a, b, c);\n\n \ta +\u003d (__force u32)saddr-\u003es6_addr32[3];\n\nAnd codiff xx.o.old xx.o.new:\n\nnet/ipv6/netfilter/nf_conntrack_reasm.c:\n  ip6qhashfn         | -512\n  nf_hashfn          |   +6\n  nf_ct_frag6_gather |  +36\n 3 functions changed, 42 bytes added, 512 bytes removed, diff: -470\nnet/ipv6/reassembly.c:\n  ip6qhashfn    | -512\n  ip6_hashfn    |   +7\n  ipv6_frag_rcv |  +89\n 3 functions changed, 96 bytes added, 512 bytes removed, diff: -416\n\nnet/ipv6/reassembly.c:\n  inet6_hash_frag | +510\n 1 function changed, 510 bytes added, diff: +510\n\nTotal: -376\n\nCompile tested.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5dc121e9a7a8a3721cefeb07f3559f50fbedc67e",
      "tree": "4658fd69303742bc127a56ff430cb70eb6354d6a",
      "parents": [
        "2a5b82751f73a0bf6f604ce56d34adba6da1b246"
      ],
      "author": {
        "name": "Arnaud Ebalard",
        "email": "arno@natisbad.org",
        "time": "Wed Oct 01 02:37:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 02:37:56 2008 -0700"
      },
      "message": "XFRM,IPv6: initialize ip6_dst_blackhole_ops.kmem_cachep\n\nip6_dst_blackhole_ops.kmem_cachep is not expected to be NULL (i.e. to\nbe initialized) when dst_alloc() is called from ip6_dst_blackhole().\nOtherwise, it results in the following (xfrm_larval_drop is now set to\n1 by default):\n\n[   78.697642] Unable to handle kernel paging request for data at address 0x0000004c\n[   78.703449] Faulting instruction address: 0xc0097f54\n[   78.786896] Oops: Kernel access of bad area, sig: 11 [#1]\n[   78.792791] PowerMac\n[   78.798383] Modules linked in: btusb usbhid bluetooth b43 mac80211 cfg80211 ehci_hcd ohci_hcd sungem sungem_phy usbcore ssb\n[   78.804263] NIP: c0097f54 LR: c0334a28 CTR: c002d430\n[   78.809997] REGS: eef19ad0 TRAP: 0300   Not tainted  (2.6.27-rc5)\n[   78.815743] MSR: 00001032 \u003cME,IR,DR\u003e  CR: 22242482  XER: 20000000\n[   78.821550] DAR: 0000004c, DSISR: 40000000\n[   78.827278] TASK \u003d eef0df40[3035] \u0027mip6d\u0027 THREAD: eef18000\n[   78.827408] GPR00: 00001032 eef19b80 eef0df40 00000000 00008020 eef19c30 00000001 00000000\n[   78.833249] GPR08: eee5101c c05a5c10 ef9ad500 00000000 24242422 1005787c 00000000 1004f960\n[   78.839151] GPR16: 00000000 10024e90 10050040 48030018 0fe44150 00000000 00000000 eef19c30\n[   78.845046] GPR24: eef19e44 00000000 eef19bf8 efb37c14 eef19bf8 00008020 00009032 c0596064\n[   78.856671] NIP [c0097f54] kmem_cache_alloc+0x20/0x94\n[   78.862581] LR [c0334a28] dst_alloc+0x40/0xc4\n[   78.868451] Call Trace:\n[   78.874252] [eef19b80] [c03c1810] ip6_dst_lookup_tail+0x1c8/0x1dc (unreliable)\n[   78.880222] [eef19ba0] [c0334a28] dst_alloc+0x40/0xc4\n[   78.886164] [eef19bb0] [c03cd698] ip6_dst_blackhole+0x28/0x1cc\n[   78.892090] [eef19be0] [c03d9be8] rawv6_sendmsg+0x75c/0xc88\n[   78.897999] [eef19cb0] [c038bca4] inet_sendmsg+0x4c/0x78\n[   78.903907] [eef19cd0] [c03207c8] sock_sendmsg+0xac/0xe4\n[   78.909734] [eef19db0] [c03209e4] sys_sendmsg+0x1e4/0x2a0\n[   78.915540] [eef19f00] [c03220a8] sys_socketcall+0xfc/0x210\n[   78.921406] [eef19f40] [c0014b3c] ret_from_syscall+0x0/0x38\n[   78.927295] --- Exception: c01 at 0xfe2d730\n[   78.927297]     LR \u003d 0xfe2d71c\n[   78.939019] Instruction dump:\n[   78.944835] 91640018 9144001c 900a0000 4bffff44 9421ffe0 7c0802a6 bf810010 7c9d2378\n[   78.950694] 90010024 7fc000a6 57c0045e 7c000124 \u003c83e3004c\u003e 8383005c 2f9f0000 419e0050\n[   78.956464] ---[ end trace 05fa1ed7972487a1 ]---\n\nAs commented by Benjamin Thery, the bug was introduced by\nf2fc6a54585a1be6669613a31fbaba2ecbadcd36, while adding network\nnamespaces support to ipv6 routes.\n\nSigned-off-by: Arnaud Ebalard \u003carno@natisbad.org\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a5b82751f73a0bf6f604ce56d34adba6da1b246",
      "tree": "7ebfa7df43f81ee8aca50263e5bb7f1beed3112f",
      "parents": [
        "4dd7972d1204c3851a4092cecd2207e05eb29b09"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Wed Oct 01 02:13:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 02:13:16 2008 -0700"
      },
      "message": "ipv6: NULL pointer dereferrence in tcp_v6_send_ack\n\nThe following actions are possible:\ntcp_v6_rcv\n  skb-\u003edev \u003d NULL;\n  tcp_v6_do_rcv\n    tcp_v6_hnd_req\n      tcp_check_req\n        req-\u003ersk_ops-\u003esend_ack \u003d\u003d tcp_v6_send_ack\n\nSo, skb-\u003edev can be NULL in tcp_v6_send_ack. We must obtain namespace\nfrom dst entry.\n\nThanks to Vitaliy Gusev \u003cvgusev@openvz.org\u003e for initial problem finding\nin IPv4 code.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ca31ce52a5cfd03b960fd81a49197ae85d25347",
      "tree": "741d9f22a3da1b8ff023153d52c3c22422a04a9d",
      "parents": [
        "5fbcd260c2c52f78cd699f65e9c7af2e60b5380c"
      ],
      "author": {
        "name": "Yasuyuki Kozakai",
        "email": "yasuyuki.kozakai@toshiba.co.jp",
        "time": "Wed Sep 24 15:53:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 24 15:53:39 2008 -0700"
      },
      "message": "netfilter: ip6t_{hbh,dst}: Rejects not-strict mode on rule insertion\n\nThe current code ignores rules for internal options in HBH/DST options\nheader in packet processing if \u0027Not strict\u0027 mode is specified (which is not\nimplemented). Clearly it is not expected by user.\n\nKernel should reject HBH/DST rule insertion with \u0027Not strict\u0027 mode\nin the first place.\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": "6067804047b64dde89f4f133fc7eba48ee44107d",
      "tree": "abe87787c3ad2aee82e576c7d4128e29bb296ac0",
      "parents": [
        "a574420ff46cff0245e6b0fce2e961aa2717743d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "message": "net: Use hton[sl]() instead of __constant_hton[sl]() where applicable\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "78d15e82754945ee9821fb491b57faf43abfb9d7",
      "tree": "ac5695ad20aafc333729f2392465645a580a8b8a",
      "parents": [
        "f262b59becc3f557da6460232abac13706402849"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Fri Sep 12 16:17:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 12 16:17:43 2008 -0700"
      },
      "message": "tcp_ipv6: fix use of uninitialized memory\n\ninet6_rsk() is called on a struct request_sock * before we\nhave checked whether the socket is an ipv6 socket or a ipv6-\nmapped ipv4 socket. The access that triggers this is the\ninet_rsk(rsk)-\u003einet6_rsk_offset dereference in inet6_rsk().\n\nThis is arguably not a critical error as the inet6_rsk_offset\nis only used to compute a pointer which is never really used\n(in the code path in question) anyway. But it might be a\nlatent error, so let\u0027s fix it.\n\nSpotted by kmemcheck.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e493d1946a0b26b79001c18d7312d536156ff5a",
      "tree": "2cc484a2f2ea5de5b427e6a8a7fa6f7d07ae05bc",
      "parents": [
        "08569908fffec3625e29eec7cf7577eaa512e719"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 10 17:27:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Sep 10 23:39:28 2008 -0700"
      },
      "message": "ipv6: On interface down/unregister, purge icmp routes too.\n\nJohannes Berg reported that occaisionally, bringing an interface\ndown or unregistering it would hang for up to 30 seconds.  Using\ndebugging output he provided it became clear that ICMP6 routes\nwere the culprit.\n\nThe problem is that ICMP6 routes live in their own world totally\nseparate from normal ipv6 routes.  So there are all kinds of special\ncases throughout the ipv6 code to handle this.\n\nWhile we should really try to unify all of this stuff somehow,\nfor the time being let\u0027s fix this by purging the ICMP6 routes\nthat match the device in question during rt6_ifdown().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e550dfb0c2c31b6363aa463a035fc9f8dcaa3c9b",
      "tree": "66f11aed70a892a3768d3e0f5100cd4c1c7b6b1e",
      "parents": [
        "225f40055f779032974a9fce7b2f9c9eda04ff58"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Tue Sep 09 13:51:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 09 13:51:35 2008 -0700"
      },
      "message": "ipv6: Fix OOPS in ip6_dst_lookup_tail().\n\nThis fixes kernel bugzilla 11469: \"TUN with 1024 neighbours:\nip6_dst_lookup_tail NULL crash\"\n\ndst-\u003eneighbour is not necessarily hooked up at this point\nin the processing path, so blindly dereferencing it is\nthe wrong thing to do.  This NULL check exists in other\nsimilar paths and this case was just an oversight.\n\nAlso fix the completely wrong and confusing indentation\nhere while we\u0027re at it.\n\nBased upon a patch by Evgeniy Polyakov.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d315492b1a6ba29da0fa2860759505ae1b2db857",
      "tree": "1019a3c34af19939733e6d1e7d3163c73c73eb69",
      "parents": [
        "e8a83e10d7dfe5d0841062780769b30f65417e15"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Mon Sep 08 13:17:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 08 13:17:27 2008 -0700"
      },
      "message": "netns : fix kernel panic in timewait socket destruction\n\nHow to reproduce ?\n - create a network namespace\n - use tcp protocol and get timewait socket\n - exit the network namespace\n - after a moment (when the timewait socket is destroyed), the kernel\n   panics.\n\n# BUG: unable to handle kernel NULL pointer dereference at\n0000000000000007\nIP: [\u003cffffffff821e394d\u003e] inet_twdr_do_twkill_work+0x6e/0xb8\nPGD 119985067 PUD 11c5c0067 PMD 0\nOops: 0000 [1] SMP\nCPU 1\nModules linked in: ipv6 button battery ac loop dm_mod tg3 libphy ext3 jbd\nedd fan thermal processor thermal_sys sg sata_svw libata dock serverworks\nsd_mod scsi_mod ide_disk ide_core [last unloaded: freq_table]\nPid: 0, comm: swapper Not tainted 2.6.27-rc2 #3\nRIP: 0010:[\u003cffffffff821e394d\u003e] [\u003cffffffff821e394d\u003e]\ninet_twdr_do_twkill_work+0x6e/0xb8\nRSP: 0018:ffff88011ff7fed0 EFLAGS: 00010246\nRAX: ffffffffffffffff RBX: ffffffff82339420 RCX: ffff88011ff7ff30\nRDX: 0000000000000001 RSI: ffff88011a4d03c0 RDI: ffff88011ac2fc00\nRBP: ffffffff823392e0 R08: 0000000000000000 R09: ffff88002802a200\nR10: ffff8800a5c4b000 R11: ffffffff823e4080 R12: ffff88011ac2fc00\nR13: 0000000000000001 R14: 0000000000000001 R15: 0000000000000000\nFS: 0000000041cbd940(0000) GS:ffff8800bff839c0(0000)\nknlGS:0000000000000000\nCS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b\nCR2: 0000000000000007 CR3: 00000000bd87c000 CR4: 00000000000006e0\nDR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\nDR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\nProcess swapper (pid: 0, threadinfo ffff8800bff9e000, task\nffff88011ff76690)\nStack: ffffffff823392e0 0000000000000100 ffffffff821e3a3a\n0000000000000008\n0000000000000000 ffffffff821e3a61 ffff8800bff7c000 ffffffff8203c7e7\nffff88011ff7ff10 ffff88011ff7ff10 0000000000000021 ffffffff82351108\nCall Trace:\n\u003cIRQ\u003e [\u003cffffffff821e3a3a\u003e] ? inet_twdr_hangman+0x0/0x9e\n[\u003cffffffff821e3a61\u003e] ? inet_twdr_hangman+0x27/0x9e\n[\u003cffffffff8203c7e7\u003e] ? run_timer_softirq+0x12c/0x193\n[\u003cffffffff820390d1\u003e] ? __do_softirq+0x5e/0xcd\n[\u003cffffffff8200d08c\u003e] ? call_softirq+0x1c/0x28\n[\u003cffffffff8200e611\u003e] ? do_softirq+0x2c/0x68\n[\u003cffffffff8201a055\u003e] ? smp_apic_timer_interrupt+0x8e/0xa9\n[\u003cffffffff8200cad6\u003e] ? apic_timer_interrupt+0x66/0x70\n\u003cEOI\u003e [\u003cffffffff82011f4c\u003e] ? default_idle+0x27/0x3b\n[\u003cffffffff8200abbd\u003e] ? cpu_idle+0x5f/0x7d\n\n\nCode: e8 01 00 00 4c 89 e7 41 ff c5 e8 8d fd ff ff 49 8b 44 24 38 4c 89 e7\n65 8b 14 25 24 00 00 00 89 d2 48 8b 80 e8 00 00 00 48 f7 d0 \u003c48\u003e 8b 04 d0\n48 ff 40 58 e8 fc fc ff ff 48 89 df e8 c0 5f 04 00\nRIP [\u003cffffffff821e394d\u003e] inet_twdr_do_twkill_work+0x6e/0xb8\nRSP \u003cffff88011ff7fed0\u003e\nCR2: 0000000000000007\n\nThis patch provides a function to purge all timewait sockets related\nto a network namespace. The timewait sockets life cycle is not tied with\nthe network namespace, that means the timewait sockets stay alive while\nthe network namespace dies. The timewait sockets are for avoiding to\nreceive a duplicate packet from the network, if the network namespace is\nfreed, the network stack is removed, so no chance to receive any packets\nfrom the outside world. Furthermore, having a pending destruction timer\non these sockets with a network namespace freed is not safe and will lead\nto an oops if the timer callback which try to access data belonging to \nthe namespace like for example in:\n\tinet_twdr_do_twkill_work\n\t\t-\u003e NET_INC_STATS_BH(twsk_net(tw), LINUX_MIB_TIMEWAITED);\n\nPurging the timewait sockets at the network namespace destruction will:\n 1) speed up memory freeing for the namespace\n 2) fix kernel panic on asynchronous timewait destruction\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3cc76caa98b092a8fb3e7b4303c70f847db0651f",
      "tree": "ef2380db53d72de84c498c86a4db78b2abe942f4",
      "parents": [
        "d97240552cd98c4b07322f30f66fd9c3ba4171de"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Fri Aug 29 14:06:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 29 14:27:51 2008 -0700"
      },
      "message": "ipv6: When we droped a packet, we should return NET_RX_DROP instead of 0\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce3113ec57abcd41cc5a2fed02474aee3f63d12c",
      "tree": "33c5eeb01120aeb013f351e9327d05f3e6f9e827",
      "parents": [
        "2f4520d35d89ca6c5cd129c38e3b11f0283b7d1b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Aug 25 15:18:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 25 15:18:15 2008 -0700"
      },
      "message": "ipv6: sysctl fixes\n\nBraino: net.ipv6 in ipv6 skeleton has no business in rotable\nclass\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f410a1fba7afa79d2992620e874a343fdba28332",
      "tree": "5e08d30678cfadd65a8dfe20bc12160a23faa43d",
      "parents": [
        "fdc0bde90a689b9145f2b6f271c03f4c99d09667"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 23 05:16:46 2008 -0700"
      },
      "message": "ipv6: protocol for address routes\n\nThis fixes a problem spotted with zebra, but not sure if it is\nnecessary a kernel problem.  With IPV6 when an address is added to an\ninterface, Zebra creates a duplicate RIB entry, one as a connected\nroute, and other as a kernel route.\n\nWhen an address is added to an interface the RTN_NEWADDR message\ncauses Zebra to create a connected route. In IPV4 when an address is\nadded to an interface a RTN_NEWROUTE message is set to user space with\nthe protocol RTPROT_KERNEL. Zebra ignores these messages, because it\nalready has the connected route.\n\nThe problem is that route created in IPV6 has route protocol \u003d\u003d\nRTPROT_BOOT.  Was this a design decision or a bug? This fixes it. Same\npatch applies to both net-2.6 and stable.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fdc0bde90a689b9145f2b6f271c03f4c99d09667",
      "tree": "f29db0a155cee7349f20862d0e1601a5696979df",
      "parents": [
        "f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sat Aug 23 04:43:33 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 23 04:43:33 2008 -0700"
      },
      "message": "icmp: icmp_sk() should not use smp_processor_id() in preemptible code\n\nPass namespace into icmp_xmit_lock, obtain socket inside and return\nit as a result for caller.\n\nThanks Alexey Dobryan for this report:\n\nSteps to reproduce:\n\n\tCONFIG_PREEMPT\u003dy\n\tCONFIG_DEBUG_PREEMPT\u003dy\n\ttracepath \u003csomething\u003e\n\nBUG: using smp_processor_id() in preemptible [00000000] code: tracepath/3205\ncaller is icmp_sk+0x15/0x30\nPid: 3205, comm: tracepath Not tainted 2.6.27-rc4 #1\n\nCall Trace:\n [\u003cffffffff8031af14\u003e] debug_smp_processor_id+0xe4/0xf0\n [\u003cffffffff80409405\u003e] icmp_sk+0x15/0x30\n [\u003cffffffff8040a17b\u003e] icmp_send+0x4b/0x3f0\n [\u003cffffffff8025a415\u003e] ? trace_hardirqs_on_caller+0xd5/0x160\n [\u003cffffffff8025a4ad\u003e] ? trace_hardirqs_on+0xd/0x10\n [\u003cffffffff8023a475\u003e] ? local_bh_enable_ip+0x95/0x110\n [\u003cffffffff804285b9\u003e] ? _spin_unlock_bh+0x39/0x40\n [\u003cffffffff8025a26c\u003e] ? mark_held_locks+0x4c/0x90\n [\u003cffffffff8025a4ad\u003e] ? trace_hardirqs_on+0xd/0x10\n [\u003cffffffff8025a415\u003e] ? trace_hardirqs_on_caller+0xd5/0x160\n [\u003cffffffff803e91b4\u003e] ip_fragment+0x8d4/0x900\n [\u003cffffffff803e7030\u003e] ? ip_finish_output2+0x0/0x290\n [\u003cffffffff803e91e0\u003e] ? ip_finish_output+0x0/0x60\n [\u003cffffffff803e6650\u003e] ? dst_output+0x0/0x10\n [\u003cffffffff803e922c\u003e] ip_finish_output+0x4c/0x60\n [\u003cffffffff803e92e3\u003e] ip_output+0xa3/0xf0\n [\u003cffffffff803e68d0\u003e] ip_local_out+0x20/0x30\n [\u003cffffffff803e753f\u003e] ip_push_pending_frames+0x27f/0x400\n [\u003cffffffff80406313\u003e] udp_push_pending_frames+0x233/0x3d0\n [\u003cffffffff804067d1\u003e] udp_sendmsg+0x321/0x6f0\n [\u003cffffffff8040d155\u003e] inet_sendmsg+0x45/0x80\n [\u003cffffffff803b967f\u003e] sock_sendmsg+0xdf/0x110\n [\u003cffffffff8024a100\u003e] ? autoremove_wake_function+0x0/0x40\n [\u003cffffffff80257ce5\u003e] ? validate_chain+0x415/0x1010\n [\u003cffffffff8027dc10\u003e] ? __do_fault+0x140/0x450\n [\u003cffffffff802597d0\u003e] ? __lock_acquire+0x260/0x590\n [\u003cffffffff803b9e55\u003e] ? sockfd_lookup_light+0x45/0x80\n [\u003cffffffff803ba50a\u003e] sys_sendto+0xea/0x120\n [\u003cffffffff80428e42\u003e] ? _spin_unlock_irqrestore+0x42/0x80\n [\u003cffffffff803134bc\u003e] ? __up_read+0x4c/0xb0\n [\u003cffffffff8024e0c6\u003e] ? up_read+0x26/0x30\n [\u003cffffffff8020b8bb\u003e] system_call_fastpath+0x16/0x1b\n\nicmp6_sk() is similar.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "13601cd8e44aab332cedff1d6dc10786ec890b7b",
      "tree": "8a0477e6b8a958f070db4c35c93b385e478d8a95",
      "parents": [
        "4cf7cb280e4fcfcd7ae7429e17d798d3a44087af"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Sun Aug 17 23:21:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 17 23:21:52 2008 -0700"
      },
      "message": "ipv6: Fix the return interface index when get it while no message is received.\n\nWhen get receiving interface index while no message is received,\nthe bounded device\u0027s index of the socket should be returned.\n\nRFC 3542:\n   Issuing getsockopt() for the above options will return the sticky\n   option value i.e., the value set with setsockopt().  If no sticky\n   option value has been set getsockopt() will return the following\n   values:\n\n   -  For the IPV6_PKTINFO option, it will return an in6_pktinfo\n      structure with ipi6_addr being in6addr_any and ipi6_ifindex being\n      zero.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "191cd582500f49b32a63040fedeebb0168c720af",
      "tree": "173ce9682d77798c6e4ca7e14af57ea2f46c55b8",
      "parents": [
        "0eb8b1fe9238ca4c1797e4c105d5790abda1726f"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Thu Aug 14 15:33:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 14 15:33:21 2008 -0700"
      },
      "message": "netns: Add network namespace argument to rt6_fill_node() and ipv6_dev_get_saddr()\n\nipv6_dev_get_saddr() blindly de-references dst_dev to get the network\nnamespace, but some callers might pass NULL.  Change callers to pass a\nnamespace pointer instead.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e0115e500fe9dd2ca11e6f92db9123204f1327a",
      "tree": "951ad51ba761be1bf8e79b54d9a7ff160a4720be",
      "parents": [
        "987c402ac31988f7ecdb38b657bcfeea5831d479"
      ],
      "author": {
        "name": "Brian Haley",
        "email": "brian.haley@hp.com",
        "time": "Wed Aug 13 01:58:57 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 13 01:58:57 2008 -0700"
      },
      "message": "ipv6: Fix OOPS, ip -f inet6 route get fec0::1, linux-2.6.26, ip6_route_output, rt6_fill_node+0x175\n\nAlexey Dobriyan wrote:\n\u003e On Thu, Aug 07, 2008 at 07:00:56PM +0200, John Gumb wrote:\n\u003e\u003e Scenario: no ipv6 default route set.\n\u003e \n\u003e\u003e # ip -f inet6 route get fec0::1\n\u003e\u003e\n\u003e\u003e BUG: unable to handle kernel NULL pointer dereference at 00000000\n\u003e\u003e IP: [\u003cc0369b85\u003e] rt6_fill_node+0x175/0x3b0\n\u003e\u003e EIP is at rt6_fill_node+0x175/0x3b0\n\u003e \n\u003e 0xffffffff80424dd3 is in rt6_fill_node (net/ipv6/route.c:2191).\n\u003e 2186                    } else\n\u003e 2187    #endif\n\u003e 2188                            NLA_PUT_U32(skb, RTA_IIF, iif);\n\u003e 2189            } else if (dst) {\n\u003e 2190                    struct in6_addr saddr_buf;\n\u003e 2191      \u003d\u003d\u003d\u003d\u003e         if (ipv6_dev_get_saddr(ip6_dst_idev(\u0026rt-\u003eu.dst)-\u003edev,\n\u003e\t\t\t\t\t       ^^^^^^^^^^^^^^^^^^^^^^^^\n\u003e\t\t\t\t\t\t\t\t\t\t\tNULL\n\u003e \n\u003e 2192                                           dst, 0, \u0026saddr_buf) \u003d\u003d 0)\n\u003e 2193                            NLA_PUT(skb, RTA_PREFSRC, 16, \u0026saddr_buf);\n\u003e 2194            }\n\nThe commit that changed this can\u0027t be reverted easily, but the patch\nbelow works for me.\n\nFix NULL de-reference in rt6_fill_node() when there\u0027s no IPv6 input\ndevice present in the dst entry.\n\nSigned-off-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d97106ea52aa57e63ff40d04479016836bbb5a4e",
      "tree": "5969603d7af02a5672f61c84c2017a6e064472f5",
      "parents": [
        "8123b421e8ed944671d7241323ed3198cccb4041"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Aug 09 00:35:05 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 09 00:35:05 2008 -0700"
      },
      "message": "udp: Drop socket lock for encapsulated packets\n\nThe socket lock is there to protect the normal UDP receive path.\nEncapsulation UDP sockets don\u0027t need that protection.  In fact\nthe locking is deadly for them as they may contain another UDP\npacket within, possibly with the same addresses.\n\nAlso the nested bit was copied from TCP.  TCP needs it because\nof accept(2) spawning sockets.  This simply doesn\u0027t apply to UDP\nso I\u0027ve removed it.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6edafaaf6f5e70ef1e620ff01bd6bacebe1e0718",
      "tree": "a470cdfd59d88ccf4acf4726db6b5d8d4df88da7",
      "parents": [
        "ee7af8264dafa0c8c76a8dc596803966c2e29ebc"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Wed Aug 06 23:50:04 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 06 23:50:04 2008 -0700"
      },
      "message": "tcp: Fix kernel panic when calling tcp_v(4/6)_md5_do_lookup\n\nIf the following packet flow happen, kernel will panic.\nMathineA\t\t\tMathineB\n\t\tSYN\n\t----------------------\u003e    \n        \tSYN+ACK\n\t\u003c----------------------\n\t\tACK(bad seq)\n\t----------------------\u003e\nWhen a bad seq ACK is received, tcp_v4_md5_do_lookup(skb-\u003esk, ip_hdr(skb)-\u003edaddr))\nis finally called by tcp_v4_reqsk_send_ack(), but the first parameter(skb-\u003esk) is \nNULL at that moment, so kernel panic happens.\nThis patch fixes this bug.\n\nOOPS output is as following:\n[  302.812793] IP: [\u003cc05cfaa6\u003e] tcp_v4_md5_do_lookup+0x12/0x42\n[  302.817075] Oops: 0000 [#1] SMP \n[  302.819815] Modules linked in: ipv6 loop dm_multipath rtc_cmos rtc_core rtc_lib pcspkr pcnet32 mii i2c_piix4 parport_pc i2c_core parport ac button ata_piix libata dm_mod mptspi mptscsih mptbase scsi_transport_spi sd_mod scsi_mod crc_t10dif ext3 jbd mbcache uhci_hcd ohci_hcd ehci_hcd [last unloaded: scsi_wait_scan]\n[  302.849946] \n[  302.851198] Pid: 0, comm: swapper Not tainted (2.6.27-rc1-guijf #5)\n[  302.855184] EIP: 0060:[\u003cc05cfaa6\u003e] EFLAGS: 00010296 CPU: 0\n[  302.858296] EIP is at tcp_v4_md5_do_lookup+0x12/0x42\n[  302.861027] EAX: 0000001e EBX: 00000000 ECX: 00000046 EDX: 00000046\n[  302.864867] ESI: ceb69e00 EDI: 1467a8c0 EBP: cf75f180 ESP: c0792e54\n[  302.868333]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068\n[  302.871287] Process swapper (pid: 0, ti\u003dc0792000 task\u003dc0712340 task.ti\u003dc0746000)\n[  302.875592] Stack: c06f413a 00000000 cf75f180 ceb69e00 00000000 c05d0d86 000016d0 ceac5400 \n[  302.883275]        c05d28f8 000016d0 ceb69e00 ceb69e20 681bf6e3 00001000 00000000 0a67a8c0 \n[  302.890971]        ceac5400 c04250a3 c06f413a c0792eb0 c0792edc cf59a620 cf59a620 cf59a634 \n[  302.900140] Call Trace:\n[  302.902392]  [\u003cc05d0d86\u003e] tcp_v4_reqsk_send_ack+0x17/0x35\n[  302.907060]  [\u003cc05d28f8\u003e] tcp_check_req+0x156/0x372\n[  302.910082]  [\u003cc04250a3\u003e] printk+0x14/0x18\n[  302.912868]  [\u003cc05d0aa1\u003e] tcp_v4_do_rcv+0x1d3/0x2bf\n[  302.917423]  [\u003cc05d26be\u003e] tcp_v4_rcv+0x563/0x5b9\n[  302.920453]  [\u003cc05bb20f\u003e] ip_local_deliver_finish+0xe8/0x183\n[  302.923865]  [\u003cc05bb10a\u003e] ip_rcv_finish+0x286/0x2a3\n[  302.928569]  [\u003cc059e438\u003e] dev_alloc_skb+0x11/0x25\n[  302.931563]  [\u003cc05a211f\u003e] netif_receive_skb+0x2d6/0x33a\n[  302.934914]  [\u003cd0917941\u003e] pcnet32_poll+0x333/0x680 [pcnet32]\n[  302.938735]  [\u003cc05a3b48\u003e] net_rx_action+0x5c/0xfe\n[  302.941792]  [\u003cc042856b\u003e] __do_softirq+0x5d/0xc1\n[  302.944788]  [\u003cc042850e\u003e] __do_softirq+0x0/0xc1\n[  302.948999]  [\u003cc040564b\u003e] do_softirq+0x55/0x88\n[  302.951870]  [\u003cc04501b1\u003e] handle_fasteoi_irq+0x0/0xa4\n[  302.954986]  [\u003cc04284da\u003e] irq_exit+0x35/0x69\n[  302.959081]  [\u003cc0405717\u003e] do_IRQ+0x99/0xae\n[  302.961896]  [\u003cc040422b\u003e] common_interrupt+0x23/0x28\n[  302.966279]  [\u003cc040819d\u003e] default_idle+0x2a/0x3d\n[  302.969212]  [\u003cc0402552\u003e] cpu_idle+0xb2/0xd2\n[  302.972169]  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n[  302.974274] Code: fc ff 84 d2 0f 84 df fd ff ff e9 34 fe ff ff 83 c4 0c 5b 5e 5f 5d c3 90 90 57 89 d7 56 53 89 c3 50 68 3a 41 6f c0 e8 e9 55 e5 ff \u003c8b\u003e 93 9c 04 00 00 58 85 d2 59 74 1e 8b 72 10 31 db 31 c9 85 f6 \n[  303.011610] EIP: [\u003cc05cfaa6\u003e] tcp_v4_md5_do_lookup+0x12/0x42 SS:ESP 0068:c0792e54\n[  303.018360] Kernel panic - not syncing: Fatal exception in interrupt\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "abf5cdb89d09ca981db10e1a85fd8531440165f2",
      "tree": "95c340f429fcb0c11d0af01fa840d84bb81895f5",
      "parents": [
        "eb49e63093498cd17382018495b8cfb5b4a679bd"
      ],
      "author": {
        "name": "Joakim Koskela",
        "email": "jookos@gmail.com",
        "time": "Wed Aug 06 02:40:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 06 02:40:25 2008 -0700"
      },
      "message": "ipsec: Interfamily IPSec BEET, ipv4-inner ipv6-outer\n\nHere\u0027s a revised version, based on Herbert\u0027s comments, of a fix for\nthe ipv4-inner, ipv6-outer interfamily ipsec beet mode. It fixes the\nnetwork header adjustment during interfamily, as well as makes sure\nthat we reserve enough room for the new ipv6 header if we might have\nsomething else as the inner family. Also, the ipv4 pseudo header\nconstruction was added.\n\nSigned-off-by: Joakim Koskela \u003cjookos@gmail.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1ca615fb816ba85dc765209a9b58ab82cc99bce0",
      "tree": "5a07a93992e5fc1051d10ad342ad2545b533ad6e",
      "parents": [
        "6d273f8d011c351c9603c1dbfeae2c7458edd30d"
      ],
      "author": {
        "name": "Rami Rosen",
        "email": "ramirose@gmail.com",
        "time": "Wed Aug 06 02:34:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 06 02:34:21 2008 -0700"
      },
      "message": "ipv6: replace dst_metric() with dst_mtu() in net/ipv6/route.c.\n\nThis patch replaces dst_metric() with dst_mtu() in net/ipv6/route.c.\n\nSigned-off-by: Rami Rosen \u003cramirose@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "283d07ac201ee9f8aa6dc6f7519436b48760baff",
      "tree": "73587f8b3a2ad3c2f7b5eb188edbd63577c7f638",
      "parents": [
        "f880374c2fe37aad3fa62253a4bc125d7a933aad"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sun Aug 03 21:15:59 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 03 21:15:59 2008 -0700"
      },
      "message": "ipv6: Do not drop packet if skb-\u003elocal_df is set to true\n\nThe old code will drop IPv6 packet if ipfragok is not set, since\nipfragok is obsoleted, will be instead by used skb-\u003elocal_df, so this\ncheck must be changed to skb-\u003elocal_df.\n\nThis patch fix this problem and not drop packet if skb-\u003elocal_df is\nset to true.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfb266c0ee0ea0b7bfa8189e3a3a80344dec6112",
      "tree": "89989c670a92740f511486dd60e5aa14397d44b1",
      "parents": [
        "1730554f253deb65fe5112c54b2f898d5318a328"
      ],
      "author": {
        "name": "Yang Hongyang",
        "email": "yanghy@cn.fujitsu.com",
        "time": "Sun Aug 03 18:16:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 03 18:16:15 2008 -0700"
      },
      "message": "ipv6: Fix the return value of Set Hop-by-Hop options header with NULL data pointer\n\nWhen Set Hop-by-Hop options header with NULL data \npointer and optlen is not zero use setsockopt(),\nthe kernel successfully return 0 instead of \nreturn error EINVAL or EFAULT.\n\nThis patch fix the problem.\n\nSigned-off-by: Yang Hongyang \u003cyanghy@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1730554f253deb65fe5112c54b2f898d5318a328",
      "tree": "7e729db3456bd61fa477fc94e38586c97a3beabb",
      "parents": [
        "adf044c8778de98dae29c5ce9973b7e43964674f"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Sun Aug 03 18:13:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 03 18:13:44 2008 -0700"
      },
      "message": "ipv6: syncookies: free reqsk on xfrm_lookup error\n\ncookie_v6_check() did not call reqsk_free() if xfrm_lookup() fails,\nleaking the request sock.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "00b1304c4ca81dd893973cc620b87a5c3ff3f660",
      "tree": "e66f024d536f0711508585ff0db344ec3bbdac57",
      "parents": [
        "4a7b61d23505854dff7d04cc11944566cffdd0ee"
      ],
      "author": {
        "name": "Adam Langley",
        "email": "agl@imperialviolet.org",
        "time": "Thu Jul 31 21:36:07 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 21:36:07 2008 -0700"
      },
      "message": "tcp: MD5: Fix IPv6 signatures\n\nReported by Stefanos Harhalakis; although 2.6.27-rc1 talks to itself using IPv6\nTCP MD5 packets just fine, Stefanos noted that tcpdump claimed that the\nsignatures were invalid.\n\nI broke this in 49a72dfb8814c2d65bd9f8c9c6daf6395a1ec58d (\"tcp: Fix MD5\nsignatures for non-linear skbs\"), it was just a typo.\n\nNote that tcpdump will still sometimes claim that the signatures are incorrect.\nA patch to tcpdump has been submitted for this[1].\n\n[1] http://tinyurl.com/6a4fl2\n\nSigned-off-by: Adam Langley \u003cagl@imperialviolet.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90b7e1120bb43ffaabb88d28f80a0c2e13167b15",
      "tree": "5264787eb3c303186cff15bfd6b7ebef2a3ecb7b",
      "parents": [
        "77e2f14f71d68d05945f1d30ca55b5194d6ab1ce"
      ],
      "author": {
        "name": "Adam Langley",
        "email": "agl@imperialviolet.org",
        "time": "Thu Jul 31 20:49:48 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:49:48 2008 -0700"
      },
      "message": "tcp: MD5: Fix MD5 signatures on certain ACK packets\n\nI noticed, looking at tcpdumps, that timewait ACKs were getting sent\nwith an incorrect MD5 signature when signatures were enabled.\n\nI broke this in 49a72dfb8814c2d65bd9f8c9c6daf6395a1ec58d (\"tcp: Fix\nMD5 signatures for non-linear skbs\"). I didn\u0027t take into account that\nthe skb passed to tcp_*_send_ack was the inbound packet, thus the\nsource and dest addresses need to be swapped when calculating the MD5\npseudoheader.\n\nSigned-off-by: Adam Langley \u003cagl@imperialviolet.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77e2f14f71d68d05945f1d30ca55b5194d6ab1ce",
      "tree": "edbc4034a01f2e037a1be42fc2d39f33d1b44d3d",
      "parents": [
        "bc4768eb081a67642c0c44c34ea597c273bdedcb"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Jul 31 20:46:47 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 31 20:46:47 2008 -0700"
      },
      "message": "ipv6: Fix ip6_xmit to send fragments if ipfragok is true\n\nSCTP used ip6_xmit() to send fragments after received ICMP packet too\nbig message. But while send packet used ip6_xmit, the skb-\u003elocal_df is\nnot initialized. So when skb if enter ip6_fragment(), the following\ncode will discard the skb.\n\nip6_fragment(...)\n{\n    if (!skb-\u003elocal_df) {\n        ...\n        return -EMSGSIZE;\n    }\n    ...\n}\n\nSCTP do the following step:\n1. send packet ip6_xmit(skb, ipfragok\u003d0)\n2. received ICMP packet too big message\n3. if PMTUD_ENABLE: ip6_xmit(skb, ipfragok\u003d1)\n\nThis patch fixed the problem by set local_df if ipfragok is true.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "17ef51fce03758736e9051c4360eca237dd0aaeb",
      "tree": "db3991bf741952e5ba516ee19e18e5ce5fd6f0cd",
      "parents": [
        "785957d3e8c6fb37b18bf671923a76dbd8240025"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Wed Jul 30 03:12:31 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:27:52 2008 -0700"
      },
      "message": "ipv6: Fix useless proc net sockstat6 removal\n\nThis call is no longer needed, sockstat6 is per namespace so it is\nremoved at the namespace subsystem destruction.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "785957d3e8c6fb37b18bf671923a76dbd8240025",
      "tree": "59f089e4bd109ad9d896c6e6a0f1699f42a34136",
      "parents": [
        "8d50b53d66a8a6ae41bafbdcabe401467803f33a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:03:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:27:25 2008 -0700"
      },
      "message": "tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n\nFrom a report by Matti Aarnio, and preliminary patch by Adam Langley.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "4a36702e016947a0ce6c0c024673bb5b16d3f618"
}
