)]}'
{
  "log": [
    {
      "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": "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": "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": "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"
    },
    {
      "commit": "f3c85dd560f26ceae1351e6f83e83f1322761ead",
      "tree": "7638b6ee3b16ad11b3999e792145c403c90d57ad",
      "parents": [
        "d88d7de09875e643e225a5d0883d18152ce5a89b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 17:04:48 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 17 17:04:48 2011 -0700"
      },
      "message": "netfilter: ip6_tables: Fix set-but-unused variables.\n\nThe variable \u0027target\u0027 is set but unused in compat_copy_entry_from_user().\n\nJust kill it off.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3968a857a6b6c3d2ef4ead35776b055fb664d74",
      "tree": "f82be0953ff4454218f38ffb803fdcfb93a6f2a3",
      "parents": [
        "bd015928bb1713691068c4d0d159afccbaf0f8c0"
      ],
      "author": {
        "name": "Daniel Walter",
        "email": "sahne@0x90.at",
        "time": "Wed Apr 13 21:10:57 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 15:44:37 2011 -0700"
      },
      "message": "ipv6: RTA_PREFSRC support for ipv6 route source address selection\n\n[ipv6] Add support for RTA_PREFSRC\n\nThis patch allows a user to select the preferred source address\nfor a specific IPv6-Route. It can be set via a netlink message\nsetting RTA_PREFSRC to a valid IPv6 address which must be\nup on the device the route will be bound to.\n\nSigned-off-by: Daniel Walter \u003cdwalter@barracuda.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bd015928bb1713691068c4d0d159afccbaf0f8c0",
      "tree": "816468bfbd16ba883175039853ced9a95d1f230f",
      "parents": [
        "eb8aa72d4e8756bde74d5f22bdd968ee6131069a"
      ],
      "author": {
        "name": "Daniel Walter",
        "email": "sahne@0x90.at",
        "time": "Wed Apr 13 21:09:25 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 15 15:43:55 2011 -0700"
      },
      "message": "ipv6: ignore looped-back NA while dad is running\n\n[ipv6] Ignore looped-back NAs while in Duplicate Address Detection\n\nIf we send an unsolicited NA shortly after bringing up an\nIPv6 address, the duplicate address detection algorithm\nfails and the ip stays in tentative mode forever.\nThis is due a missing check if the NA is looped-back to us.\n\nSigned-off-by: Daniel Walter \u003cdwalter@barracuda.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e8c806a08c7beecd972e7ce15c570b9aba64baa",
      "tree": "89b0b7bfc919ec8e7dc0866f16715bb626af0cc6",
      "parents": [
        "91a403caf0f26c71ce4407fd235b2d6fb225fba9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 13 12:01:14 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 13 12:01:14 2011 -0700"
      },
      "message": "Revert \"tcp: disallow bind() to reuse addr/port\"\n\nThis reverts commit c191a836a908d1dd6b40c503741f91b914de3348.\n\nIt causes known regressions for programs that expect to be able to use\nSO_REUSEADDR to shutdown a socket, then successfully rebind another\nsocket to the same ID.\n\nPrograms such as haproxy and amavisd expect this to work.\n\nThis should fix kernel bugzilla 32832.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c44eaf41a5a423993932c9a9ad279ee132779b48",
      "tree": "3554fc0bfdcd97936417d6d001d00710d11e67e5",
      "parents": [
        "4263a2f1dad8c8e7ce2352a0cbc882c2b0c044a9",
        "88edaa415966af965bb7eb7056d8b58145462c8e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 11 07:27:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 11 07:27:24 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (34 commits)\n  net: Add support for SMSC LAN9530, LAN9730 and LAN89530\n  mlx4_en: Restoring RX buffer pointer in case of failure\n  mlx4: Sensing link type at device initialization\n  ipv4: Fix \"Set rt-\u003ert_iif more sanely on output routes.\"\n  MAINTAINERS: add entry for Xen network backend\n  be2net: Fix suspend/resume operation\n  be2net: Rename some struct members for clarity\n  pppoe: drop PPPOX_ZOMBIEs in pppoe_flush_dev\n  dsa/mv88e6131: add support for mv88e6085 switch\n  ipv6: Enable RFS sk_rxhash tracking for ipv6 sockets (v2)\n  be2net: Fix a potential crash during shutdown.\n  bna: Fix for handling firmware heartbeat failure\n  can: mcp251x: Allow pass IRQ flags through platform data.\n  smsc911x: fix mac_lock acquision before calling smsc911x_mac_read\n  iwlwifi: accept EEPROM version 0x423 for iwl6000\n  rt2x00: fix cancelling uninitialized work\n  rtlwifi: Fix some warnings/bugs\n  p54usb: IDs for two new devices\n  wl12xx: fix potential buffer overflow in testmode nvs push\n  zd1211rw: reset rx idle timer from tasklet\n  ...\n"
    },
    {
      "commit": "42933bac11e811f02200c944d8562a15f8ec4ff0",
      "tree": "fcdd9afe56eb0e746565ddd1f92f22d36678b843",
      "parents": [
        "2b9accbee563f535046ff2cd382d0acaa92e130c",
        "25985edcedea6396277003854657b5f3cb31a628"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 07 11:14:49 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Apr 07 11:14:49 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus2\u0027 of git://git.profusion.mobi/users/lucas/linux-2.6\n\n* \u0027for-linus2\u0027 of git://git.profusion.mobi/users/lucas/linux-2.6:\n  Fix common misspellings\n"
    },
    {
      "commit": "47482f132a689af168fae3055ff1899dfd032d3a",
      "tree": "07f64d971a4783a71b612602da42e7faf8b14dd5",
      "parents": [
        "2d5d4154650459b61a8e7097d186a89d89dab8ed"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Wed Apr 06 13:07:09 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 06 13:07:09 2011 -0700"
      },
      "message": "ipv6: Enable RFS sk_rxhash tracking for ipv6 sockets (v2)\n\nproperly record sk_rxhash in ipv6 sockets (v2)\n\nNoticed while working on another project that flows to sockets which I had open\non a test systems weren\u0027t getting steered properly when I had RFS enabled.\nLooking more closely I found that:\n\n1) The affected sockets were all ipv6\n2) They weren\u0027t getting steered because sk-\u003esk_rxhash was never set from the\nincomming skbs on that socket.\n\nThis was occuring because there are several points in the IPv4 tcp and udp code\nwhich save the rxhash value when a new connection is established.  Those calls\nto sock_rps_save_rxhash were never added to the corresponding ipv6 code paths.\nThis patch adds those calls.  Tested by myself to properly enable RFS\nfunctionalty on ipv6.\n\nChange notes:\nv2:\n\tFiltered UDP to only arm RFS on bound sockets (Eric Dumazet)\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d9305949778c41b92d4394a2f2a6bcdb1c41a9c",
      "tree": "d49d536ae8156ad9989dc7b26e3897f21e549b02",
      "parents": [
        "738faca34335cd1d5d87fa7c58703139c7fa15bd",
        "96120d86fe302c006259baee9061eea9e1b9e486"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 05 14:21:11 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 05 14:21:11 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "738faca34335cd1d5d87fa7c58703139c7fa15bd",
      "tree": "983fc8212bc5828fe14541119783cff159508b58",
      "parents": [
        "a14b289d4614bb3b25d0455d68f72f3c7b4cc8e8"
      ],
      "author": {
        "name": "Boris Ostrovsky",
        "email": "boris.ostrovsky@amd.com",
        "time": "Mon Apr 04 13:07:26 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 04 13:07:26 2011 -0700"
      },
      "message": "ipv6: Don\u0027t pass invalid dst_entry pointer to dst_release().\n\nMake sure dst_release() is not called with error pointer. This is\nsimilar to commit 4910ac6c526d2868adcb5893e0c428473de862b5 (\"ipv4:\nDon\u0027t ip_rt_put() an error pointer in RAW sockets.\").\n\nSigned-off-by: Boris Ostrovsky \u003cboris.ostrovsky@amd.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f5c6d4f665bb57a19a34ce1fb16cc708c04f219",
      "tree": "e804faa506bbf9edcfd1fdadb2ab3749f58836cd",
      "parents": [
        "8f7b01a178b8e6a7b663a1bbaa1710756d67b69b"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon Apr 04 17:04:03 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 04 17:04:03 2011 +0200"
      },
      "message": "netfilter: get rid of atomic ops in fast path\n\nWe currently use a percpu spinlock to \u0027protect\u0027 rule bytes/packets\ncounters, after various attempts to use RCU instead.\n\nLately we added a seqlock so that get_counters() can run without\nblocking BH or \u0027writers\u0027. But we really only need the seqcount in it.\n\nSpinlock itself is only locked by the current/owner cpu, so we can\nremove it completely.\n\nThis cleanups api, using correct \u0027writer\u0027 vs \u0027reader\u0027 semantic.\n\nAt replace time, the get_counters() call makes sure all cpus are done\nusing the old table.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "0fae2e7740aca7e384c5f337f458897e7e337d58",
      "tree": "ff0767f2dc382ee8a62e324e441b671382f0433c",
      "parents": [
        "31ad3dd64e689bc79dd819f8f134b9b025240eb8"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Mon Apr 04 17:00:54 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 04 17:00:54 2011 +0200"
      },
      "message": "netfilter: af_info: add \u0027strict\u0027 parameter to limit lookup to .oif\n\nipv6 fib lookup can set RT6_LOOKUP_F_IFACE flag to restrict search\nto an interface, but this flag cannot be set via struct flowi.\n\nAlso, it cannot be set via ip6_route_output: this function uses the\npassed sock struct to determine if this flag is required\n(by testing for nonzero sk_bound_dev_if).\n\nWork around this by passing in an artificial struct sk in case\n\u0027strict\u0027 argument is true.\n\nThis is required to replace the rt6_lookup call in xt_addrtype.c with\nnf_afinfo-\u003eroute().\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "31ad3dd64e689bc79dd819f8f134b9b025240eb8",
      "tree": "06d2a9afbea2b1b7973e416f18d4588df30fb91a",
      "parents": [
        "a09d19779f3ffac6e16821accc2c1cc4df1b643a"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Mon Apr 04 16:56:29 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Apr 04 16:56:29 2011 +0200"
      },
      "message": "netfilter: af_info: add network namespace parameter to route hook\n\nThis is required to eventually replace the rt6_lookup call in\nxt_addrtype.c with nf_afinfo-\u003eroute().\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "93ca3bb5df9bc8b2c60485e1cc6507c3d7c8e1fa",
      "tree": "6ccf21f8d1e4431c6be79c265fb1f9a722308f63",
      "parents": [
        "1459a3cc51d90d78027c7b5c1790e5d22751c8eb"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Mon Mar 28 22:40:53 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 30 00:10:47 2011 -0700"
      },
      "message": "net: gre: provide multicast mappings for ipv4 and ipv6\n\nMy commit 6d55cb91a0020ac0 (gre: fix hard header destination\naddress checking) broke multicast.\n\nThe reason is that ip_gre used to get ipgre_header() calls with\nzero destination if we have NOARP or multicast destination. Instead\nthe actual target was decided at ipgre_tunnel_xmit() time based on\nper-protocol dissection.\n\nInstead of allowing the \"abuse\" of -\u003eheader() calls with invalid\ndestination, this creates multicast mappings for ip_gre. This also\nfixes \"ip neigh show nud noarp\" to display the proper multicast\nmappings used by the gre device.\n\nReported-by: Doug Kehn \u003crdkehn@yahoo.com\u003e\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nAcked-by: Doug Kehn \u003crdkehn@yahoo.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e49e6d520401e1d25ec8d366520aad2c01adc1c",
      "tree": "60dac2bdbce6b61524ac1f12468841470607c5ad",
      "parents": [
        "f4e5bd4f5784c0608078805f29d4a4897ee482f7"
      ],
      "author": {
        "name": "Cesar Eduardo Barros",
        "email": "cesarb@cesarb.net",
        "time": "Sat Mar 26 05:10:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 27 23:35:05 2011 -0700"
      },
      "message": "net: use CHECKSUM_NONE instead of magic number\n\nTwo places in the kernel were doing skb-\u003eip_summed \u003d 0.\n\nChange both to skb-\u003eip_summed \u003d CHECKSUM_NONE, which is more readable.\n\nSigned-off-by: Cesar Eduardo Barros \u003ccesarb@cesarb.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9c7a4f9ce651383c73dfdff3d7e21d5f9572c4ec",
      "tree": "5286988a4c78be842ea164c24e1acf932d19b4a0",
      "parents": [
        "db138908ccff404b9920f18f6244f4bff2368c04"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Tue Mar 22 19:17:36 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 22 19:17:36 2011 -0700"
      },
      "message": "ipv6: ip6_route_output does not modify sk parameter, so make it const\n\nThis avoids explicit cast to avoid \u0027discards qualifiers\u0027\ncompiler warning in a netfilter patch that i\u0027ve been working on.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d2a8fa96a44ba242de3a6f56acaef7a40a97b97",
      "tree": "1fd01e0ef3da06d1508481aeb7c3c4994122dff9",
      "parents": [
        "d5cd92448fded12c91f7574e49747c5f7d975a8d"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@aristanetworks.com",
        "time": "Mon Mar 21 18:23:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 21 18:23:34 2011 -0700"
      },
      "message": "net ipv6: Fix duplicate /proc/sys/net/ipv6/neigh directory entries.\n\nWhen I was fixing issues with unregisgtering tables under /proc/sys/net/ipv6/neigh\nby adding a mount point it appears I missed a critical ordering issue, in the\nipv6 initialization.  I had not realized that ipv6_sysctl_register is called\nat the very end of the ipv6 initialization and in particular after we call\nneigh_sysctl_register from ndisc_init.\n\n\"neigh\" needs to be initialized in ipv6_static_sysctl_register which is\nthe first ipv6 table to initialized, and definitely before ndisc_init.\nThis removes the weirdness of duplicate tables while still providing a\n\"neigh\" mount point which prevents races in sysctl unregistering.\n\nThis was initially reported at https://bugzilla.kernel.org/show_bug.cgi?id\u003d31232\nReported-by: sunkan@zappa.cx\nSigned-off-by: Eric W. Biederman \u003cebiederm@aristanetworks.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db856674ac69e31946e56085239757cca3f7655f",
      "tree": "73fc82e92a119dcf1a0ce4e2ca45ef410165776f",
      "parents": [
        "5c1aba467828bf0574ec5754c84884d573f590af"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Mar 20 15:40:06 2011 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Mar 20 15:40:06 2011 +0100"
      },
      "message": "netfilter: xtables: fix reentrancy\n\ncommit f3c5c1bfd4308 (make ip_tables reentrant) introduced a race in\nhandling the stackptr restore, at the end of ipt_do_table()\n\nWe should do it before the call to xt_info_rdunlock_bh(), or we allow\ncpu preemption and another cpu overwrites stackptr of original one.\n\nA second fix is to change the underflow test to check the origptr value\ninstead of 0 to detect underflow, or else we allow a jump from different\nhooks.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Jan Engelhardt \u003cjengelh@medozas.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "e16b396ce314b2bcdfe6c173fe075bf8e3432368",
      "tree": "640f0f56f2ea676647af4eb42d32fa56be2ee549",
      "parents": [
        "7fd23a24717a327a66f3c32d11a20a2f169c824f",
        "e6e8dd5055a974935af1398c8648d4a9359b0ecb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 18 10:37:40 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (47 commits)\n  doc: CONFIG_UNEVICTABLE_LRU doesn\u0027t exist anymore\n  Update cpuset info \u0026 webiste for cgroups\n  dcdbas: force SMI to happen when expected\n  arch/arm/Kconfig: remove one to many l\u0027s in the word.\n  asm-generic/user.h: Fix spelling in comment\n  drm: fix printk typo \u0027sracth\u0027\n  Remove one to many n\u0027s in a word\n  Documentation/filesystems/romfs.txt: fixing link to genromfs\n  drivers:scsi Change printk typo initate -\u003e initiate\n  serial, pch uart: Remove duplicate inclusion of linux/pci.h header\n  fs/eventpoll.c: fix spelling\n  mm: Fix out-of-date comments which refers non-existent functions\n  drm: Fix printk typo \u0027failled\u0027\n  coh901318.c: Change initate to initiate.\n  mbox-db5500.c Change initate to initiate.\n  edac: correct i82975x error-info reported\n  edac: correct i82975x mci initialisation\n  edac: correct commented info\n  fs: update comments to point correct document\n  target: remove duplicate include of target/target_core_device.h from drivers/target/target_core_hba.c\n  ...\n\nTrivial conflict in fs/eventpoll.c (spelling vs addition)\n"
    },
    {
      "commit": "31111c26d976ca0f298312f08e44cdb078005b03",
      "tree": "ca08ef55b2ea91f9e69f8a78bb8b4363a1759b54",
      "parents": [
        "0c0217b016ba8a970a6f6ab62ad0d858f39881ca",
        "2f5dc63123905a89d4260ab8ee08d19ec104db04"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 15 13:03:27 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 15 13:03:27 2011 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n"
    },
    {
      "commit": "6a8ab060779779de8aea92ce3337ca348f973f54",
      "tree": "bdd3ebda1c8b1e75c32f6fa115ada1dcef18f1f4",
      "parents": [
        "78b79876761b86653df89c48a7010b5cbd41a84a"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Tue Mar 15 13:37:13 2011 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Mar 15 13:37:13 2011 +0100"
      },
      "message": "ipv6: netfilter: ip6_tables: fix infoleak to userspace\n\nStructures ip6t_replace, compat_ip6t_replace, and xt_get_revision are\ncopied from userspace.  Fields of these structs that are\nzero-terminated strings are not checked.  When they are used as argument\nto a format string containing \"%s\" in request_module(), some sensitive\ninformation is leaked to userspace via argument of spawned modprobe\nprocess.\n\nThe first bug was introduced before the git epoch;  the second was\nintroduced in 3bc3fe5e (v2.6.25-rc1);  the third is introduced by\n6b7d31fc (v2.6.15-rc1).  To trigger the bug one should have\nCAP_NET_ADMIN.\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "d212a4c29096484e5e83b5006e695add126260af",
      "tree": "00f5c3bcbc7560591820070364d78e21c241be34",
      "parents": [
        "0dc49e9b28a7253ff05be2794d747f8ea5f1f423"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Mar 08 00:07:51 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 13 20:22:29 2011 -0700"
      },
      "message": "esp6: Add support for IPsec extended sequence numbers\n\nThis patch adds IPsec extended sequence numbers support to esp6.\nWe use the authencesn crypto algorithm to handle esp with separate\nencryption/authentication algorithms.\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": "1ce3644ade9c865c755bf0f6a4e109b7bb6eb60f",
      "tree": "14ce0727337a43d1fa28432d01189d1a5f4269c7",
      "parents": [
        "9736acf395d3608583a7be70f62800b494fa103c"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Tue Mar 08 00:06:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 13 20:22:28 2011 -0700"
      },
      "message": "xfrm: Use separate low and high order bits of the sequence numbers in xfrm_skb_cb\n\nTo support IPsec extended sequence numbers, we split the\noutput sequence numbers of xfrm_skb_cb in low and high order 32 bits\nand we add the high order 32 bits to the input sequence numbers.\nAll users are updated accordingly.\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": "1958b856c1a59c0f1e892b92debb8c9fe4f364dc",
      "tree": "679e060ad7c1e36ee2e5aec0c686921c66c9bc2c",
      "parents": [
        "4c9483b2fb5d2548c3cc1fe03cdd4484ceeb5d1c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 16:36:19 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:55 2011 -0800"
      },
      "message": "net: Put fl6_* macros to struct flowi6 and use them again.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c9483b2fb5d2548c3cc1fe03cdd4484ceeb5d1c",
      "tree": "c29c8070012cffb38fe249cf528589a675f622b1",
      "parents": [
        "9cce96df5b76691712dba22e83ff5efe900361e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 16:22:43 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:54 2011 -0800"
      },
      "message": "ipv6: Convert to use flowi6 where applicable.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e1dc7b6f709dfc1a9ab4b320dbe723f45992693",
      "tree": "db3a0ae07fb469c7f809a448bc39563f98edfec5",
      "parents": [
        "2032656e76b5355151effdff14de4a1a58643915"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 02:42:11 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:52 2011 -0800"
      },
      "message": "net: Use flowi4 and flowi6 in xfrm layer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "56bb8059e1a8bf291054c26367564dc302f6fd8f",
      "tree": "56ec5ae2c1856208ccf97a0cd6b21ab0587f34cf",
      "parents": [
        "6281dcc94a96bd73017b2baa8fa83925405109ef"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:44:35 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:46 2011 -0800"
      },
      "message": "net: Break struct flowi out into AF specific instances.\n\nNow we have struct flowi4, flowi6, and flowidn for each address\nfamily.  And struct flowi is just a union of them all.\n\nIt might have been troublesome to convert flow_cache_uli_match() but\nas it turns out this function is completely unused and therefore can\nbe simply removed.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6281dcc94a96bd73017b2baa8fa83925405109ef",
      "tree": "8deee4d66d256d10ea25f66520eb96b1fade1545",
      "parents": [
        "08704bcbf022786532b5f188935ab6619906049f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:43:55 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:46 2011 -0800"
      },
      "message": "net: Make flowi ports AF dependent.\n\nCreate two sets of port member accessors, one set prefixed by fl4_*\nand the other prefixed by fl6_*\n\nThis will let us to create AF optimal flow instances.\n\nIt will work because every context in which we access the ports,\nwe have to be fully aware of which AF the flowi is anyways.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d28f42c1bd4bb2363d88df74d0128b4da135b4a",
      "tree": "cb2e652fe79a2bc307e871bc2d3fa51cc8051e45",
      "parents": [
        "ca116922afa8cc5ad46b00c0a637b1cde5ca478a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:29:39 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:44 2011 -0800"
      },
      "message": "net: Put flowi_* prefix on AF independent members of struct flowi\n\nI intend to turn struct flowi into a union of AF specific flowi\nstructs.  There will be a common structure that each variant includes\nfirst, much like struct sock_common.\n\nThis is the first step to move in that direction.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "78fbfd8a653ca972afe479517a40661bfff6d8c3",
      "tree": "9dccc5c16bf269d53d8499064ec95a998e84c646",
      "parents": [
        "1561747ddf9d28185548687b11aae7074d6129c4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:00:52 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:42 2011 -0800"
      },
      "message": "ipv4: Create and use route lookup helpers.\n\nThe idea here is this minimizes the number of places one has to edit\nin order to make changes to how flows are defined and used.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33175d84ee3fa29991adb80513683e010769e807",
      "tree": "3731f61cf82451b6892cf1368701e57e35d92908",
      "parents": [
        "c5908939b2738bafe1b309bc2465cb9f2e6184c5",
        "6dfbd87a20a737641ef228230c77f4262434fa24"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 10 14:26:00 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 10 14:26:00 2011 -0800"
      },
      "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_cmn.c\n"
    },
    {
      "commit": "6dfbd87a20a737641ef228230c77f4262434fa24",
      "tree": "0ebffefdd7ded0a2919426c0b7b87bc63f3d321e",
      "parents": [
        "bef6e7e76868ab454d5e83635a4a7a1961c74fb5"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Thu Mar 10 11:43:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 10 14:18:48 2011 -0800"
      },
      "message": "ip6ip6: autoload ip6 tunnel\n\nAdd necessary alias to autoload ip6ip6 tunnel module.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bef6e7e76868ab454d5e83635a4a7a1961c74fb5",
      "tree": "1a7417b9dde942cc71f87c02688c6ac6b0e57a72",
      "parents": [
        "dcbcdf22f500ac6e4ec06485341024739b9dc241",
        "9179746652faf0aba07b8b7f770dcf29892a24c6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 10 14:00:44 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 10 14:00:44 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "7343ff31ebf01691ea4515d3126467434b9d22d6",
      "tree": "13c8180b8aeb82363c1e7b576372c23fa2d5f955",
      "parents": [
        "03a14ab134f4811ab1475f07b1305ccaf38b690f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 09 19:55:25 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 09 19:55:25 2011 -0800"
      },
      "message": "ipv6: Don\u0027t create clones of host routes.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d29252\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d30462\n\nIn commit d80bc0fd262ef840ed4e82593ad6416fa1ba3fc4 (\"ipv6: Always\nclone offlink routes.\") we forced the kernel to always clone offlink\nroutes.\n\nThe reason we do that is to make sure we never bind an inetpeer to a\nprefixed route.\n\nThe logic turned on here has existed in the tree for many years,\nbut was always off due to a protecting CPP define.  So perhaps\nit\u0027s no surprise that there is a logic bug here.\n\nThe problem is that we canot clone a route that is already a\nhost route (ie. has DST_HOST set).  Because if we do, an identical\nentry already exists in the routing tree and therefore the\nip6_rt_ins() call is going to fail.\n\nThis sets off a series of failures and high cpu usage, because when\nip6_rt_ins() fails we loop retrying this operation a few times in\norder to handle a race between two threads trying to clone and insert\nthe same host route at the same time.\n\nFix this by simply using the route as-is when DST_HOST is set.\n\nReported-by: slash@ac.auone-net.jp\nReported-by: Ernst Sjöstrand \u003cernstp@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8909c9ad8ff03611c9c96c9a92656213e4bb495b",
      "tree": "10b023c05503a9f6a165a23b8e65d8f3e70fd42d",
      "parents": [
        "a5abba989deceb731047425812d268daf7536575"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Wed Mar 02 00:33:13 2011 +0300"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Mar 10 10:25:19 2011 +1100"
      },
      "message": "net: don\u0027t allow CAP_NET_ADMIN to load non-netdev kernel modules\n\nSince a8f80e8ff94ecba629542d9b4b5f5a8ee3eb565c any process with\nCAP_NET_ADMIN may load any module from /lib/modules/.  This doesn\u0027t mean\nthat CAP_NET_ADMIN is a superset of CAP_SYS_MODULE as modules are\nlimited to /lib/modules/**.  However, CAP_NET_ADMIN capability shouldn\u0027t\nallow anybody load any module not related to networking.\n\nThis patch restricts an ability of autoloading modules to netdev modules\nwith explicit aliases.  This fixes CVE-2011-1019.\n\nArnd Bergmann suggested to leave untouched the old pre-v2.6.32 behavior\nof loading netdev modules by name (without any prefix) for processes\nwith CAP_SYS_MODULE to maintain the compatibility with network scripts\nthat use autoloading netdev modules by aliases like \"eth0\", \"wlan0\".\n\nCurrently there are only three users of the feature in the upstream\nkernel: ipip, ip_gre and sit.\n\n    root@albatros:~# capsh --drop\u003d$(seq -s, 0 11),$(seq -s, 13 34) --\n    root@albatros:~# grep Cap /proc/$$/status\n    CapInh:\t0000000000000000\n    CapPrm:\tfffffff800001000\n    CapEff:\tfffffff800001000\n    CapBnd:\tfffffff800001000\n    root@albatros:~# modprobe xfs\n    FATAL: Error inserting xfs\n    (/lib/modules/2.6.38-rc6-00001-g2bf4ca3/kernel/fs/xfs/xfs.ko): Operation not permitted\n    root@albatros:~# lsmod | grep xfs\n    root@albatros:~# ifconfig xfs\n    xfs: error fetching interface information: Device not found\n    root@albatros:~# lsmod | grep xfs\n    root@albatros:~# lsmod | grep sit\n    root@albatros:~# ifconfig sit\n    sit: error fetching interface information: Device not found\n    root@albatros:~# lsmod | grep sit\n    root@albatros:~# ifconfig sit0\n    sit0      Link encap:IPv6-in-IPv4\n\t      NOARP  MTU:1480  Metric:1\n\n    root@albatros:~# lsmod | grep sit\n    sit                    10457  0\n    tunnel4                 2957  1 sit\n\nFor CAP_SYS_MODULE module loading is still relaxed:\n\n    root@albatros:~# grep Cap /proc/$$/status\n    CapInh:\t0000000000000000\n    CapPrm:\tffffffffffffffff\n    CapEff:\tffffffffffffffff\n    CapBnd:\tffffffffffffffff\n    root@albatros:~# ifconfig xfs\n    xfs: error fetching interface information: Device not found\n    root@albatros:~# lsmod | grep xfs\n    xfs                   745319  0\n\nReference: https://lkml.org/lkml/2011/2/24/203\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: Michael Tokarev \u003cmjt@tls.msk.ru\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "4b66fef9b591b95f447aea12242a1133deb0bd22",
      "tree": "9f9a6e36e8412b004ad61b85f0fb81b9c0247025",
      "parents": [
        "06f0c1392c20d708ffae067fdcad604882e19200"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Fri Mar 04 11:45:03 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 07 15:51:13 2011 -0800"
      },
      "message": "mcast: net_device dev not used\n\nip6_mc_source(), ip6_mc_msfilter() as well as ip6_mc_msfget() declare\nand assign dev but do not use the variable afterwards.\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a0e9ae1bd788bc19adc4d4ae08c98b233697402",
      "tree": "13825eeb5bbeae27d66e95f12168eff4b60701ab",
      "parents": [
        "01a16b21d6adf992aa863186c3c4e561a57c1714",
        "b65a0e0c84cf489bfa00d6aa6c48abc5a237100f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 21:27:42 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 21:27:42 2011 -0800"
      },
      "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.h\n"
    },
    {
      "commit": "29546a6404e3a4b5d13f0a9586eb5cf1c3b25167",
      "tree": "a8be742e4d7980b588103b39a6cdb5f2ac165061",
      "parents": [
        "a45d49d1053fd5954260a70e555daabd5672577d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 12:10:37 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 03 12:10:37 2011 -0800"
      },
      "message": "ipv6: Use ERR_CAST in addrconf_dst_alloc.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b23dd4fe42b455af5c6e20966b7d6959fa8352ea",
      "tree": "bf97323eae9a8d084170e573ff2c0c40bc72c3cd",
      "parents": [
        "452edd598f60522c11f7f88fdbab27eb36509d1a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "message": "ipv4: Make output route lookup return rtable directly.\n\nInstead of on the stack.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "452edd598f60522c11f7f88fdbab27eb36509d1a",
      "tree": "df1510e9848e591a412c8bfa724253470c48c4c2",
      "parents": [
        "3872b284087081ee5cb0e4630954c2f7a2153cf5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 13:27:41 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 13:27:41 2011 -0800"
      },
      "message": "xfrm: Return dst directly from xfrm_lookup()\n\nInstead of on the stack.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b42835dbe83d725198c7ab0bbe726d6dfd92a634",
      "tree": "8728dccb3fa9bb54dba53a0a00c6e2818b843a91",
      "parents": [
        "f6d460cf0ed16d35aec48f823685e7a0e0283d84"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 22:06:22 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 22:07:37 2011 -0800"
      },
      "message": "ipv6: Make icmp route lookup code a bit clearer.\n\nThe route lookup code in icmpv6_send() is slightly tricky as a result of\nhaving to handle all of the requirements of RFC 4301 host relookups.\n\nPull the route resolution into a seperate function, so that the error\nhandling and route reference counting is hopefully easier to see and\ncontained wholly within this new routine.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2774c131b1d19920b4587db1cfbd6f0750ad1f15",
      "tree": "3a0482c727cf4dcc046a211214f12459dcba8271",
      "parents": [
        "69ead7afdf6028184f713a77376ee26f8aaafdcd"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:59:04 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:59:04 2011 -0800"
      },
      "message": "xfrm: Handle blackhole route creation via afinfo.\n\nThat way we don\u0027t have to potentially do this in every xfrm_lookup()\ncaller.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69ead7afdf6028184f713a77376ee26f8aaafdcd",
      "tree": "bd5cd86f9786daadfd5425f65106bd1c7383fcc7",
      "parents": [
        "80c0bc9e37adfc892af82cb6aa8cace79f8a96cb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:45:33 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:45:33 2011 -0800"
      },
      "message": "ipv6: Normalize arguments to ip6_dst_blackhole().\n\nReturn a dst pointer which is potentitally error encoded.\n\nDon\u0027t pass original dst pointer by reference, pass a struct net\ninstead of a socket, and elide the flow argument since it is\nunnecessary.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "80c0bc9e37adfc892af82cb6aa8cace79f8a96cb",
      "tree": "0f4abc233d9661e85c7c7ecb064a75a8f0984f1f",
      "parents": [
        "a1414715f0ac905fb4b3a158ff6548d37bbe6165"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:36:37 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:36:37 2011 -0800"
      },
      "message": "xfrm: Kill XFRM_LOOKUP_WAIT flag.\n\nThis can be determined from the flow flags instead.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a1414715f0ac905fb4b3a158ff6548d37bbe6165",
      "tree": "64d8875dd744deff8ccfd0afad7a0806f4e4308a",
      "parents": [
        "273447b352e69c327efdecfd6e1d6fe3edbdcd14"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:32:04 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:32:04 2011 -0800"
      },
      "message": "ipv6: Change final dst lookup arg name to \"can_sleep\"\n\nSince it indicates whether we are invoked from a sleepable\ncontext or not.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5df65e5567a497a28067019b8ff08f98fb026629",
      "tree": "776a8a2cfa2cf5962ea0d53dea8c6c8360a0c58d",
      "parents": [
        "420d44daa7aa1cc847e9e527f0a27a9ce61768ca"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:22:19 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:22:19 2011 -0800"
      },
      "message": "net: Add FLOWI_FLAG_CAN_SLEEP.\n\nAnd set is in contexts where the route resolution can sleep.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68d0c6d34d586a893292d4fb633a3bf8c547b222",
      "tree": "b6d812307621873cf16000171563c1f68b5bc255",
      "parents": [
        "903ab86d195cca295379699299c5fc10beba31c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 13:19:07 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 13:19:07 2011 -0800"
      },
      "message": "ipv6: Consolidate route lookup sequences.\n\nRoute lookups follow a general pattern in the ipv6 code wherein\nwe first find the non-IPSEC route, potentially override the\nflow destination address due to ipv6 options settings, and then\nfinally make an IPSEC search using either xfrm_lookup() or\n__xfrm_lookup().\n\n__xfrm_lookup() is used when we want to generate a blackhole route\nif the key manager needs to resolve the IPSEC rules (in this case\n-EREMOTE is returned and the original \u0027dst\u0027 is left unchanged).\n\nOtherwise plain xfrm_lookup() is used and when asynchronous IPSEC\nresolution is necessary, we simply fail the lookup completely.\n\nAll of these cases are encapsulated into two routines,\nip6_dst_lookup_flow and ip6_sk_dst_lookup_flow.  The latter of which\nhandles unconnected UDP datagram sockets.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a2ef92023506d4e9cd13617b5a46b4d0f1b6747",
      "tree": "995af8882f53c67ed79e10a1bd37d523ba7986a9",
      "parents": [
        "9836f4080fd5b680cc2d9656355c1a7c681b1ffd"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Mar 01 02:36:47 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 12:35:02 2011 -0800"
      },
      "message": "inet: Remove unused sk_sndmsg_* from UFO\n\nUFO doesn\u0027t really use the sk_sndmsg_* parameters so touching\nthem is pointless.  It can\u0027t use them anyway since the whole\npoint of UFO is to use the original pages without copying.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a693e69897e7811e2790295f38a0ce3a92c4b45c",
      "tree": "2c3cd9d7288821a7b71dc7f4481462150f41de63",
      "parents": [
        "eaaa3a7c4da2bdc48e536bb750860253150cb931"
      ],
      "author": {
        "name": "Anders Berggren",
        "email": "anders@halon.se",
        "time": "Mon Feb 28 12:32:11 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 28 12:32:11 2011 -0800"
      },
      "message": "net: TX timestamps for IPv6 UDP packets\n\nEnabling TX timestamps (SO_TIMESTAMPING) for IPv6 UDP packets, in\nthe same fashion as for IPv4. Necessary in order for NICs such as\nIntel 82580 to timestamp IPv6 packets.\n\nSigned-off-by: Anders Berggren \u003canders@halon.se\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddc3731fcb712646e4a0f8e6117af6a153e9d36f",
      "tree": "3b36d1f397ef7255ff437cf8f51921e03751e32e",
      "parents": [
        "e9476e95d8707d1567d1af60df2c1f19630219a3"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Fri Feb 25 05:45:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 25 14:00:23 2011 -0800"
      },
      "message": "ipv6: ignore rtnl_unicast() return code\n\nrtnl_unicast() return value is not of interest, we can silently ignore\nit, save some instructions and four byte on the stack.\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e9476e95d8707d1567d1af60df2c1f19630219a3",
      "tree": "54f6de320be67fe161f65e2c472664ed6d1be0d9",
      "parents": [
        "96d796a38e9ec9a7c04a6cda3fc15d79efebb008"
      ],
      "author": {
        "name": "Hagen Paul Pfeifer",
        "email": "hagen@jauu.net",
        "time": "Fri Feb 25 05:45:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Feb 25 14:00:22 2011 -0800"
      },
      "message": "ipv6: variable next is never used in this function\n\nSigned-off-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "96d796a38e9ec9a7c04a6cda3fc15d79efebb008"
}
