)]}'
{
  "log": [
    {
      "commit": "b82d1bb4fd206ed305f9e955eeffc4a678149442",
      "tree": "b0790dcc52f9b070e0b646eb6c0b7a16ac8c4a1a",
      "parents": [
        "3f192795cf1a0098df7bd655f7a72eee26bd63c3"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 27 02:20:08 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 27 02:20:08 2011 -0400"
      },
      "message": "tcp: unalias tcp_skb_cb flags and ip_dsfield\n\nstruct tcp_skb_cb contains a \"flags\" field containing either tcp flags\nor IP dsfield depending on context (input or output path)\n\nIntroduce ip_dsfield to make the difference clear and ease maintenance.\nIf later we want to save space, we can union flags/ip_dsfield\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8decf868790b48a727d7e7ca164f2bcd3c1389c0",
      "tree": "b759a5f861f842af7ea76f9011b579d06e9d5508",
      "parents": [
        "3fc72370186be2f9d4d6ef06d99e1caa5d92c564",
        "d93dc5c4478c1fd5de85a3e8aece9aad7bbae044"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:davem330/net\n\nConflicts:\n\tMAINTAINERS\n\tdrivers/net/Kconfig\n\tdrivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c\n\tdrivers/net/ethernet/broadcom/tg3.c\n\tdrivers/net/wireless/iwlwifi/iwl-pci.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c\n\tdrivers/net/wireless/rt2x00/rt2800usb.c\n\tdrivers/net/wireless/wl12xx/main.c\n"
    },
    {
      "commit": "8603e33d01cb6bd32de46b2596fe47f0c4df6c12",
      "tree": "38460cb5479a4df4d3c09626998c0294767583b7",
      "parents": [
        "fe7d189d4a2ccbb3590b1da97a3f6a83fc2efd80"
      ],
      "author": {
        "name": "Roy Li",
        "email": "rongqing.li@windriver.com",
        "time": "Tue Sep 20 15:10:16 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 20 15:10:16 2011 -0400"
      },
      "message": "ipv6: fix a possible double free\n\nWhen calling snmp6_alloc_dev fails, the snmp6 relevant memory\nare freed by snmp6_alloc_dev. Calling in6_dev_finish_destroy\nwill free these memory twice.\n\nDouble free will lead that undefined behavior occurs.\n\nSigned-off-by: Roy Li \u003crongqing.li@windriver.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d24f22f3df9ac3f3af95e850df0b576d41bd3cfe",
      "tree": "db5cf4d94fa9b56fafa677dda417fc1f9a919cc7",
      "parents": [
        "46151ae81758f05086e17fd4e4da129afe100f93"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 20 14:50:00 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 20 14:50:00 2011 -0400"
      },
      "message": "ip6_tunnel: add optional fwmark inherit\n\nAdd IP6_TNL_F_USE_ORIG_FWMARK to ip6_tunnel, so that ip6_tnl_xmit2()\nmakes a route lookup taking into account skb-\u003efwmark and doesnt cache\nlookup result.\n\nThis permits more flexibility in policies and firewall setups.\n\nTo setup such a tunnel, \"fwmark inherit\" option should be added to \"ip\n-f inet6 tunnel\" command.\n\nReported-by: Anders Franzen \u003cAnders.Franzen@ericsson.com\u003e\nCC: Hans Schillström \u003chans.schillstrom@ericsson.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e2ec639173f325977818c45011ee176ef2b11f6",
      "tree": "2b194fa7556bcde37cdc4d28042a5bdf86d0f2ff",
      "parents": [
        "34b8686d278f00fb16234e74be44c253d6d6b676"
      ],
      "author": {
        "name": "Yan, Zheng",
        "email": "zheng.z.yan@intel.com",
        "time": "Mon Sep 05 21:34:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 17 00:57:26 2011 -0400"
      },
      "message": "ipv6: don\u0027t use inetpeer to store metrics for routes.\n\nCurrent IPv6 implementation uses inetpeer to store metrics for\nroutes. The problem of inetpeer is that it doesn\u0027t take subnet\nprefix length in to consideration. If two routes have the same\naddress but different prefix length, they share same inetpeer.\nSo changing metrics of one route also affects the other. The\nfix is to allocate separate metrics storage for each route.\n\nSigned-off-by: Zheng Yan \u003czheng.z.yan@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "026359bc6eddfdc2d2e684bf0b51691649b90f33",
      "tree": "d1fbc10d28a1f1084ca0dd4f4f746aa1d9becaa2",
      "parents": [
        "c1aabdf379bc2feeb0df7057ed5bad96f492133e"
      ],
      "author": {
        "name": "Tore Anderson",
        "email": "tore@fud.no",
        "time": "Sun Aug 28 23:47:33 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 16 19:14:41 2011 -0400"
      },
      "message": "ipv6: Send ICMPv6 RSes only when RAs are accepted\n\nThis patch improves the logic determining when to send ICMPv6 Router\nSolicitations, so that they are 1) always sent when the kernel is\naccepting Router Advertisements, and 2) never sent when the kernel is\nnot accepting RAs. In other words, the operational setting of the\n\"accept_ra\" sysctl is used.\n\nThe change also makes the special \"Hybrid Router\" forwarding mode\n(\"forwarding\" sysctl set to 2) operate exactly the same as the standard\nRouter mode (forwarding\u003d1). The only difference between the two was\nthat RSes was being sent in the Hybrid Router mode only. The sysctl\ndocumentation describing the special Hybrid Router mode has therefore\nbeen removed.\n\nRationale for the change:\n\nCurrently, the value of forwarding sysctl is the only thing determining\nwhether or not to send RSes. If it has the value 0 or 2, they are sent,\notherwise they are not. This leads to inconsistent behaviour in the\nfollowing cases:\n\n* accept_ra\u003d0, forwarding\u003d0\n* accept_ra\u003d0, forwarding\u003d2\n* accept_ra\u003d1, forwarding\u003d2\n* accept_ra\u003d2, forwarding\u003d1\n\nIn the first three cases, the kernel will send RSes, even though it will\nnot accept any RAs received in reply. In the last case, it will not send\nany RSes, even though it will accept and process any RAs received. (Most\nrouters will send unsolicited RAs periodically, so suppressing RSes in\nthe last case will merely delay auto-configuration, not prevent it.)\n\nAlso, it is my opinion that having the forwarding sysctl control RS\nsending behaviour (completely independent of whether RAs are being\naccepted or not) is simply not what most users would intuitively expect\nto be the case.\n\nSigned-off-by: Tore Anderson \u003ctore@fud.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52b9aca7ae8726d1fb41b97dd1d243d107fef11b",
      "tree": "7acee111840bd25183513e9bde08e939ffd57be8",
      "parents": [
        "7756332f5b64c9c1535712b9679792e8bd4f0019",
        "e2faeec2de9e2c73958e6ea6065dde1e8cd6f3a2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 16 01:09:02 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 16 01:09:02 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of ../netdev/\n"
    },
    {
      "commit": "946cedccbd7387488d2cee5da92cdfeb28d2e670",
      "tree": "fbb0d9c8dc11d6efee64e2a077a4951831932058",
      "parents": [
        "27e95a8c670e0c587990ec5b9a87a7ea17873d28"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Aug 30 03:21:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 15 14:49:43 2011 -0400"
      },
      "message": "tcp: Change possible SYN flooding messages\n\n\"Possible SYN flooding on port xxxx \" messages can fill logs on servers.\n\nChange logic to log the message only once per listener, and add two new\nSNMP counters to track :\n\nTCPReqQFullDoCookies : number of times a SYNCOOKIE was replied to client\n\nTCPReqQFullDrop : number of times a SYN request was dropped because\nsyncookies were not enabled.\n\nBased on a prior patch from Tom Herbert, and suggestions from David.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "785824165508a65478474f0c87f6b8c3ad048c62",
      "tree": "2b3ef81b4439cf682638aa504e29f37ef2b6da96",
      "parents": [
        "ec0506dbe4e240ecd4c32bf74c84a88ce1ddb414",
        "768b1031dc9f3eabe3e9f603e33617a0215c12a8"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 30 17:43:56 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 30 17:43:56 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "ec0506dbe4e240ecd4c32bf74c84a88ce1ddb414",
      "tree": "d8eb6a77c2f611d99a8c8b6576389c071bf5890a",
      "parents": [
        "0f43dd546d991ca260d8a72d07f617907c508de8"
      ],
      "author": {
        "name": "Maciej Żenczykowski",
        "email": "maze@google.com",
        "time": "Sun Aug 28 12:35:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 30 17:39:01 2011 -0400"
      },
      "message": "net: relax PKTINFO non local ipv6 udp xmit check\n\nAllow transparent sockets to be less restrictive about\nthe source ip of ipv6 udp packets being sent.\n\nGoogle-Bug-Id: 5018138\nSigned-off-by: Maciej Żenczykowski \u003cmaze@google.com\u003e\nCC: \"Erik Kline\" \u003cek@google.com\u003e\nCC: \"Lorenzo Colitti\" \u003clorenzo@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6675233f9015d3c0460c8aab53ed9b99d915c64",
      "tree": "3d1b9b71059be24fe3a35411eecc62000bba5abc",
      "parents": [
        "9823d9ff483af4ce8804a9eb69600ca739cd1f58"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Tue Aug 30 15:01:20 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 30 15:01:20 2011 +0200"
      },
      "message": "netfilter: nf_queue: reject NF_STOLEN verdicts from userspace\n\nA userspace listener may send (bogus) NF_STOLEN verdict, which causes skb leak.\n\nThis problem was previously fixed via\n64507fdbc29c3a622180378210ecea8659b14e40 (netfilter:\nnf_queue: fix NF_STOLEN skb leak) but this had to be reverted because\nNF_STOLEN can also be returned by a netfilter hook when iterating the\nrules in nf_reinject.\n\nReject userspace NF_STOLEN verdict, as suggested by Michal Miroslaw.\n\nThis is complementary to commit fad54440438a7c231a6ae347738423cbabc936d9\n(netfilter: avoid double free in nf_reinject).\n\nCc: Julian Anastasov \u003cja@ssi.bg\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "408dadf03fe365f12f85d5c3d959f4bb888b9f3e",
      "tree": "c88f21b532c8c1d8f20f37a097ceaad93ee75741",
      "parents": [
        "aff65da0f1be5daec44231972b6b5fc45bfa7a58"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "Ian.Campbell@citrix.com",
        "time": "Mon Aug 22 23:45:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 24 17:52:12 2011 -0700"
      },
      "message": "net: ipv6: convert to SKB frag APIs\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\u003e\nCc: \"Pekka Savola (ipv6)\" \u003cpekkas@netcore.fi\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e05c4ad3ed874ee4f5e2c969e55d318ec654332c",
      "tree": "d8563c03897fe5c84279327471feea8e2ef3ccca",
      "parents": [
        "814fd609fa98f3667974d8c27c4d75ef4ce041ea"
      ],
      "author": {
        "name": "Yan, Zheng",
        "email": "zheng.z.yan@intel.com",
        "time": "Tue Aug 23 22:54:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 24 17:46:15 2011 -0700"
      },
      "message": "mcast: Fix source address selection for multicast listener report\n\nShould check use count of include mode filter instead of total number\nof include mode filters.\n\nSigned-off-by: Zheng Yan \u003czheng.z.yan@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "823dcd2506fa369aeb8cbd26da5663efe2fda9a9",
      "tree": "853b3e3c05f0b9ee1b5df8464db19b7acc57150c",
      "parents": [
        "eaa36660de7e174498618d69d7277d44a2f24c3d",
        "98e77438aed3cd3343cbb86825127b1d9d2bea33"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 20 10:39:12 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 20 10:39:12 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "98e77438aed3cd3343cbb86825127b1d9d2bea33",
      "tree": "a26022d2d359c25096c39a59cdd01ecf6aea62bb",
      "parents": [
        "2d5b2c5ca0d3ebe707386b3add365496460cf918"
      ],
      "author": {
        "name": "Daniel Baluta",
        "email": "dbaluta@ixiacom.com",
        "time": "Fri Aug 19 03:19:07 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 19 03:19:07 2011 -0700"
      },
      "message": "ipv6: Fix ipv6_getsockopt for IPV6_2292PKTOPTIONS\n\nIPV6_2292PKTOPTIONS is broken for 32-bit applications running\nin COMPAT mode on 64-bit kernels.\n\nThe same problem was fixed for IPv4 with the patch:\nipv4: Fix ip_getsockopt for IP_PKTOPTIONS,\ncommit dd23198e58cd35259dd09e8892bbdb90f1d57748\n\nSigned-off-by: Sorin Dumitru \u003csdumitru@ixiacom.com\u003e\nSigned-off-by: Daniel Baluta \u003cdbaluta@ixiacom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bdeab991918663aed38757904219e8398214334c",
      "tree": "bc6c02da7ed88e3e568677b4a35fb4e55de363de",
      "parents": [
        "792df22cd0499b4e662d4618b0008fdcfef8b04e"
      ],
      "author": {
        "name": "Tom Herbert",
        "email": "therbert@google.com",
        "time": "Sun Aug 14 19:45:55 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 17 20:06:03 2011 -0700"
      },
      "message": "rps: Add flag to skb to indicate rxhash is based on L4 tuple\n\nThe l4_rxhash flag was added to the skb structure to indicate\nthat the rxhash value was computed over the 4 tuple for the\npacket which includes the port information in the encapsulated\ntransport packet.  This is used by the stack to preserve the\nrxhash value in __skb_rx_tunnel.\n\nSigned-off-by: Tom Herbert \u003ctherbert@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c2bceb3d7f145af5a0916bea700f2f9d380901ea",
      "tree": "90a46a5155a4d9b23791426716ec596e494f5fd7",
      "parents": [
        "588dc91151d99e9307c2f9a8468453274fe43ecd"
      ],
      "author": {
        "name": "Lionel Elie Mamane",
        "email": "lionel@mamane.lu",
        "time": "Sat Aug 13 14:04:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 16 16:28:55 2011 -0700"
      },
      "message": "sit tunnels: propagate IPv6 transport class to IPv4 Type of Service\n\nsit tunnels (IPv6 tunnel over IPv4) do not implement the \"tos inherit\"\ncase to copy the IPv6 transport class byte from the inner packet to\nthe IPv4 type of service byte in the outer packet. By contrast, ipip\ntunnels and GRE tunnels do.\n\nThis patch, adapted from the similar code in net/ipv4/ipip.c and\nnet/ipv4/ip_gre.c, implements that.\n\nThis patch applies to 3.0.1, and has been tested on that version.\n\nSigned-off-by: Lionel Elie Mamane \u003clionel@mamane.lu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33d480ce6d43326e2541fd79b3548858a174ec3c",
      "tree": "c938ee8c07a2e0f33178069b55439a54188f38fa",
      "parents": [
        "cd28ca0a3dd17c68d24b839602a0e6268ad28b5d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Aug 11 19:30:52 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 12 02:55:28 2011 -0700"
      },
      "message": "net: cleanup some rcu_dereference_raw\n\nRCU api had been completed and rcu_access_pointer() or\nrcu_dereference_protected() are better than generic\nrcu_dereference_raw()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0e3d0689da401f7d1981c2777a714ba295ea5ff",
      "tree": "a8b2311c0cf7573c22d99c6917c08e77b225d637",
      "parents": [
        "56c07271307b4a20802005692b2b70dfe13d72e8"
      ],
      "author": {
        "name": "Mike Waychison",
        "email": "mikew@google.com",
        "time": "Wed Aug 10 21:59:57 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 10 21:59:57 2011 -0700"
      },
      "message": "tcp: initialize variable ecn_ok in syncookies path\n\nUsing a gcc 4.4.3, warnings are emitted for a possibly uninitialized use\nof ecn_ok.\n\nThis can happen if cookie_check_timestamp() returns due to not having\nseen a timestamp.  Defaulting to ecn off seems like a reasonable thing\nto do in this case, so initialized ecn_ok to false.\n\nSigned-off-by: Mike Waychison \u003cmikew@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "19fd61785a580c60cba900c5171bfadb57dd5056",
      "tree": "1e491fb014be0dc03f4b6755bb94e73afd38c455",
      "parents": [
        "57569d0e12eaf31717e295960cd2a26f626c8e5b",
        "8028837d71ba9904b17281b40f94b93e947fbe38"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 07 23:20:26 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 07 23:20:26 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "6e5714eaf77d79ae1c8b47e3e040ff5411b717ec",
      "tree": "30bd0d7a6a0a6ff0ace6da1835ae7b7167cce5e4",
      "parents": [
        "bc0b96b54a21246e377122d54569eef71cec535f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 03 20:50:44 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 06 18:33:19 2011 -0700"
      },
      "message": "net: Compute protocol sequence numbers and fragment IDs using MD5.\n\nComputers have become a lot faster since we compromised on the\npartial MD4 hash which we use currently for performance reasons.\n\nMD5 is a much safer choice, and is inline with both RFC1948 and\nother ISS generators (OpenBSD, Solaris, etc.)\n\nFurthermore, only having 24-bits of the sequence number be truly\nunpredictable is a very serious limitation.  So the periodic\nregeneration and 8-bit counter have been removed.  We compute and\nuse a full 32-bit sequence number.\n\nFor ipv6, DCCP was found to use a 32-bit truncated initial sequence\nnumber (it needs 43-bits) and that is fixed here as well.\n\nReported-by: Dan Kaminsky \u003cdan@doxpara.com\u003e\nTested-by: Willy Tarreau \u003cw@1wt.eu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c15fea2d8ca834dae491339c47e4fb3c81428190",
      "tree": "bb0e318d09366001552d13efbbe128564956adde",
      "parents": [
        "20e72a44098641f0c4de34a31287a93e006afb5b"
      ],
      "author": {
        "name": "Max Matveev",
        "email": "makc@redhat.com",
        "time": "Fri Aug 05 03:56:30 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 05 03:56:30 2011 -0700"
      },
      "message": "ipv6: check for IPv4 mapped addresses when connecting IPv6 sockets\n\nWhen support for binding to \u0027mapped INADDR_ANY (::ffff.0.0.0.0)\u0027 was added\nin 0f8d3c7ac3693d7b6c731bf2159273a59bf70e12 the rest of the code\nwasn\u0027t told so now it\u0027s possible to bind IPv6 datagram socket to\n::ffff.0.0.0.0, connect it to another IPv4 address and it will all\nwork except for getsockhame() which does not return the local address\nas expected.\n\nTo give getsockname() something to work with check for \u0027mapped INADDR_ANY\u0027\nwhen connecting and update the in-core source addresses appropriately.\n\nSigned-off-by: Max Matveev \u003cmakc@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f2c31e32b378a6653f8de606149d963baf11d7d3",
      "tree": "4eeb8075a93520935381a75514f309228e6824c0",
      "parents": [
        "28f4881cbf9ce285edfc245a8990af36d21c062f"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jul 29 19:00:53 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 03 03:34:12 2011 -0700"
      },
      "message": "net: fix NULL dereferences in check_peer_redir()\n\nGergely Kalman reported crashes in check_peer_redir().\n\nIt appears commit f39925dbde778 (ipv4: Cache learned redirect\ninformation in inetpeer.) added a race, leading to possible NULL ptr\ndereference.\n\nSince we can now change dst neighbour, we should make sure a reader can\nsafely use a neighbour.\n\nAdd RCU protection to dst neighbour, and make sure check_peer_redir()\ncan be called safely by different cpus in parallel.\n\nAs neighbours are already freed after one RCU grace period, this patch\nshould not add typical RCU penalty (cache cold effects)\n\nMany thanks to Gergely for providing a pretty report pointing to the\nbug.\n\nReported-by: Gergely Kalman \u003csynapse@hippy.csoma.elte.hu\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a9b3cd7f323b2e57593e7215362a7b02fc933e3a",
      "tree": "eba1741956aef3015d5b1a07253bf93c4c1bc7df",
      "parents": [
        "76f793e3a47139d340185cbc1a314740c09b13d3"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 01 16:19:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Aug 02 04:29:23 2011 -0700"
      },
      "message": "rcu: convert uses of rcu_assign_pointer(x, NULL) to RCU_INIT_POINTER\n\nWhen assigning a NULL value to an RCU protected pointer, no barrier\nis needed. The rcu_assign_pointer, used to handle that but will soon\nchange to not handle the special case.\n\nConvert all rcu_assign_pointer of NULL value.\n\n//smpl\n@@ expression P; @@\n\n- rcu_assign_pointer(P, NULL)\n+ RCU_INIT_POINTER(P, NULL)\n\n// \u003c/smpl\u003e\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nAcked-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "76f793e3a47139d340185cbc1a314740c09b13d3",
      "tree": "9abd3f1753cb10d328cc87db365910ef2181ea69",
      "parents": [
        "79f88ee9836d482891ba41b1a553e2baacf31b02"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jul 26 13:50:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 18:05:00 2011 -0700"
      },
      "message": "ipv6: updates to privacy addresses per RFC 4941.\n\nUpdate the code to handle some of the differences between\nRFC 3041 and RFC 4941, which obsoletes it. Also a couple\nof janitorial fixes.\n\n- Allow router advertisements to increase the lifetime of\n  temporary addresses. This was not allowed by RFC 3041,\n  but is specified by RFC 4941. It is useful when RA\n  lifetimes are lower than TEMP_{VALID,PREFERRED}_LIFETIME:\n  in this case, the previous code would delete or deprecate\n  addresses prematurely.\n\n- Change the default of MAX_RETRY to 3 per RFC 4941.\n\n- Add a comment to clarify that the preferred and valid\n  lifetimes in inet6_ifaddr are relative to the timestamp.\n\n- Shorten lines to 80 characters in a couple of places.\n\nSigned-off-by: Lorenzo Colitti \u003clorenzo@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "89b0212697e92bc59a021a2338cd8c09f919325c",
      "tree": "633279786602d3677ea5c4959528aa00219afed2",
      "parents": [
        "897dc80b951e996ba4d26c0038e81a505b92aec1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 28 04:32:25 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 00:12:00 2011 -0700"
      },
      "message": "ip6tnl: avoid touching dst refcount in ip6_tnl_xmit2()\n\nEven using percpu stats, we still hit tunnel dst_entry refcount in\nip6_tnl_xmit2()\n\nSince we are in RCU locked section, we can use skb_dst_set_noref() and\navoid these atomic operations, leaving dst shared on cpus.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "897dc80b951e996ba4d26c0038e81a505b92aec1",
      "tree": "867cca9dafcf3d89fa30a04a254a2d1cc3220cba",
      "parents": [
        "d14730b8e9117c9b77aacd391c049b50163e9b61"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 28 04:00:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 00:12:00 2011 -0700"
      },
      "message": "ipv6: avoid a dst_entry refcount change in ipv6_destopt_rcv()\n\nipv6_destopt_rcv() runs with rcu_read_lock(), so there is no need to\ntake a temporay reference on dst_entry, even if skb is freed by\nip6_parse_tlv()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d14730b8e9117c9b77aacd391c049b50163e9b61",
      "tree": "cfccf8574eb43722d2c1c6829d90305abe18c69f",
      "parents": [
        "cfdf76474e1d8a56ac6cfae39f8559cfe9dfd7fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 28 03:43:47 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 00:12:00 2011 -0700"
      },
      "message": "ipv6: use RCU in inet6_csk_xmit()\n\nUse RCU to avoid changing dst_entry refcount in fast path.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfdf76474e1d8a56ac6cfae39f8559cfe9dfd7fd",
      "tree": "d5fe707a1e8018643cf82f0272e651ceda53a119",
      "parents": [
        "ab1594e92e6765fd4af316f130eea8f5c920823d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jul 27 21:13:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 01 00:12:00 2011 -0700"
      },
      "message": "ipv6: some RCU conversions\n\nICMP and ND are not fast path, but still we can avoid changing idev\nrefcount, using RCU.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91c66c6893a3e2bb8a88a30cb76007d5d49d32c9",
      "tree": "1f37d40b668d46f305dd9088737c72ece4a91533",
      "parents": [
        "00fe1ae91e0d69e52e8212d23cd3ecc74a7259a0"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Fri Jul 29 16:38:49 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jul 29 16:38:49 2011 +0200"
      },
      "message": "netfilter: ip_queue: Fix small leak in ipq_build_packet_message()\n\nipq_build_packet_message() in net/ipv4/netfilter/ip_queue.c and\nnet/ipv6/netfilter/ip6_queue.c contain a small potential mem leak as\nfar as I can tell.\n\nWe allocate memory for \u0027skb\u0027 with alloc_skb() annd then call\n nlh \u003d NLMSG_PUT(skb, 0, 0, IPQM_PACKET, size - sizeof(*nlh));\n\nNLMSG_PUT is a macro\n NLMSG_PUT(skb, pid, seq, type, len) \\\n  \t\tNLMSG_NEW(skb, pid, seq, type, len, 0)\n\nthat expands to NLMSG_NEW, which is also a macro which expands to:\n NLMSG_NEW(skb, pid, seq, type, len, flags) \\\n  \t({\tif (unlikely(skb_tailroom(skb) \u003c (int)NLMSG_SPACE(len))) \\\n  \t\t\tgoto nlmsg_failure; \\\n  \t\t__nlmsg_put(skb, pid, seq, type, len, flags); })\n\nIf we take the true branch of the \u0027if\u0027 statement and \u0027goto\nnlmsg_failure\u0027, then we\u0027ll, at that point, return from\nipq_build_packet_message() without having assigned \u0027skb\u0027 to anything\nand we\u0027ll leak the memory we allocated for it when it goes out of\nscope.\n\nFix this by placing a \u0027kfree(skb)\u0027 at \u0027nlmsg_failure\u0027.\n\nI admit that I do not know how likely this to actually happen or even\nif there\u0027s something that guarantees that it will never happen - I\u0027m\nnot that familiar with this code, but if that is so, I\u0027ve not been\nable to spot it.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "d5eab9152a3b4ce962c02ad0a0e4d0ec94aadd92",
      "tree": "3147f8de2805da0f026ea18103a9be46f3bc2a18",
      "parents": [
        "6140333d3656f62ac7e6a5af87e7fe92cfb8d655",
        "a051294423b015c5c89f2ed78f7fe0893b775098"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 28 05:58:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 28 05:58:19 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (32 commits)\n  tg3: Remove 5719 jumbo frames and TSO blocks\n  tg3: Break larger frags into 4k chunks for 5719\n  tg3: Add tx BD budgeting code\n  tg3: Consolidate code that calls tg3_tx_set_bd()\n  tg3: Add partial fragment unmapping code\n  tg3: Generalize tg3_skb_error_unmap()\n  tg3: Remove short DMA check for 1st fragment\n  tg3: Simplify tx bd assignments\n  tg3: Reintroduce tg3_tx_ring_info\n  ASIX: Use only 11 bits of header for data size\n  ASIX: Simplify condition in rx_fixup()\n  Fix cdc-phonet build\n  bonding: reduce noise during init\n  bonding: fix string comparison errors\n  net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared\n  net: add IFF_SKB_TX_SHARED flag to priv_flags\n  net: sock_sendmsg_nosec() is static\n  forcedeth: fix vlans\n  gianfar: fix bug caused by 87c288c6e9aa31720b72e2bc2d665e24e1653c3e\n  gro: Only reset frag0 when skb can be pulled\n  ...\n"
    },
    {
      "commit": "60063497a95e716c9a689af3be2687d261f115b4",
      "tree": "6ce0d68db76982c53df46aee5f29f944ebf2c320",
      "parents": [
        "148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Tue Jul 26 16:09:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 16:49:47 2011 -0700"
      },
      "message": "atomic: use \u003clinux/atomic.h\u003e\n\nThis allows us to move duplicated code in \u003casm/atomic.h\u003e\n(atomic_inc_not_zero() for now) to \u003clinux/atomic.h\u003e\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nReviewed-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32019e651c6fcee6bad6b6adb171feea5af0d16b",
      "tree": "67a1eba02e87c75e382648c0853c47ee8c2aec03",
      "parents": [
        "5ec9e63c1c90074d2986f1102acbd1572eb827af"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sun Jul 24 11:44:34 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 16:16:00 2011 -0700"
      },
      "message": "ipv6: Do not leave router anycast address for /127 prefixes.\n\nOriginal commit 2bda8a0c8af... \"Disable router anycast\naddress for /127 prefixes\" says:\n\n|   No need for matching code in addrconf_leave_anycast() as it\n|   will silently ignore any attempt to leave an unknown anycast\n|   address.\n\nAfter analysis, because 1) we may add two or more prefixes on the\nsame interface, or 2)user may have manually joined that anycast,\nwe may hit chances to have anycast address which as if we had\ngenerated one by /127 prefix and we should not leave from subnet-\nrouter anycast address unconditionally.\n\nCC: Bjørn Mork \u003cbjorn@mork.no\u003e\nCC: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87c48fa3b4630905f98268dde838ee43626a060c",
      "tree": "1374b52ed0514682f836cfa0a6a683eb549c9613",
      "parents": [
        "21efcfa0ff27776902a8a15e810147be4d937d69"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 21 21:25:58 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 21:25:58 2011 -0700"
      },
      "message": "ipv6: make fragment identifications less predictable\n\nIPv6 fragment identification generation is way beyond what we use for\nIPv4 : It uses a single generator. Its not scalable and allows DOS\nattacks.\n\nNow inetpeer is IPv6 aware, we can use it to provide a more secure and\nscalable frag ident generator (per destination, instead of system wide)\n\nThis patch :\n1) defines a new secure_ipv6_id() helper\n2) extends inet_getid() to provide 32bit results\n3) extends ipv6_select_ident() with a new dest parameter\n\nReported-by: Fernando Gont \u003cfernando@gont.com.ar\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21efcfa0ff27776902a8a15e810147be4d937d69",
      "tree": "a0ab4f071d257c4faa0bfa52051b4039ce3d1f96",
      "parents": [
        "61463a30f65225e19e68f59dbd7b888bb308ec99"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jul 19 20:18:36 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 21 21:24:25 2011 -0700"
      },
      "message": "ipv6: unshare inetpeers\n\nWe currently cow metrics a bit too soon in IPv6 case : All routes are\ntied to a single inetpeer entry.\n\nChange ip6_rt_copy() to get destination address as second argument, so\nthat we fill rt6i_dst before the dst_copy_metrics() call.\n\nicmp6_dst_alloc() must set rt6i_dst before calling dst_metric_set(), or\nelse the cow is done while rt6i_dst is still NULL.\n\nIf orig route points to readonly metrics, we can share the pointer\ninstead of performing the memory allocation and copy.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3aaeb38c40e5a6c08dd31a1b64da65c4352be36",
      "tree": "1c17b41d11edc7a7b3477a294cba440f2a14796c",
      "parents": [
        "69cce1d1404968f78b177a0314f5822d5afdbbfb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 00:40:17 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 00:40:17 2011 -0700"
      },
      "message": "net: Add -\u003eneigh_lookup() operation to dst_ops\n\nIn the future dst entries will be neigh-less.  In that environment we\nneed to have an easy transition point for current users of\ndst-\u003eneighbour outside of the packet output fast path.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69cce1d1404968f78b177a0314f5822d5afdbbfb",
      "tree": "26223264fd69ea8078d0013fd5a76eb7aeb04c12",
      "parents": [
        "9cbb7ecbcff85077bb12301aaf4c9b5a56c5993d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:09:49 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:11:35 2011 -0700"
      },
      "message": "net: Abstract dst-\u003eneighbour accesses behind helpers.\n\ndst_{get,set}_neighbour()\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cbb7ecbcff85077bb12301aaf4c9b5a56c5993d",
      "tree": "585f03578c63503f81d03ba865207bdb9819d5c6",
      "parents": [
        "8f40b161de4f27402b4c0659ad2ae83fad5a0cdd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 20:06:13 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:11:35 2011 -0700"
      },
      "message": "ipv6: Get rid of rt6i_nexthop macro.\n\nIt just makes it harder to see 1) what the code is doing\nand 2) grep for all users of dst{-\u003e,.}neighbour\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f40b161de4f27402b4c0659ad2ae83fad5a0cdd",
      "tree": "9e2dbd4ba8a66916c690b0e5791ac25ea0958c26",
      "parents": [
        "69ecca86da4890c13a5e29c51b4ac76a1a8a62c9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 13:34:11 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jul 17 23:11:17 2011 -0700"
      },
      "message": "neigh: Pass neighbour entry to output ops.\n\nThis will get us closer to being able to do \"neigh stuff\"\ncompletely independent of the underlying dst_entry for\nprotocols (ipv4/ipv6) that wish to do so.\n\nWe will also be able to make dst entries neigh-less.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "542d4d685febf3110d1a08d0bcb9f6ef060b76f7",
      "tree": "8bfb9b8c8f7e8d359030781367634269f843d3e3",
      "parents": [
        "b23b5455b6458920179a1f27513ce42e70d11f37"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 18:06:24 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 18:30:59 2011 -0700"
      },
      "message": "neigh: Kill ndisc_ops-\u003equeue_xmit\n\nIt is always dev_queue_xmit().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "47ec132a40d788d45e2f088545dea68798034dab",
      "tree": "f3089b58b4ef12cca150bdd4bf213d8a627a0035",
      "parents": [
        "0895b08adeb3f660cdff21990d0a9c2b59a919e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:39:57 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:39:57 2011 -0700"
      },
      "message": "neigh: Kill neigh_ops-\u003ehh_output\n\nIt\u0027s always dev_queue_xmit().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "05e3aa0949c138803185f92bd7db9be59cfca1be",
      "tree": "8ea4dd1ab94160dfe51d3d0c0d305d20f2a62a04",
      "parents": [
        "a29282972cc9b80126d4e4d68251c6712bdad051"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:26:00 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 17:26:00 2011 -0700"
      },
      "message": "net: Create and use new helper, neigh_output().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a29282972cc9b80126d4e4d68251c6712bdad051",
      "tree": "75abc3d6ae44b7c88e3452df2aa810adecd41cdc",
      "parents": [
        "fec8292d9cb662274b583c5c69fdfa6932e593a5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 14:30:47 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 16 14:30:47 2011 -0700"
      },
      "message": "ipv6: Use calculated \u0027neigh\u0027 instead of re-evaluating dst-\u003eneighbour\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6b72b6217f8c24f2a54988e58af858b4e66024d",
      "tree": "c59d5adcf9bb226db6f602c5078106052524cfea",
      "parents": [
        "390fd0b388e4f85549e5d60bdeb21364b344d9b9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:53:20 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 07:53:20 2011 -0700"
      },
      "message": "net: Embed hh_cache inside of struct neighbour.\n\nNow that there is a one-to-one correspondance between neighbour\nand hh_cache entries, we no longer need:\n\n1) dynamic allocation\n2) attachment to dst-\u003ehh\n3) refcounting\n\nInitialization of the hh_cache entry is indicated by hh_len\nbeing non-zero, and such initialization is always done with\nthe neighbour\u0027s lock held as a writer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bda8a0c8af5294b869da1efd2c2b9a562f50dcf",
      "tree": "730583db2a4266ab31507678377c458d087903c6",
      "parents": [
        "fa366124ef3aab35e378ae141f379c133d839943"
      ],
      "author": {
        "name": "Bjørn Mork",
        "email": "bjorn@mork.no",
        "time": "Tue Jul 05 23:04:13 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 07 04:15:10 2011 -0700"
      },
      "message": "Disable router anycast address for /127 prefixes\n\nRFC 6164 requires that routers MUST disable Subnet-Router anycast\nfor the prefix when /127 prefixes are used.\n\nNo need for matching code in addrconf_leave_anycast() as it\nwill silently ignore any attempt to leave an unknown anycast\naddress.\n\nSigned-off-by: Bjørn Mork \u003cbjorn@mork.no\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e12fe68ce34d60c04bb1ddb1d3cc5c3022388fe4",
      "tree": "83c0e192ccaa4752c80b6131a7d0aa8272b5d0d0",
      "parents": [
        "7329f0d58de01878d9ce4f0be7a76e136f223eef",
        "712ae51afd55b20c04c5383d02ba5d10233313b1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 23:23:37 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 05 23:23:37 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "c349a528cd47e2272ded0ea358363855e86180da",
      "tree": "dea71c512c96728337724c8dbc012f74abb7ba27",
      "parents": [
        "2fb83cd618be34546fb526a9051eceaa95517026"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@novell.com",
        "time": "Mon Jul 04 01:30:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 04 21:37:41 2011 -0700"
      },
      "message": "net: bind() fix error return on wrong address family\n\nHi,\n\nReinhard Max also pointed out that the error should EAFNOSUPPORT according\nto POSIX.\n\nThe Linux manpages have it as EINVAL, some other OSes (Minix, HPUX, perhaps BSD) use\nEAFNOSUPPORT. Windows uses WSAEFAULT according to MSDN.\n\nOther protocols error values in their af bind() methods in current mainline git as far\nas a brief look shows:\n\tEAFNOSUPPORT: atm, appletalk, l2tp, llc, phonet, rxrpc\n\tEINVAL: ax25, bluetooth, decnet, econet, ieee802154, iucv, netlink, netrom, packet, rds, rose, unix, x25,\n\tNo check?: can/raw, ipv6/raw, irda, l2tp/l2tp_ip\n\nCiao, Marcus\n\nSigned-off-by: Marcus Meissner \u003cmeissner@suse.de\u003e\nCc: Reinhard Max \u003cmax@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "957c665f37007de93ccbe45902a23143724170d0",
      "tree": "d49f13d5b34ed1b1fc34828cbcd60afdbc9c4e5b",
      "parents": [
        "11d53b4990226247a950e2b1ccfa4cf93bfbc822"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 24 15:25:00 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 17:30:43 2011 -0700"
      },
      "message": "ipv6: Don\u0027t put artificial limit on routing table size.\n\nIPV6, unlike IPV4, doesn\u0027t have a routing cache.\n\nRouting table entries, as well as clones made in response\nto route lookup requests, all live in the same table.  And\nall of these things are together collected in the destination\ncache table for ipv6.\n\nThis means that routing table entries count against the garbage\ncollection limits, even though such entries cannot ever be reclaimed\nand are added explicitly by the administrator (rather than being\ncreated in response to lookups).\n\nTherefore it makes no sense to count ipv6 routing table entries\nagainst the GC limits.\n\nAdd a DST_NOCOUNT destination cache entry flag, and skip the counting\nif it is set.  Use this flag bit in ipv6 when adding routing table\nentries.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11d53b4990226247a950e2b1ccfa4cf93bfbc822",
      "tree": "1d753762b2e7142e84526a146008e7bd029a6635",
      "parents": [
        "6e4e2f811bade330126d4029c88c831784a7efd9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 24 15:23:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 17:30:43 2011 -0700"
      },
      "message": "ipv6: Don\u0027t change dst-\u003eflags using assignments.\n\nThis blows away any flags already set in the entry.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "207ec0abbed50b43a44cb7c69a07aeee08da5e45",
      "tree": "2b5d12c61e6e7d860a21c94a327a33ff1f39adc9",
      "parents": [
        "4500ebf8d1cc749e1b438136745127e437c54002"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Fri Jul 01 09:43:08 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 16:11:16 2011 -0700"
      },
      "message": "ipv6: Reduce switch/case indent\n\nMake the case labels the same indent as the switch.\n\ngit diff -w shows 80 column reflowing,\nremoval of a useless break after return, and moving\nopen brace after case instead of separate line.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cfaa8def1c795a512bc04f2aec333b03724ca2e",
      "tree": "2c4bff0afe8424472b780a65a8d356db2d62caf4",
      "parents": [
        "32c90254ed4a0c698caa0794ebb4de63fcc69631"
      ],
      "author": {
        "name": "Xufeng Zhang",
        "email": "xufeng.zhang@windriver.com",
        "time": "Tue Jun 21 10:43:40 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 22:34:27 2011 -0700"
      },
      "message": "udp/recvmsg: Clear MSG_TRUNC flag when starting over for a new packet\n\nConsider this scenario: When the size of the first received udp packet\nis bigger than the receive buffer, MSG_TRUNC bit is set in msg-\u003emsg_flags.\nHowever, if checksum error happens and this is a blocking socket, it will\ngoto try_again loop to receive the next packet.  But if the size of the\nnext udp packet is smaller than receive buffer, MSG_TRUNC flag should not\nbe set, but because MSG_TRUNC bit is not cleared in msg-\u003emsg_flags before\nreceive the next packet, MSG_TRUNC is still set, which is wrong.\n\nFix this problem by clearing MSG_TRUNC flag when starting over for a\nnew packet.\n\nSigned-off-by: Xufeng Zhang \u003cxufeng.zhang@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32c90254ed4a0c698caa0794ebb4de63fcc69631",
      "tree": "4f0e4bb2cfe98c587792ba223ea3791102b43c1a",
      "parents": [
        "58fa45973117ab7a79d5b6818275a887867fc4d7"
      ],
      "author": {
        "name": "Xufeng Zhang",
        "email": "xufeng.zhang@windriver.com",
        "time": "Tue Jun 21 10:43:39 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 22:34:27 2011 -0700"
      },
      "message": "ipv6/udp: Use the correct variable to determine non-blocking condition\n\nudpv6_recvmsg() function is not using the correct variable to determine\nwhether or not the socket is in non-blocking operation, this will lead\nto unexpected behavior when a UDP checksum error occurs.\n\nConsider a non-blocking udp receive scenario: when udpv6_recvmsg() is\ncalled by sock_common_recvmsg(), MSG_DONTWAIT bit of flags variable in\nudpv6_recvmsg() is cleared by \"flags \u0026 ~MSG_DONTWAIT\" in this call:\n\n    err \u003d sk-\u003esk_prot-\u003erecvmsg(iocb, sk, msg, size, flags \u0026 MSG_DONTWAIT,\n                   flags \u0026 ~MSG_DONTWAIT, \u0026addr_len);\n\ni.e. with udpv6_recvmsg() getting these values:\n\n\tint noblock \u003d flags \u0026 MSG_DONTWAIT\n\tint flags \u003d flags \u0026 ~MSG_DONTWAIT\n\nSo, when udp checksum error occurs, the execution will go to\ncsum_copy_err, and then the problem happens:\n\n    csum_copy_err:\n            ...............\n            if (flags \u0026 MSG_DONTWAIT)\n                    return -EAGAIN;\n            goto try_again;\n            ...............\n\nBut it will always go to try_again as MSG_DONTWAIT has been cleared\nfrom flags at call time -- only noblock contains the original value\nof MSG_DONTWAIT, so the test should be:\n\n            if (noblock)\n                    return -EAGAIN;\n\nThis is also consistent with what the ipv4/udp code does.\n\nSigned-off-by: Xufeng Zhang \u003cxufeng.zhang@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f6ec8d697c08963d83880ccd35c13c5ace716ea",
      "tree": "ad8d93cf6fcdd09b86ade09f5fcbbc66cdb1cca2",
      "parents": [
        "4aa3a715551c93eda32d79bd52042ce500bd5383",
        "56299378726d5f2ba8d3c8cbbd13cb280ba45e4f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 22:29:08 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-agn-rxon.c\n\tdrivers/net/wireless/rtlwifi/pci.c\n\tnet/netfilter/ipvs/ip_vs_core.c\n"
    },
    {
      "commit": "1eddceadb0d6441cd39b2c38705a8f5fec86e770",
      "tree": "db2c9a019a74d71cf2aab0268a1d561d6c5bbd84",
      "parents": [
        "cab758ef30e0e40f783627abc4b66d1b48fecd49"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jun 17 03:45:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@conan.davemloft.net",
        "time": "Fri Jun 17 15:27:31 2011 -0400"
      },
      "message": "net: rfs: enable RFS before first data packet is received\n\nLe jeudi 16 juin 2011 à 23:38 -0400, David Miller a écrit :\n\u003e From: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\n\u003e Date: Fri, 17 Jun 2011 00:50:46 +0100\n\u003e\n\u003e \u003e On Wed, 2011-06-15 at 04:15 +0200, Eric Dumazet wrote:\n\u003e \u003e\u003e @@ -1594,6 +1594,7 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb)\n\u003e \u003e\u003e  \t\t\tgoto discard;\n\u003e \u003e\u003e\n\u003e \u003e\u003e  \t\tif (nsk !\u003d sk) {\n\u003e \u003e\u003e +\t\t\tsock_rps_save_rxhash(nsk, skb-\u003erxhash);\n\u003e \u003e\u003e  \t\t\tif (tcp_child_process(sk, nsk, skb)) {\n\u003e \u003e\u003e  \t\t\t\trsk \u003d nsk;\n\u003e \u003e\u003e  \t\t\t\tgoto reset;\n\u003e \u003e\u003e\n\u003e \u003e\n\u003e \u003e I haven\u0027t tried this, but it looks reasonable to me.\n\u003e \u003e\n\u003e \u003e What about IPv6?  The logic in tcp_v6_do_rcv() looks very similar.\n\u003e\n\u003e Indeed ipv6 side needs the same fix.\n\u003e\n\u003e Eric please add that part and resubmit.  And in fact I might stick\n\u003e this into net-2.6 instead of net-next-2.6\n\u003e\n\nOK, here is the net-2.6 based one then, thanks !\n\n[PATCH v2] net: rfs: enable RFS before first data packet is received\n\nFirst packet received on a passive tcp flow is not correctly RFS\nsteered.\n\nOne sock_rps_record_flow() call is missing in inet_accept()\n\nBut before that, we also must record rxhash when child socket is setup.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Tom Herbert \u003ctherbert@google.com\u003e\nCC: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nCC: Jamal Hadi Salim \u003chadi@cyberus.ca\u003e\nSigned-off-by: David S. Miller \u003cdavem@conan.davemloft.net\u003e\n"
    },
    {
      "commit": "2c38de4c1f8da799bdca0e4bb40ca13f2174d3e8",
      "tree": "f4c30741b465cdca9f533c74d9694884186badf4",
      "parents": [
        "db898aa2ef6529fa80891e754d353063611c77de"
      ],
      "author": {
        "name": "Nicolas Cavallari",
        "email": "cavallar@lri.fr",
        "time": "Thu Jun 16 17:27:04 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:27:04 2011 +0200"
      },
      "message": "netfilter: fix looped (broad|multi)cast\u0027s MAC handling\n\nBy default, when broadcast or multicast packet are sent from a local\napplication, they are sent to the interface then looped by the kernel\nto other local applications, going throught netfilter hooks in the\nprocess.\n\nThese looped packet have their MAC header removed from the skb by the\nkernel looping code. This confuse various netfilter\u0027s netlink queue,\nnetlink log and the legacy ip_queue, because they try to extract a\nhardware address from these packets, but extracts a part of the IP\nheader instead.\n\nThis patch prevent NFQUEUE, NFLOG and ip_QUEUE to include a MAC header\nif there is none in the packet.\n\nSigned-off-by: Nicolas Cavallari \u003ccavallar@lri.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "c7ac8679bec9397afe8918f788cbcef88c38da54",
      "tree": "c152712de4c997ea79252ef9ac72aaedb8f88c18",
      "parents": [
        "929dd047720785f099e12113780b3d7914ce6d9f"
      ],
      "author": {
        "name": "Greg Rose",
        "email": "gregory.v.rose@intel.com",
        "time": "Fri Jun 10 01:27:09 2011 +0000"
      },
      "committer": {
        "name": "Jeff Kirsher",
        "email": "jeffrey.t.kirsher@intel.com",
        "time": "Thu Jun 09 20:38:07 2011 -0700"
      },
      "message": "rtnetlink: Compute and store minimum ifinfo dump size\n\nThe message size allocated for rtnl ifinfo dumps was limited to\na single page.  This is not enough for additional interface info\navailable with devices that support SR-IOV and caused a bug in\nwhich VF info would not be displayed if more than approximately\n40 VFs were created per interface.\n\nImplement a new function pointer for the rtnl_register service that will\ncalculate the amount of data required for the ifinfo dump and allocate\nenough data to satisfy the request.\n\nSigned-off-by: Greg Rose \u003cgregory.v.rose@intel.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\n"
    },
    {
      "commit": "9ad7c049f0f79c418e293b1b68cf10d68f54fcdb",
      "tree": "4b930b213f7a050afe9fae78432c1a4a6dce08a5",
      "parents": [
        "aee80b54b235d34d87b25dfbe32f0f0ffee1b544"
      ],
      "author": {
        "name": "Jerry Chu",
        "email": "hkchu@google.com",
        "time": "Wed Jun 08 11:08:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 08 17:05:30 2011 -0700"
      },
      "message": "tcp: RFC2988bis + taking RTT sample from 3WHS for the passive open side\n\nThis patch lowers the default initRTO from 3secs to 1sec per\nRFC2988bis. It falls back to 3secs if the SYN or SYN-ACK packet\nhas been retransmitted, AND the TCP timestamp option is not on.\n\nIt also adds support to take RTT sample during 3WHS on the passive\nopen side, just like its active open counterpart, and uses it, if\nvalid, to seed the initRTO for the data transmission phase.\n\nThe patch also resets ssthresh to its initial default at the\nbeginning of the data transmission phase, and reduces cwnd to 1 if\nthere has been MORE THAN ONE retransmission during 3WHS per RFC5681.\n\nSigned-off-by: H.K. Jerry Chu \u003chkchu@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aee80b54b235d34d87b25dfbe32f0f0ffee1b544",
      "tree": "e9433b3b4116a3575479f445eec4802d790645d9",
      "parents": [
        "8ef207d63f8ecc0eae41cded066dd0e0ee170edf"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed Jun 08 10:44:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 08 17:05:30 2011 -0700"
      },
      "message": "ipv6: generate link local address for GRE tunnel\n\nUse same logic as SIT tunnel to handle link local address\nfor GRE tunnel. OSPFv3 requires link-local address to function.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a079c305ad4dda9708b7a29db4a8bd38e21c3a6",
      "tree": "04d25cdf27ab7d5b8150200ec3a483a6f0a08581",
      "parents": [
        "2b22b1b1e169c6591aa125525223f70e40ed4acf"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@suse.de",
        "time": "Mon Jun 06 06:00:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 06 14:48:16 2011 -0700"
      },
      "message": "net/ipv6: check for mistakenly passed in non-AF_INET6 sockaddrs\n\nSame check as for IPv4, also do for IPv6.\n\n(If you passed in a IPv4 sockaddr_in here, the sizeof check\n in the line before would have triggered already though.)\n\nSigned-off-by: Marcus Meissner \u003cmeissner@suse.de\u003e\nCc: Reinhard Max \u003cmax@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d232b8dded624af3e346b13807a591c63b601c44",
      "tree": "722088abe0459a4c425d0f2e14bb74e03cd6bab5",
      "parents": [
        "88ed01d17b44bc2bed4ad4835d3b1099bff3dd71"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri May 27 20:36:51 2011 -0400"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Jun 06 01:37:16 2011 +0200"
      },
      "message": "netfilter: use unsigned variables for packet lengths in ip[6]_queue.\n\nNetlink message lengths can\u0027t be negative, so use unsigned variables.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "88ed01d17b44bc2bed4ad4835d3b1099bff3dd71",
      "tree": "619e093aecca3e0e1233e7eb62055265c13835e2",
      "parents": [
        "d9be76f38526dccf84062e3ac3ed3a6a97698565"
      ],
      "author": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Thu Jun 02 15:08:45 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Jun 06 01:37:02 2011 +0200"
      },
      "message": "netfilter: nf_conntrack: fix ct refcount leak in l4proto-\u003eerror()\n\nThis patch fixes a refcount leak of ct objects that may occur if\nl4proto-\u003eerror() assigns one conntrack object to one skbuff. In\nthat case, we have to skip further processing in nf_conntrack_in().\n\nWith this patch, we can also fix wrong return values (-NF_ACCEPT)\nfor special cases in ICMP[v6] that should not bump the invalid/error\nstatistic counters.\n\nReported-by: Zoltan Menyhart \u003cZoltan.Menyhart@bull.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "fb04883371f2cb7867d24783e7d590036dc9b548",
      "tree": "afa3d3e6f852c19f193d7ada54819e6a59fab52b",
      "parents": [
        "374eeb5a9d77ea719c5c46f4d70226623f4528ce"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu May 19 15:44:27 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Jun 06 01:35:10 2011 +0200"
      },
      "message": "netfilter: add more values to enum ip_conntrack_info\n\nFollowing error is raised (and other similar ones) :\n\nnet/ipv4/netfilter/nf_nat_standalone.c: In function ‘nf_nat_fn’:\nnet/ipv4/netfilter/nf_nat_standalone.c:119:2: warning: case value ‘4’\nnot in enumerated type ‘enum ip_conntrack_info’\n\ngcc barfs on adding two enum values and getting a not enumerated\nresult :\n\ncase IP_CT_RELATED+IP_CT_IS_REPLY:\n\nAdd missing enum values\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "71338aa7d050c86d8765cd36e46be514fb0ebbce",
      "tree": "96bacb805b939c490145b31b4e2fb9e5cea79c5d",
      "parents": [
        "229de618ba6ff36e382b908b7637fe56c25ae9f1"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "drosenberg@vsecurity.com",
        "time": "Mon May 23 12:17:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 24 01:13:12 2011 -0400"
      },
      "message": "net: convert %p usage to %pK\n\nThe %pK format specifier is designed to hide exposed kernel pointers,\nspecifically via /proc interfaces.  Exposing these pointers provides an\neasy target for kernel write vulnerabilities, since they reveal the\nlocations of writable structures containing easily triggerable function\npointers.  The behavior of %pK depends on the kptr_restrict sysctl.\n\nIf kptr_restrict is set to 0, no deviation from the standard %p behavior\noccurs.  If kptr_restrict is set to 1, the default, if the current user\n(intended to be a reader via seq_printf(), etc.) does not have CAP_SYSLOG\n(currently in the LSM tree), kernel pointers using %pK are printed as 0\u0027s.\n If kptr_restrict is set to 2, kernel pointers using %pK are printed as\n0\u0027s regardless of privileges.  Replacing with 0\u0027s was chosen over the\ndefault \"(null)\", which cannot be parsed by userland %p, which expects\n\"(nil)\".\n\nThe supporting code for kptr_restrict and %pK are currently in the -mm\ntree.  This patch converts users of %p in net/ to %pK.  Cases of printing\npointers to the syslog are not covered, since this would eliminate useful\ninformation for postmortem debugging and the reading of the syslog is\nalready optionally protected by the dmesg_restrict sysctl.\n\nSigned-off-by: Dan Rosenberg \u003cdrosenberg@vsecurity.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Thomas Graf \u003ctgraf@infradead.org\u003e\nCc: Eugene Teo \u003ceugeneteo@kernel.org\u003e\nCc: Kees Cook \u003ckees.cook@canonical.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Eric Paris \u003ceparis@parisplace.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6ac3f6649223d916bbdf1e823926f8f3b34b5d99",
      "tree": "56d4e08336c534026923816188e484ef01b3b5dc",
      "parents": [
        "6c4a5cb219520c7bc937ee186ca53f03733bd09f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 24 01:11:51 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 24 01:11:51 2011 -0400"
      },
      "message": "ipv6: Fix return of xfrm6_tunnel_rcv()\n\nLike ipv4, just return xfrm6_rcv_spi()\u0027s return value directly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f6c6392dca9c4825c98322a1bf74991e4f0f54d",
      "tree": "6100a2d32a99b3f735bbb41d9749362ead92fb22",
      "parents": [
        "557eed603159b4e007c57d97fad1333ecebd3c2e"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Fri May 20 11:27:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat May 21 02:05:22 2011 -0400"
      },
      "message": "ipv6: copy prefsrc setting when copying route entry\n\ncommit c3968a857a6b6c3d2ef4ead35776b055fb664d74\n(\u0027ipv6: RTA_PREFSRC support for ipv6 route source address selection\u0027)\nadded support for ipv6 prefsrc as an alternative to ipv6 addrlabels,\nbut it did not work because the prefsrc entry was not copied.\n\nCc: Daniel Walter \u003csahne@0x90.at\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06f4e926d256d902dd9a53dcb400fd74974ce087",
      "tree": "0b438b67f5f0eff6fd617bc497a9dace6164a488",
      "parents": [
        "8e7bfcbab3825d1b404d615cb1b54f44ff81f981",
        "d93515611bbc70c2fe4db232e5feb448ed8e4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)\n  macvlan: fix panic if lowerdev in a bond\n  tg3: Add braces around 5906 workaround.\n  tg3: Fix NETIF_F_LOOPBACK error\n  macvlan: remove one synchronize_rcu() call\n  networking: NET_CLS_ROUTE4 depends on INET\n  irda: Fix error propagation in ircomm_lmp_connect_response()\n  irda: Kill set but unused variable \u0027bytes\u0027 in irlan_check_command_param()\n  irda: Kill set but unused variable \u0027clen\u0027 in ircomm_connect_indication()\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_transport()\n  be2net: Kill set but unused variable \u0027req\u0027 in lancer_fw_download()\n  irda: Kill set but unused vars \u0027saddr\u0027 and \u0027daddr\u0027 in irlan_provider_connect_indication()\n  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_peer().\n  rxrpc: Kill set but unused variable \u0027local\u0027 in rxrpc_UDP_error_handler()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_process_connection()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_rotate_tx_window()\n  pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n  isdn: capi: Use pr_debug() instead of ifdefs.\n  tg3: Update version to 3.119\n  tg3: Apply rx_discards fix to 5719/5720\n  ...\n\nFix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c\nas per Davem.\n"
    },
    {
      "commit": "eb04f2f04ed1227c266b3219c0aaeda525639718",
      "tree": "7f224483a3cd0e439cd64a8666ec9dc5ed178a3d",
      "parents": [
        "5765040ebfc9a28d9dcfaaaaf3d25840d922de96",
        "80d02085d99039b3b7f3a73c8896226b0cb1ba07"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 19 18:14:34 2011 -0700"
      },
      "message": "Merge branch \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-rcu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (78 commits)\n  Revert \"rcu: Decrease memory-barrier usage based on semi-formal proof\"\n  net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree\n  batman,rcu: convert call_rcu(softif_neigh_free_rcu) to kfree_rcu\n  batman,rcu: convert call_rcu(neigh_node_free_rcu) to kfree()\n  batman,rcu: convert call_rcu(gw_node_free_rcu) to kfree_rcu\n  net,rcu: convert call_rcu(kfree_tid_tx) to kfree_rcu()\n  net,rcu: convert call_rcu(xt_osf_finger_free_rcu) to kfree_rcu()\n  net/mac80211,rcu: convert call_rcu(work_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(wq_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(phonet_device_rcu_free) to kfree_rcu()\n  perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu()\n  perf,rcu: convert call_rcu(free_ctx) to kfree_rcu()\n  net,rcu: convert call_rcu(__nf_ct_ext_free_rcu) to kfree_rcu()\n  net,rcu: convert call_rcu(net_generic_release) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr6) to kfree_rcu()\n  net,rcu: convert call_rcu(netlbl_unlhsh_free_addr4) to kfree_rcu()\n  security,rcu: convert call_rcu(sel_netif_free) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_dev_maps_release) to kfree_rcu()\n  net,rcu: convert call_rcu(xps_map_release) to kfree_rcu()\n  net,rcu: convert call_rcu(rps_map_release) to kfree_rcu()\n  ...\n"
    },
    {
      "commit": "be281e554e2a4cf2478df7a8b8926c89454bccfa",
      "tree": "7e80e5eb0aa76efcdb39a06413ff9e0ae73de35a",
      "parents": [
        "75e308c894c4a5e47c005b8e821ae5f539ad2ef3"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu May 19 01:14:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 16:21:22 2011 -0400"
      },
      "message": "ipv6: reduce per device ICMP mib sizes\n\nipv6 has per device ICMP SNMP counters, taking too much space because\nthey use percpu storage.\n\nneeded size per device is :\n(512+4)*sizeof(long)*number_of_possible_cpus*2\n\nOn a 32bit kernel, 16 possible cpus, this wastes more than 64kbytes of\nmemory per ipv6 enabled network device, taken in vmalloc pool.\n\nSince ICMP messages are rare, just use shared counters (atomic_long_t)\n\nPer network space ICMP counters are still using percpu memory, we might\nalso convert them to shared counters in a future patch.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c709f8fb43e07a0403bba4a8ca7ba00ab874994",
      "tree": "9efc1e2bf6930851f0224f525b6cde0f5297fa61",
      "parents": [
        "0074820978004cc484b132d7a9ce0df414660d9d",
        "9bbc052d5e63512b0ce4e201ea97e12fba9fda82"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 11 14:26:15 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 11 14:26:58 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-3.6\n\nConflicts:\n\tdrivers/net/benet/be_main.c\n"
    },
    {
      "commit": "9bbc052d5e63512b0ce4e201ea97e12fba9fda82",
      "tree": "30433e20961b73e571c081869d1ea52c92c7b15a",
      "parents": [
        "0d4420a90b51abdea71585f571bad6d789ff8eb7",
        "93bbce1ad0cd788190dd7d6c17d289f771fe3d0d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 15:04:35 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 15:04:35 2011 -0700"
      },
      "message": "Merge branch \u0027pablo/nf-2.6-updates\u0027 of git://1984.lsi.us.es/net-2.6\n"
    },
    {
      "commit": "43a4dea4c9d44baae38ddc14b9b6d86fde4c8b88",
      "tree": "af7ecb23077cf5b4ae1290f7d1ab5e901e7adb82",
      "parents": [
        "e14a599335427f81bbb0008963e59aa9c6449dce"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Mon May 09 19:36:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 15:03:34 2011 -0700"
      },
      "message": "xfrm: Assign the inner mode output function to the dst entry\n\nAs it is, we assign the outer modes output function to the dst entry\nwhen we create the xfrm bundle. This leads to two problems on interfamily\nscenarios. We might insert ipv4 packets into ip6_fragment when called\nfrom xfrm6_output. The system crashes if we try to fragment an ipv4\npacket with ip6_fragment. This issue was introduced with git commit\nad0081e4 (ipv6: Fragment locally generated tunnel-mode IPSec6 packets\nas needed). The second issue is, that we might insert ipv4 packets in\nnetfilter6 and vice versa on interfamily scenarios.\n\nWith this patch we assign the inner mode output function to the dst entry\nwhen we create the xfrm bundle. So xfrm4_output/xfrm6_output from the inner\nmode is used and the right fragmentation and netfilter functions are called.\nWe switch then to outer mode with the output_finish functions.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4319cc0cf5bb894b7368008cdf6dd20eb8868018",
      "tree": "5ca875d740316146cda6468fb992cf7ddf8ebf1f",
      "parents": [
        "7a4f0761fce32ff4918a7c23b08db564ad33092d"
      ],
      "author": {
        "name": "Fernando Luis Vazquez Cao",
        "email": "fernando@oss.ntt.co.jp",
        "time": "Tue May 10 09:55:44 2011 +0200"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Tue May 10 09:55:44 2011 +0200"
      },
      "message": "netfilter: IPv6: initialize TOS field in REJECT target module\n\nThe IPv6 header is not zeroed out in alloc_skb so we must initialize\nit properly unless we want to see IPv6 packets with random TOS fields\nfloating around. The current implementation resets the flow label\nbut this could be changed if deemed necessary.\n\nWe stumbled upon this issue when trying to apply a mangle rule to\nthe RST packet generated by the REJECT target module.\n\nSigned-off-by: Fernando Luis Vazquez Cao \u003cfernando@oss.ntt.co.jp\u003e\nSigned-off-by: Pablo Neira Ayuso \u003cpablo@netfilter.org\u003e\n"
    },
    {
      "commit": "d9d8da805dcb503ef8ee49918a94d49085060f23",
      "tree": "ede7d2af74c2982eb24430079aea63c05a3420e9",
      "parents": [
        "0e734419923bd8e599858f8fc196c7804bb85564"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 22:23:20 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:28:28 2011 -0700"
      },
      "message": "inet: Pass flowi to -\u003equeue_xmit().\n\nThis allows us to acquire the exact route keying information from the\nprotocol, however that might be managed.\n\nIt handles all of the possibilities, from the simplest case of storing\nthe key in inet-\u003ecork.fl to the more complex setup SCTP has where\nindividual transports determine the flow.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "11c476f31a0fabc6e604da5b09a6590b57c3fb20",
      "tree": "91d59b3918d3567b136bdd690ca96d132a2425b9",
      "parents": [
        "8e3572cff70ee19a0a1f2e2dde0bca0b7c8b54dc"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 02 00:56:57 2011 -0700"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:51:15 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree\n\nThe RCU callback prl_entry_destroy_rcu() just calls kfree(), so we can\nuse kfree_rcu() instead of call_rcu().\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\u003e\nCc: \"Pekka Savola (ipv6)\" \u003cpekkas@netcore.fi\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "e3cbf28fa61456bd2f0ba39846ffd905257eb4b0",
      "tree": "562ae9164cbe63924a51163c88b3285347d8b749",
      "parents": [
        "6e070aecd9e304264a6b8655f49aa7e6db0e55f2"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 12:00:50 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:51:02 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(ipv6_mc_socklist_reclaim) to kfree_rcu()\n\nThe rcu callback ipv6_mc_socklist_reclaim() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(ipv6_mc_socklist_reclaim).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "e57859854aaac9b7ce0db3fe4959190a1a80b60a",
      "tree": "05aee1dc0345c59ba425fa26c5eeebaef6a20938",
      "parents": [
        "38f57d1a4b4c13db92c7f6300a4e4ae70ff94d2b"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 18:00:14 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:50 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(inet6_ifa_finish_destroy_rcu) to kfree_rcu()\n\nThe rcu callback inet6_ifa_finish_destroy_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(inet6_ifa_finish_destroy_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "38f57d1a4b4c13db92c7f6300a4e4ae70ff94d2b",
      "tree": "863023d589e15068c851c4a1f3be5de47395dfe1",
      "parents": [
        "5957b1ac52c5fde2afe5d80abe2a1cb82a9b4f20"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Tue Mar 15 17:59:14 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:49 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(in6_dev_finish_destroy_rcu) to kfree_rcu()\n\nThe rcu callback in6_dev_finish_destroy_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(in6_dev_finish_destroy_rcu).\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\n"
    },
    {
      "commit": "bdc712b4c2baf9515887de3a52e7ecd89fafc0c7",
      "tree": "3ce09227fb75593256403eaa459d178a2668db25",
      "parents": [
        "ad638bd16d91012a512979327b5c17c867d260c6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 15:02:07 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 15:37:57 2011 -0700"
      },
      "message": "inet: Decrease overhead of on-stack inet_cork.\n\nWhen we fast path datagram sends to avoid locking by putting\nthe inet_cork on the stack we use up lots of space that isn\u0027t\nnecessary.\n\nThis is because inet_cork contains a \"struct flowi\" which isn\u0027t\nused in these code paths.\n\nSplit inet_cork to two parts, \"inet_cork\" and \"inet_cork_full\".\nOnly the latter of which has the \"struct flowi\" and is what is\nstored in inet_sock.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\n"
    },
    {
      "commit": "7143b7d41218d4fc2ea33e6056c73609527ae687",
      "tree": "9a842daee1deb57a2c8084bc5d300f6d8428fe34",
      "parents": [
        "90864fbc7639d7a2300c67a18c9fb9fbcf7d51d2",
        "87e9af6cc67d842cd92b52b81f3f14e665e7ab05"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 05 14:59:02 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 05 14:59:02 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/tg3.c\n"
    },
    {
      "commit": "1c5cae815d19ffe02bdfda1260949ef2b1806171",
      "tree": "d47a73c05afacd21985abb8df9862136385c58f0",
      "parents": [
        "e8920674979705392abc4db4ebbe78feb68a4da1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Sat Apr 30 01:21:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 05 10:57:45 2011 -0700"
      },
      "message": "net: call dev_alloc_name from register_netdevice\n\nForce dev_alloc_name() to be called from register_netdevice() by\ndev_get_valid_name(). That allows to remove multiple explicit\ndev_alloc_name() calls.\n\nThe possibility to call dev_alloc_name in advance remains.\n\nThis also fixes veth creation regresion caused by\n84c49d8c3e4abefb0a41a77b25aa37ebe8d6b743\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "301102cc832f9f3e24c5748705f152eaa7c307f6",
      "tree": "40210f414aae480b41c15bae216c4ac2b97707ec",
      "parents": [
        "cbb1e85f9cfd2bd9b7edfd21d167e89a4279faf0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:46:24 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:55:07 2011 -0700"
      },
      "message": "ipv6: Use flowi4-\u003e{daddr,saddr} in ipip6_tunnel_xmit().\n\nInstead of rt-\u003ert_{dst,src}\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31e4543db29fb85496a122b965d6482c8d1a2bfe",
      "tree": "3e49d61a1202e1b3c8c71e422f3fd8e4f2616d01",
      "parents": [
        "f1390160ddcd64a3cfd48b3280d0a616a31b9520"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:25:42 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:25:42 2011 -0700"
      },
      "message": "ipv4: Make caller provide on-stack flow key to ip_route_output_ports().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff538818f4a82c4cf02d2d6bd6ac5c7360b9d41d",
      "tree": "e385bfa4e7c3e48c2c6c755987c3ba50d3d5aa98",
      "parents": [
        "6c8c44462ac8ac3f95929328f0c56e9e8b6dd524"
      ],
      "author": {
        "name": "Lucian Adrian Grijincu",
        "email": "lucian.grijincu@gmail.com",
        "time": "Sun May 01 01:44:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 02 16:12:14 2011 -0700"
      },
      "message": "sysctl: net: call unregister_net_sysctl_table where needed\n\nctl_table_headers registered with register_net_sysctl_table should\nhave been unregistered with the equivalent unregister_net_sysctl_table\n\nSigned-off-by: Lucian Adrian Grijincu \u003clucian.grijincu@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e67f88dd12f610da98ca838822f2c9b4e7c6100e",
      "tree": "6cf01b794984aaad97b6e6ff6e5103bc48d68191",
      "parents": [
        "dcfd9cdc1222f14d6180514e533289493a0716fb"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Apr 27 22:56:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 02 15:26:28 2011 -0700"
      },
      "message": "net: dont hold rtnl mutex during netlink dump callbacks\n\nFour years ago, Patrick made a change to hold rtnl mutex during netlink\ndump callbacks.\n\nI believe it was a wrong move. This slows down concurrent dumps, making\ngood old /proc/net/ files faster than rtnetlink in some situations.\n\nThis occurred to me because one \"ip link show dev ...\" was _very_ slow\non a workload adding/removing network devices in background.\n\nAll dump callbacks are able to use RCU locking now, so this patch does\nroughly a revert of commits :\n\n1c2d670f366 : [RTNETLINK]: Hold rtnl_mutex during netlink dump callbacks\n6313c1e0992 : [RTNETLINK]: Remove unnecessary locking in dump callbacks\n\nThis let writers fight for rtnl mutex and readers going full speed.\n\nIt also takes care of phonet : phonet_route_get() is now called from rcu\nread section. I renamed it to phonet_route_get_rcu()\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nCc: Remi Denis-Courmont \u003cremi.denis-courmont@nokia.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ad246c992bea6d33c6421ba1f03e2b405792adf9",
      "tree": "28afc1b370d856a63a3cd792fc292996c0315c13",
      "parents": [
        "7d36a991e8d36b8ae87e2aa1158d3735e656253b"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Tue Apr 26 15:25:52 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 29 12:44:11 2011 -0700"
      },
      "message": "ipv4, ipv6, bonding: Restore control over number of peer notifications\n\nFor backward compatibility, we should retain the module parameters and\nsysfs attributes to control the number of peer notifications\n(gratuitous ARPs and unsolicited NAs) sent after bonding failover.\nAlso, it is possible for failover to take place even though the new\nactive slave does not have link up, and in that case the peer\nnotification should be deferred until it does.\n\nChange ipv4 and ipv6 so they do not automatically send peer\nnotifications on bonding failover.\n\nChange the bonding driver to send separate NETDEV_NOTIFY_PEERS\nnotifications when the link is up, as many times as requested.  Since\nit does not directly control which protocols send notifications, make\nnum_grat_arp and num_unsol_na aliases for a single parameter.  Bump\nthe bonding version number and update its documentation.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Jay Vosburgh \u003cfubar@us.ibm.com\u003e\nAcked-by: Brian Haley \u003cbrian.haley@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cf91166223772ef4a2ed98b9874958bf6a2470df",
      "tree": "f8c86cc60798db9e4469031a8dceb5fcb512fb81",
      "parents": [
        "5c1e6aa300a7a669dc469d2dcb20172c6bd8fed9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 14:31:47 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 22:26:00 2011 -0700"
      },
      "message": "net: Use non-zero allocations in dst_alloc().\n\nMake dst_alloc() and it\u0027s users explicitly initialize the entire\nentry.\n\nThe zero\u0027ing done by kmem_cache_zalloc() was almost entirely\nredundant.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c1e6aa300a7a669dc469d2dcb20172c6bd8fed9",
      "tree": "61796a49f8b9236eee4730ff8142e79bd43f0f51",
      "parents": [
        "778865a550e7958c1211242cc481f48d46de0f04"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 14:13:38 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 22:25:59 2011 -0700"
      },
      "message": "net: Make dst_alloc() take more explicit initializations.\n\nNow the dst-\u003edev, dev-\u003eobsolete, and dst-\u003eflags values can\nbe specified as well.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "96339d6c490a32de35fa798ca7922d13a8538ecd",
      "tree": "bfeab66ca069f4c4d99f30c2da23ae7c78c139e2",
      "parents": [
        "f6d8bd051c391c1c0458a30b2a7abcd939329259"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Fri Apr 22 19:07:41 2011 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 13:28:57 2011 -0700"
      },
      "message": "net:use help function of skb_checksum_start_offset to calculate offset\n\nAlthough these are equivalent, but the skb_checksum_start_offset() is more readable.\n\nSigned-off-by: Shan Wei \u003cshanwei@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6d8bd051c391c1c0458a30b2a7abcd939329259",
      "tree": "1dc4daecdeb0b42c2c6b59d7d6b41e091c11db5f",
      "parents": [
        "0a14842f5a3c0e88a1e59fac5c3025db39721f74"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 21 09:45:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 13:16:35 2011 -0700"
      },
      "message": "inet: add RCU protection to inet-\u003eopt\n\nWe lack proper synchronization to manipulate inet-\u003eopt ip_options\n\nProblem is ip_make_skb() calls ip_setup_cork() and\nip_setup_cork() possibly makes a copy of ipc-\u003eopt (struct ip_options),\nwithout any protection against another thread manipulating inet-\u003eopt.\n\nAnother thread can change inet-\u003eopt pointer and free old one under us.\n\nUse RCU to protect inet-\u003eopt (changed to inet-\u003einet_opt).\n\nInstead of handling atomic refcounts, just copy ip_options when\nnecessary, to avoid cache line dirtying.\n\nWe cant insert an rcu_head in struct ip_options since its included in\nskb-\u003ecb[], so this patch is large because I had to introduce a new\nip_options_rcu structure.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0a56e64aec331f33ead29ba493ee184d9bdc840",
      "tree": "609d6b30b77dd7f129789d93e9d3fbc584791267",
      "parents": [
        "3f602b08dec32c418fc391fc838db357aab84f8a"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Mon Apr 25 19:40:23 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 26 12:46:04 2011 -0700"
      },
      "message": "esp6: Fix scatterlist initialization\n\nWhen we use IPsec extended sequence numbers, we may overwrite\nthe last scatterlist of the associated data by the scatterlist\nfor the skb. This patch fixes this by placing the scatterlist\nfor the skb right behind the last scatterlist of the associated\ndata. esp4 does it already like that.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2bd93d7af1581d40e3c4b25242472661cb7c637a",
      "tree": "43c638422d20857339d8d908d6b65ebb8045edc0",
      "parents": [
        "64cad2ade1e6f890531a58318ca9ee013f92ef2f",
        "0972ddb2373d5e127aabdcabd8305eff0242cd0b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 26 12:16:46 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 26 12:16:46 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nResolved logic conflicts causing a build failure due to\ndrivers/net/r8169.c changes using a patch from Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0972ddb2373d5e127aabdcabd8305eff0242cd0b",
      "tree": "6040853adf2a2aac1df2551e3e7695e902a03905",
      "parents": [
        "8c61d9d611cb5b290f1b4ac57c4631acfd6e3b5a"
      ],
      "author": {
        "name": "Held Bernhard",
        "email": "berny156@gmx.de",
        "time": "Sun Apr 24 22:07:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 25 11:53:08 2011 -0700"
      },
      "message": "net: provide cow_metrics() methods to blackhole dst_ops\n\nSince commit 62fa8a846d7d (net: Implement read-only protection and COW\u0027ing\nof metrics.) the kernel throws an oops.\n\n[  101.620985] BUG: unable to handle kernel NULL pointer dereference at\n           (null)\n[  101.621050] IP: [\u003c          (null)\u003e]           (null)\n[  101.621084] PGD 6e53c067 PUD 3dd6a067 PMD 0\n[  101.621122] Oops: 0010 [#1] SMP\n[  101.621153] last sysfs file: /sys/devices/virtual/ppp/ppp/uevent\n[  101.621192] CPU 2\n[  101.621206] Modules linked in: l2tp_ppp pppox ppp_generic slhc\nl2tp_netlink l2tp_core deflate zlib_deflate twofish_x86_64\ntwofish_common des_generic cbc ecb sha1_generic hmac af_key\niptable_filter snd_pcm_oss snd_mixer_oss snd_seq snd_seq_device loop\nsnd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_intel snd_hda_codec\nsnd_pcm snd_timer snd i2c_i801 iTCO_wdt psmouse soundcore snd_page_alloc\nevdev uhci_hcd ehci_hcd thermal\n[  101.621552]\n[  101.621567] Pid: 5129, comm: openl2tpd Not tainted 2.6.39-rc4-Quad #3\nGigabyte Technology Co., Ltd. G33-DS3R/G33-DS3R\n[  101.621637] RIP: 0010:[\u003c0000000000000000\u003e]  [\u003c          (null)\u003e]   (null)\n[  101.621684] RSP: 0018:ffff88003ddeba60  EFLAGS: 00010202\n[  101.621716] RAX: ffff88003ddb5600 RBX: ffff88003ddb5600 RCX:\n0000000000000020\n[  101.621758] RDX: ffffffff81a69a00 RSI: ffffffff81b7ee61 RDI:\nffff88003ddb5600\n[  101.621800] RBP: ffff8800537cd900 R08: 0000000000000000 R09:\nffff88003ddb5600\n[  101.621840] R10: 0000000000000005 R11: 0000000000014b38 R12:\nffff88003ddb5600\n[  101.621881] R13: ffffffff81b7e480 R14: ffffffff81b7e8b8 R15:\nffff88003ddebad8\n[  101.621924] FS:  00007f06e4182700(0000) GS:ffff88007fd00000(0000)\nknlGS:0000000000000000\n[  101.621971] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n[  101.622005] CR2: 0000000000000000 CR3: 0000000045274000 CR4:\n00000000000006e0\n[  101.622046] DR0: 0000000000000000 DR1: 0000000000000000 DR2:\n0000000000000000\n[  101.622087] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7:\n0000000000000400\n[  101.622129] Process openl2tpd (pid: 5129, threadinfo\nffff88003ddea000, task ffff88003de9a280)\n[  101.622177] Stack:\n[  101.622191]  ffffffff81447efa ffff88007d3ded80 ffff88003de9a280\nffff88007d3ded80\n[  101.622245]  0000000000000001 ffff88003ddebbb8 ffffffff8148d5a7\n0000000000000212\n[  101.622299]  ffff88003dcea000 ffff88003dcea188 ffffffff00000001\nffffffff81b7e480\n[  101.622353] Call Trace:\n[  101.622374]  [\u003cffffffff81447efa\u003e] ? ipv4_blackhole_route+0x1ba/0x210\n[  101.622415]  [\u003cffffffff8148d5a7\u003e] ? xfrm_lookup+0x417/0x510\n[  101.622450]  [\u003cffffffff8127672a\u003e] ? extract_buf+0x9a/0x140\n[  101.622485]  [\u003cffffffff8144c6a0\u003e] ? __ip_flush_pending_frames+0x70/0x70\n[  101.622526]  [\u003cffffffff8146fbbf\u003e] ? udp_sendmsg+0x62f/0x810\n[  101.622562]  [\u003cffffffff813f98a6\u003e] ? sock_sendmsg+0x116/0x130\n[  101.622599]  [\u003cffffffff8109df58\u003e] ? find_get_page+0x18/0x90\n[  101.622633]  [\u003cffffffff8109fd6a\u003e] ? filemap_fault+0x12a/0x4b0\n[  101.622668]  [\u003cffffffff813fb5c4\u003e] ? move_addr_to_kernel+0x64/0x90\n[  101.622706]  [\u003cffffffff81405d5a\u003e] ? verify_iovec+0x7a/0xf0\n[  101.622739]  [\u003cffffffff813fc772\u003e] ? sys_sendmsg+0x292/0x420\n[  101.622774]  [\u003cffffffff810b994a\u003e] ? handle_pte_fault+0x8a/0x7c0\n[  101.622810]  [\u003cffffffff810b76fe\u003e] ? __pte_alloc+0xae/0x130\n[  101.622844]  [\u003cffffffff810ba2f8\u003e] ? handle_mm_fault+0x138/0x380\n[  101.622880]  [\u003cffffffff81024af9\u003e] ? do_page_fault+0x189/0x410\n[  101.622915]  [\u003cffffffff813fbe03\u003e] ? sys_getsockname+0xf3/0x110\n[  101.622952]  [\u003cffffffff81450c4d\u003e] ? ip_setsockopt+0x4d/0xa0\n[  101.622986]  [\u003cffffffff813f9932\u003e] ? sockfd_lookup_light+0x22/0x90\n[  101.623024]  [\u003cffffffff814b61fb\u003e] ? system_call_fastpath+0x16/0x1b\n[  101.623060] Code:  Bad RIP value.\n[  101.623090] RIP  [\u003c          (null)\u003e]           (null)\n[  101.623125]  RSP \u003cffff88003ddeba60\u003e\n[  101.623146] CR2: 0000000000000000\n[  101.650871] ---[ end trace ca3856a7d8e8dad4 ]---\n[  101.651011] __sk_free: optmem leakage (160 bytes) detected.\n\nThe oops happens in dst_metrics_write_ptr()\ninclude/net/dst.h:124: return dst-\u003eops-\u003ecow_metrics(dst, p);\n\ndst-\u003eops-\u003ecow_metrics is NULL and causes the oops.\n\nProvide cow_metrics() methods, like we did in commit 214f45c91bb\n(net: provide default_advmss() methods to blackhole dst_ops)\n\nSigned-off-by: Held Bernhard \u003cberny156@gmx.de\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b71d1d426d263b0b6cb5760322efebbfc89d4463",
      "tree": "226ca7390bd6187ec9139d2ccedd26fd94d8e57a",
      "parents": [
        "5f8629c526b4f7e529a6d27bbd802c0dc7fcc357"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Apr 22 04:53:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 22 11:04:14 2011 -0700"
      },
      "message": "inet: constify ip headers and in6_addr\n\nAdd const qualifiers to structs iphdr, ipv6hdr and in6_addr pointers\nwhere possible, to make code intention more obvious.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e965c05dabdabb85af0187952ccd75e43995c4b3",
      "tree": "10923ab7f6e5aaae3e432218d6492e07a7f83981",
      "parents": [
        "e2a85aecebc03d165bc2dcd233deadd5dd97ea9f"
      ],
      "author": {
        "name": "Thomas Egerer",
        "email": "thomas.egerer@secunet.com",
        "time": "Wed Apr 20 22:56:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 21 17:24:08 2011 -0700"
      },
      "message": "ipv6: Remove hoplimit initialization to -1\n\nThe changes introduced with git-commit a02e4b7d (\"ipv6: Demark default\nhoplimit as zero.\") missed to remove the hoplimit initialization. As a\nresult, ipv6_get_mtu interprets the return value of dst_metric_raw\n(-1) as 255 and answers ping6 with this hoplimit.  This patche removes\nthe line such that ping6 is answered with the hoplimit value\nconfigured via sysctl.\n\nSigned-off-by: Thomas Egerer \u003cthomas.egerer@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a9cf73ea7ff78f52662c8658d93c226effbbedde",
      "tree": "07a723cb628f223e4f756f0cb02eeba8b6ee9c62",
      "parents": [
        "10022a6c66e199d8f61d9044543f38785713cbbd"
      ],
      "author": {
        "name": "Shan Wei",
        "email": "shanwei@cn.fujitsu.com",
        "time": "Tue Apr 19 22:52:49 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 21 10:39:10 2011 -0700"
      },
      "message": "ipv6: udp: fix the wrong headroom check\n\nAt this point, skb-\u003edata points to skb_transport_header.\nSo, headroom check is wrong.\n\nFor some case:bridge(UFO is on) + eth device(UFO is off),\nthere is no enough headroom for IPv6 frag head.\nBut headroom check is always false.\n\nThis will bring about data be moved to there prior to skb-\u003ehead,\nwhen adding IPv6 frag header to skb.\n\nSigned-off-by: Shan Wei \u003cshanwei@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": "4805347c1eb12cfe79f42a12a5442ee01590a9c0",
      "tree": "cb9d8b3cfc78d8411f0cea7b06c6472cdd35bb9a",
      "parents": [
        "e1943424e43974f85b82bb31eaf832823bf49ce7",
        "91eb7c08c6cb3b8eeba1c61f5753c56dcb77f018"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 19 11:24:06 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 19 11:24:06 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n"
    },
    {
      "commit": "e1943424e43974f85b82bb31eaf832823bf49ce7",
      "tree": "00a2dda7454ba186c0be4bfb8d08b7f74c3cd98c",
      "parents": [
        "88230fd586b4ccc5ffe6d6c2df8cdc495e89ad83",
        "0553c891fabd287726b41076cfd03fe7e5ab596f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 19 00:21:33 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 19 00:21:33 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/bnx2x/bnx2x_ethtool.c\n"
    },
    {
      "commit": "7c89943236750537d26421d9bbb6f6575e2d1e1b",
      "tree": "dfbc9b11ddcd20757388b03e9925363c1e1764f3",
      "parents": [
        "99606477a5888b0ead0284fecb13417b1da8e3af"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Fri Apr 15 13:47:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 23:36:03 2011 -0700"
      },
      "message": "bonding, ipv4, ipv6, vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS\n\nIt is undesirable for the bonding driver to be poking into higher\nlevel protocols, and notifiers provide a way to avoid that.  This does\nmean removing the ability to configure reptitition of gratuitous ARPs\nand unsolicited NAs.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f47b94646f30529624c82ab0f9cd5bd3f25ef9d2",
      "tree": "ae691388f1cccb21449e6c9e14aa52c2388ad66f",
      "parents": [
        "b3337e4cea15beb167e8d3a70ca1023e39abb4e5"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Fri Apr 15 13:46:02 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 23:35:16 2011 -0700"
      },
      "message": "ipv6: Send unsolicited neighbour advertismements when notified\n\nThe NETDEV_NOTIFY_PEERS notifier is a request to send such\nadvertisements following migration to a different physical link,\ne.g. virtual machine migration.\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b169f6db40605d0907458d1ff78ceac2b194a44f",
      "tree": "685955d2bb913f026612e5b200529179033d5e82",
      "parents": [
        "f3c85dd560f26ceae1351e6f83e83f1322761ead"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 17:06:15 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 17:06:15 2011 -0700"
      },
      "message": "netfilter: ip6table_mangle: Fix set-but-unused variables.\n\nThe variable \u0027flowlabel\u0027 is set but unused in ip6t_mangle_out().\n\nThe intention here was to compare this key to the header value after\nmangling, and trigger a route lookup on mismatch.\n\nMake it so.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "f3c85dd560f26ceae1351e6f83e83f1322761ead"
}
