)]}'
{
  "log": [
    {
      "commit": "f03d78db65085609938fdb686238867e65003181",
      "tree": "03b8e492d91ad6819a44e0d454af2292e884964c",
      "parents": [
        "eebb02b1f03b3722d678bfcb560f3b26661ab0d2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jul 07 00:27:05 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 07 00:27:05 2011 -0700"
      },
      "message": "net: refine {udp|tcp|sctp}_mem limits\n\nCurrent tcp/udp/sctp global memory limits are not taking into account\nhugepages allocations, and allow 50% of ram to be used by buffers of a\nsingle protocol [ not counting space used by sockets / inodes ...]\n\nLets use nr_free_buffer_pages() and allow a default of 1/8 of kernel ram\nper protocol, and a minimum of 128 pages.\nHeavy duty machines sysadmins probably need to tweak limits anyway.\n\n\nReferences: https://bugzilla.stlinux.com/show_bug.cgi?id\u003d38032\nReported-by: starlight \u003cstarlight@binnacle.cx\u003e\nSuggested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c349a528cd47e2272ded0ea358363855e86180da",
      "tree": "dea71c512c96728337724c8dbc012f74abb7ba27",
      "parents": [
        "2fb83cd618be34546fb526a9051eceaa95517026"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@novell.com",
        "time": "Mon Jul 04 01:30:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 04 21:37:41 2011 -0700"
      },
      "message": "net: bind() fix error return on wrong address family\n\nHi,\n\nReinhard Max also pointed out that the error should EAFNOSUPPORT according\nto POSIX.\n\nThe Linux manpages have it as EINVAL, some other OSes (Minix, HPUX, perhaps BSD) use\nEAFNOSUPPORT. Windows uses WSAEFAULT according to MSDN.\n\nOther protocols error values in their af bind() methods in current mainline git as far\nas a brief look shows:\n\tEAFNOSUPPORT: atm, appletalk, l2tp, llc, phonet, rxrpc\n\tEINVAL: ax25, bluetooth, decnet, econet, ieee802154, iucv, netlink, netrom, packet, rds, rose, unix, x25,\n\tNo check?: can/raw, ipv6/raw, irda, l2tp/l2tp_ip\n\nCiao, Marcus\n\nSigned-off-by: Marcus Meissner \u003cmeissner@suse.de\u003e\nCc: Reinhard Max \u003cmax@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b00897b881f775040653955fda99dcf7c167b382",
      "tree": "95462798585771d75f9a3febe9b2145414f942c4",
      "parents": [
        "c146066ab80267c3305de5dda6a4083f06df9265"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Jun 29 23:20:41 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 17:33:19 2011 -0700"
      },
      "message": "xfrm4: Don\u0027t call icmp_send on local error\n\nCalling icmp_send() on a local message size error leads to\nan incorrect update of the path mtu. So use ip_local_error()\ninstead to notify the socket about the error.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c146066ab80267c3305de5dda6a4083f06df9265",
      "tree": "2eda84544f43e8ec2e6051af36b9cc90a4171c9b",
      "parents": [
        "12fdb4d3babcde43834c54dee22a69bb73adbae7"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Jun 29 23:19:32 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 01 17:33:19 2011 -0700"
      },
      "message": "ipv4: Don\u0027t use ufo handling on later transformed packets\n\nWe might call ip_ufo_append_data() for packets that will be IPsec\ntransformed later. This function should be used just for real\nudp packets. So we check for rt-\u003edst.header_len which is only\nnonzero on IPsec handling and call ip_ufo_append_data() just\nif rt-\u003edst.header_len is zero.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed6e4ef836d425bc35e33bf20fcec95e68203afa",
      "tree": "bccb0b3262b5885324f27c08858abe9c5bdce26e",
      "parents": [
        "353e5c9abd900de3d1a40925386ffe4abf76111e"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Sat Jun 18 07:53:59 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 29 05:47:32 2011 -0700"
      },
      "message": "netfilter: Fix ip_route_me_harder triggering ip_rt_bug\n\n\tAvoid creating input routes with ip_route_me_harder.\nIt does not work for locally generated packets. Instead,\nrestrict sockets to provide valid saddr for output route (or\nunicast saddr for transparent proxy). For other traffic\nallow saddr to be unicast or local but if callers forget\nto check saddr type use 0 for the output route.\n\n\tThe resulting handling should be:\n\n- REJECT TCP:\n\t- in INPUT we can provide addr_type \u003d RTN_LOCAL but\n\tbetter allow rejecting traffic delivered with\n\tlocal route (no IP address \u003d\u003e use RTN_UNSPEC to\n\tallow also RTN_UNICAST).\n\t- FORWARD: RTN_UNSPEC \u003d\u003e allow RTN_LOCAL/RTN_UNICAST\n\tsaddr, add fix to ignore RTN_BROADCAST and RTN_MULTICAST\n\t- OUTPUT: RTN_UNSPEC\n\n- NAT, mangle, ip_queue, nf_ip_reroute: RTN_UNSPEC in LOCAL_OUT\n\n- IPVS:\n\t- use RTN_LOCAL in LOCAL_OUT and FORWARD after SNAT\n\tto restrict saddr to be local\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "353e5c9abd900de3d1a40925386ffe4abf76111e",
      "tree": "0aeb8a65afb48fb4011d4ee4aa243288d24c8daf",
      "parents": [
        "33f99dc7fd948bbc808a24a0989c167f8973b643"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Jun 22 01:05:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 27 20:34:26 2011 -0700"
      },
      "message": "ipv4: Fix IPsec slowpath fragmentation problem\n\nip_append_data() builds packets based on the mtu from dst_mtu(rt-\u003edst.path).\nOn IPsec the effective mtu is lower because we need to add the protocol\nheaders and trailers later when we do the IPsec transformations. So after\nthe IPsec transformations the packet might be too big, which leads to a\nslowpath fragmentation then. This patch fixes this by building the packets\nbased on the lower IPsec mtu from dst_mtu(\u0026rt-\u003edst) and adapts the exthdr\nhandling to this.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33f99dc7fd948bbc808a24a0989c167f8973b643",
      "tree": "ab144777bc45ac1c40c5fad94198494198adda7c",
      "parents": [
        "d6fe5f4eccc2a7d2ad885ecb26a192b08dcc7cd1"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Jun 22 01:04:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 27 20:34:25 2011 -0700"
      },
      "message": "ipv4: Fix packet size calculation in __ip_append_data\n\nGit commit 59104f06 (ip: take care of last fragment in ip_append_data)\nadded a check to see if we exceed the mtu when we add trailer_len.\nHowever, the mtu is already subtracted by the trailer length when the\nxfrm transfomation bundles are set up. So IPsec packets with mtu\nsize get fragmented, or if the DF bit is set the packets will not\nbe send even though they match the mtu perfectly fine. This patch\nactually reverts commit 59104f06.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cfaa8def1c795a512bc04f2aec333b03724ca2e",
      "tree": "2c4bff0afe8424472b780a65a8d356db2d62caf4",
      "parents": [
        "32c90254ed4a0c698caa0794ebb4de63fcc69631"
      ],
      "author": {
        "name": "Xufeng Zhang",
        "email": "xufeng.zhang@windriver.com",
        "time": "Tue Jun 21 10:43:40 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 21 22:34:27 2011 -0700"
      },
      "message": "udp/recvmsg: Clear MSG_TRUNC flag when starting over for a new packet\n\nConsider this scenario: When the size of the first received udp packet\nis bigger than the receive buffer, MSG_TRUNC bit is set in msg-\u003emsg_flags.\nHowever, if checksum error happens and this is a blocking socket, it will\ngoto try_again loop to receive the next packet.  But if the size of the\nnext udp packet is smaller than receive buffer, MSG_TRUNC flag should not\nbe set, but because MSG_TRUNC bit is not cleared in msg-\u003emsg_flags before\nreceive the next packet, MSG_TRUNC is still set, which is wrong.\n\nFix this problem by clearing MSG_TRUNC flag when starting over for a\nnew packet.\n\nSigned-off-by: Xufeng Zhang \u003cxufeng.zhang@windriver.com\u003e\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ad2475e3555346fbd738e77da12578b97d10505",
      "tree": "da23912aab5aa9433b7f3932bdb10e0158fda37e",
      "parents": [
        "c82b9d7fe7464aec78210544948564ffe3bb2d2b"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sun Jun 19 22:31:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:04:38 2011 -0700"
      },
      "message": "ipv4, ping: Remove duplicate icmp.h include\n\nRemove the duplicate inclusion of net/icmp.h from net/ipv4/ping.c\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9aa3c94ce59066f545521033007abb6441706068",
      "tree": "12b23e85bf4ef55ca856168dcbdb54f39045312a",
      "parents": [
        "eeb1497277d6b1a0a34ed36b97e18f2bd7d6de0d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Jun 18 11:59:18 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 11:59:18 2011 -0700"
      },
      "message": "ipv4: fix multicast losses\n\nKnut Tidemann found that first packet of a multicast flow was not\ncorrectly received, and bisected the regression to commit b23dd4fe42b4\n(Make output route lookup return rtable directly.)\n\nSpecial thanks to Knut, who provided a very nice bug report, including\nsample programs to demonstrate the bug.\n\nReported-and-bisectedby: Knut Tidemann \u003cknut.andre.tidemann@jotron.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eeb1497277d6b1a0a34ed36b97e18f2bd7d6de0d",
      "tree": "6bf39e1931999e49ef29b2bdcacc530044dcb1df",
      "parents": [
        "2f9381e98471837b631743270de988e78aad1f96"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Jun 17 16:25:39 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 17 16:25:39 2011 -0400"
      },
      "message": "inet_diag: fix inet_diag_bc_audit()\n\nA malicious user or buggy application can inject code and trigger an\ninfinite loop in inet_diag_bc_audit()\n\nAlso make sure each instruction is aligned on 4 bytes boundary, to avoid\nunaligned accesses.\n\nReported-by: Dan Rosenberg \u003cdrosenberg@vsecurity.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.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": "3009adf5acb2245216651318c2226812fd1b01a6",
      "tree": "3fa6a085be2eab409aec447ab8bd7c4737321688",
      "parents": [
        "9281b2a2e2e02ad4bcc2fdd11797709b815d5f8e",
        "42c1edd345c8412d96e7a362ee06feb7be73bb6c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@conan.davemloft.net",
        "time": "Thu Jun 16 21:38:01 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@conan.davemloft.net",
        "time": "Thu Jun 16 21:38:01 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "42c1edd345c8412d96e7a362ee06feb7be73bb6c",
      "tree": "5b05b0324b8186fe8bc40ffced48c856b099547d",
      "parents": [
        "2c38de4c1f8da799bdca0e4bb40ca13f2174d3e8"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Thu Jun 16 17:29:22 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:29:22 2011 +0200"
      },
      "message": "netfilter: nf_nat: avoid double seq_adjust for loopback\n\n\tAvoid double seq adjustment for loopback traffic\nbecause it causes silent repetition of TCP data. One\nexample is passive FTP with DNAT rule and difference in the\nlength of IP addresses.\n\n\tThis patch adds check if packet is sent and\nreceived via loopback device. As the same conntrack is\nused both for outgoing and incoming direction, we restrict\nseq adjustment to happen only in POSTROUTING.\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.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": "db898aa2ef6529fa80891e754d353063611c77de",
      "tree": "7ac085f1acb6d79516ac0043357fdac26505161f",
      "parents": [
        "58d5a0257d2fd89fbe4451f704193cc95b0a9c97"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:24:55 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:24:55 2011 +0200"
      },
      "message": "netfilter: ipt_ecn: fix inversion for IP header ECN match\n\nUserspace allows to specify inversion for IP header ECN matches, the\nkernel silently accepts it, but doesn\u0027t invert the match result.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "58d5a0257d2fd89fbe4451f704193cc95b0a9c97",
      "tree": "63ed637719b75c9b3476c360ef14662df3703a75",
      "parents": [
        "63f6fe92c6b3cbf4c0bbbea4b31fdd3d68e21e4d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:24:17 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:24:17 2011 +0200"
      },
      "message": "netfilter: ipt_ecn: fix protocol check in ecn_mt_check()\n\nCheck for protocol inversion in ecn_mt_check() and remove the\nunnecessary runtime check for IPPROTO_TCP in ecn_mt().\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "63f6fe92c6b3cbf4c0bbbea4b31fdd3d68e21e4d",
      "tree": "2d030899bbbc2a040447fa509b581a0d659223b0",
      "parents": [
        "122c4f10f7b66f9c7a0177de668e9662b0b14a05"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "sebastian@breakpoint.cc",
        "time": "Thu Jun 16 17:16:37 2011 +0200"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Thu Jun 16 17:16:37 2011 +0200"
      },
      "message": "netfilter: ip_tables: fix compile with debug\n\nSigned-off-by: Sebastian Andrzej Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "96d7303e9cfb6a9bc664174a4dfdb6fa689284fe",
      "tree": "5478498eaa5f23f2548930d83b06b3ee1280856d",
      "parents": [
        "e23535ca11525945bd7fca05ac5941efba232498"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Sun Jun 05 20:48:47 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 14:49:59 2011 -0700"
      },
      "message": "ipv4: Fix packet size calculation for raw IPsec packets in __ip_append_data\n\nWe assume that transhdrlen is positive on the first fragment\nwhich is wrong for raw packets. So we don\u0027t add exthdrlen to the\npacket size for raw packets. This leads to a reallocation on IPsec\nbecause we have not enough headroom on the skb to place the IPsec\nheaders. This patch fixes this by adding exthdrlen to the packet\nsize whenever the send queue of the socket is empty. This issue was\nintroduced with git commit 1470ddf7 (inet: Remove explicit write\nreferences to sk/inet in ip_append_data)\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fe6fe792faec3fc2d2db39b69651682b8c4e7fcb",
      "tree": "bf2ea12d05616187177ae7b699c1349f4cf79871",
      "parents": [
        "6c43e0465f56248d9da56f2c4665ce1696766814"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jun 08 06:07:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 09 00:24:53 2011 -0700"
      },
      "message": "net: pmtu_expires fixes\n\ncommit 2c8cec5c10bc (ipv4: Cache learned PMTU information in inetpeer)\nadded some racy peer-\u003epmtu_expires accesses.\n\nAs its value can be changed by another cpu/thread, we should be more\ncareful, reading its value once.\n\nAdd peer_pmtu_expired() and peer_pmtu_cleaned() helpers\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\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": "d9be76f38526dccf84062e3ac3ed3a6a97698565",
      "tree": "cc819ad8ffd4f11bf916d624010863d978874b30",
      "parents": [
        "b48e3c5c323fea08c12a340cbb8dcc8ca2431d5b"
      ],
      "author": {
        "name": "Julian Anastasov",
        "email": "ja@ssi.bg",
        "time": "Sun May 29 23:42:29 2011 +0300"
      },
      "committer": {
        "name": "Pablo Neira Ayuso",
        "email": "pablo@netfilter.org",
        "time": "Mon Jun 06 01:36:46 2011 +0200"
      },
      "message": "netfilter: nf_nat: fix crash in nf_nat_csum\n\nFix crash in nf_nat_csum when mangling packets\nin OUTPUT hook where skb-\u003edev is not defined, it is set\nlater before POSTROUTING. Problem happens for CHECKSUM_NONE.\nWe can check device from rt but using CHECKSUM_PARTIAL\nshould be safe (skb_checksum_help).\n\nSigned-off-by: Julian Anastasov \u003cja@ssi.bg\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": "0e833d8cfcb52b5ee3ead22cabbab81dea32c3f0",
      "tree": "0c64533ba9181c014a4b2dcda75c273ae0437dd6",
      "parents": [
        "4f1ba49efafccbc73017f824efa2505c81b247cd",
        "7b29dc21ea084be7ddfb536994a9cfae95337690"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 04 23:16:00 2011 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jun 04 23:16:00 2011 +0900"
      },
      "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: (40 commits)\n  tg3: Fix tg3_skb_error_unmap()\n  net: tracepoint of net_dev_xmit sees freed skb and causes panic\n  drivers/net/can/flexcan.c: add missing clk_put\n  net: dm9000: Get the chip in a known good state before enabling interrupts\n  drivers/net/davinci_emac.c: add missing clk_put\n  af-packet: Add flag to distinguish VID 0 from no-vlan.\n  caif: Fix race when conditionally taking rtnl lock\n  usbnet/cdc_ncm: add missing .reset_resume hook\n  vlan: fix typo in vlan_dev_hard_start_xmit()\n  net/ipv4: Check for mistakenly passed in non-IPv4 address\n  iwl4965: correctly validate temperature value\n  bluetooth l2cap: fix locking in l2cap_global_chan_by_psm\n  ath9k: fix two more bugs in tx power\n  cfg80211: don\u0027t drop p2p probe responses\n  Revert \"net: fix section mismatches\"\n  drivers/net/usb/catc.c: Fix potential deadlock in catc_ctrl_run()\n  sctp: stop pending timers and purge queues when peer restart asoc\n  drivers/net: ks8842 Fix crash on received packet when in PIO mode.\n  ip_options_compile: properly handle unaligned pointer\n  iwlagn: fix incorrect PCI subsystem id for 6150 devices\n  ...\n"
    },
    {
      "commit": "d0733d2e29b652b2e7b1438ececa732e4eed98eb",
      "tree": "1fdc2634b52f097f0dc01f76196228492dac4be6",
      "parents": [
        "948252cb9e01d65a89ecadf67be5018351eee15e"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@suse.de",
        "time": "Wed Jun 01 21:05:22 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 01 21:05:22 2011 -0700"
      },
      "message": "net/ipv4: Check for mistakenly passed in non-IPv4 address\n\nCheck against mistakenly passing in IPv6 addresses (which would result\nin an INADDR_ANY bind) or similar incompatible sockaddrs.\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": "48bdf072c3f1f8f739f76d19c74f4c79605cac46",
      "tree": "0cf0f1600892a781949451df0087b2407522a5ed",
      "parents": [
        "11ad2f52826ac6d58d6780d3d8a3e098c88d9142"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Sun May 29 10:55:44 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@zippy.davemloft.net",
        "time": "Tue May 31 15:11:02 2011 -0700"
      },
      "message": "ip_options_compile: properly handle unaligned pointer\n\nThe current code takes an unaligned pointer and does htonl() on it to\nmake it big-endian, then does a memcpy().  The problem is that the\ncompiler decides that since the pointer is to a __be32, it is legal\nto optimize the copy into a processor word store.  However, on an\narchitecture that does not handled unaligned writes in kernel space,\nthis produces an unaligned exception fault.\n\nThe solution is to track the pointer as a \"char *\" (which removes a bunch\nof unpleasant casts in any case), and then just use put_unaligned_be32()\nto write the value to memory.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@zippy.davemloft.net\u003e\n"
    },
    {
      "commit": "10799db60cbc4f990dd69eb49883477095c66af7",
      "tree": "b87ac6acaa48f4f59f5d6a0b11490105876952e1",
      "parents": [
        "aaab184276a6e20834f63735d433f94ef52a0497",
        "c5c177b4aca83338781e72be2e6dd1601c560cb3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 27 11:16:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 27 11:16:27 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:\n  net: Kill ratelimit.h dependency in linux/net.h\n  net: Add linux/sysctl.h includes where needed.\n  net: Kill ether_table[] declaration.\n  inetpeer: fix race in unused_list manipulations\n  atm: expose ATM device index in sysfs\n  IPVS: bug in ip_vs_ftp, same list heaad used in all netns.\n  bug.h: Move ratelimit warn interfaces to ratelimit.h\n  bonding: cleanup module option descriptions\n  net:8021q:vlan.c Fix pr_info to just give the vlan fullname and version.\n  net: davinci_emac: fix dev_err use at probe\n  can: convert to %pK for kptr_restrict support\n  net: fix ETHTOOL_SFEATURES compatibility with old ethtool_ops.set_flags\n  netfilter: Fix several warnings in compat_mtw_from_user().\n  netfilter: ipset: fix ip_set_flush return code\n  netfilter: ipset: remove unused variable from type_pf_tdel()\n  netfilter: ipset: Use proper timeout value to jiffies conversion\n"
    },
    {
      "commit": "686a7e32ca7fdd819eb9606abd3db52b77d1479f",
      "tree": "409af64ba9a4685781e5cd6ed455b1927a13348d",
      "parents": [
        "e7a46b4d0839c2a3aa2e0ae0b145f293f6738498"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu May 26 17:27:11 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 27 13:39:11 2011 -0400"
      },
      "message": "inetpeer: fix race in unused_list manipulations\n\nSeveral crashes in cleanup_once() were reported in recent kernels.\n\nCommit d6cc1d642de9 (inetpeer: various changes) added a race in\nunlink_from_unused().\n\nOne way to avoid taking unused_peers.lock before doing the list_empty()\ntest is to catch 0-\u003e1 refcnt transitions, using full barrier atomic\noperations variants (atomic_cmpxchg() and atomic_inc_return()) instead\nof previous atomic_inc() and atomic_add_unless() variants.\n\nWe then call unlink_from_unused() only for the owner of the 0-\u003e1\ntransition.\n\nAdd a new atomic_add_unless_return() static helper\n\nWith help from Arun Sharma.\n\nRefs: https://bugzilla.kernel.org/show_bug.cgi?id\u003d32772\n\nReported-by: Arun Sharma \u003casharma@fb.com\u003e\nReported-by: Maximilian Engelhardt \u003cmaxi@daemonizer.de\u003e\nReported-by: Yann Dupont \u003cYann.Dupont@univ-nantes.fr\u003e\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fce637e392a762e4d4f0fc41ac3d3f557187ac21",
      "tree": "1604486289418bf35ae4ba9bddb35bb4c6f83ba7",
      "parents": [
        "8b29336fe01dab3541ebb283daddf9d0168c3f05",
        "c4dbe54ed7296ac3249c415d512dd6d649f66f4b",
        "def945eeb920b94e710574454043f080831aefe5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:19:11 2011 -0700"
      },
      "message": "Merge branches \u0027core-fixes-for-linus\u0027 and \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  seqlock: Get rid of SEQLOCK_UNLOCKED\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  irq: Remove smp_affinity_list when unregister irq proc\n"
    },
    {
      "commit": "24cf3af3fed5edcf90bc2a0ed181e6ce1513d2dc",
      "tree": "3e86eba024dbd8c34ca413d5c0cc28fbb321e15d",
      "parents": [
        "be3fc413da9eb17cce0991f214ab019d16c88c41"
      ],
      "author": {
        "name": "Veaceslav Falico",
        "email": "vfalico@redhat.com",
        "time": "Mon May 23 23:15:05 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 24 13:26:12 2011 -0400"
      },
      "message": "igmp: call ip_mc_clear_src() only when we have no users of ip_mc_list\n\nIn igmp_group_dropped() we call ip_mc_clear_src(), which resets the number\nof source filters per mulitcast. However, igmp_group_dropped() is also\ncalled on NETDEV_DOWN, NETDEV_PRE_TYPE_CHANGE and NETDEV_UNREGISTER, which\nmeans that the group might get added back on NETDEV_UP, NETDEV_REGISTER and\nNETDEV_POST_TYPE_CHANGE respectively, leaving us with broken source\nfilters.\n\nTo fix that, we must clear the source filters only when there are no users\nin the ip_mc_list, i.e. in ip_mc_dec_group() and on device destroy.\n\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: Veaceslav Falico \u003cvfalico@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c4dbe54ed7296ac3249c415d512dd6d649f66f4b",
      "tree": "7dcbce1bceccb31963869b347afbb86dfd11e709",
      "parents": [
        "d762f4383100c2a87b1a3f2d678cd3b5425655b4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue May 24 14:08:08 2011 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue May 24 15:22:17 2011 +0200"
      },
      "message": "seqlock: Get rid of SEQLOCK_UNLOCKED\n\nAll static seqlock should be initialized with the lockdep friendly\n__SEQLOCK_UNLOCKED() macro.\n\nRemove legacy SEQLOCK_UNLOCKED() macro.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nLink: http://lkml.kernel.org/r/%3C1306238888.3026.31.camel%40edumazet-laptop%3E\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\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": "19a76fa9593bad778dabeeec1f6c2df6effe9ca3",
      "tree": "b22ca6963dd1baa18997eb138cfcfc50df4a8bf9",
      "parents": [
        "4867faab1e3eb8cc3f74e390357615d9b8e8cda6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun May 22 22:23:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 23 16:29:24 2011 -0400"
      },
      "message": "net: ping: cleanups ping_v4_unhash()\n\nnet/ipv4/ping.c: In function ‘ping_v4_unhash’:\nnet/ipv4/ping.c:140:28: warning: variable ‘hslot’ set but not used\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "53ee7569ce8beb3fd3fc0817116c29298d72353f",
      "tree": "f3dcce10508c2126347e40b468fd6d3c3cc7006a",
      "parents": [
        "4d9dec4db2efbd7edb549bd02373995b67496983",
        "1b6e2ceb4745b5838cb94463131d19dbea6cf0e3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 08:39:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon May 23 08:39: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: (27 commits)\n  bnx2x: allow device properly initialize after hotplug\n  bnx2x: fix DMAE timeout according to hw specifications\n  bnx2x: properly handle CFC DEL in cnic flow\n  bnx2x: call dev_kfree_skb_any instead of dev_kfree_skb\n  net: filter: move forward declarations to avoid compile warnings\n  pktgen: refactor pg_init() code\n  pktgen: use vzalloc_node() instead of vmalloc_node() + memset()\n  net: skb_trim explicitely check the linearity instead of data_len\n  ipv4: Give backtrace in ip_rt_bug().\n  net: avoid synchronize_rcu() in dev_deactivate_many\n  net: remove synchronize_net() from netdev_set_master()\n  rtnetlink: ignore NETDEV_RELEASE and NETDEV_JOIN event\n  net: rename NETDEV_BONDING_DESLAVE to NETDEV_RELEASE\n  bridge: call NETDEV_JOIN notifiers when add a slave\n  netpoll: disable netpoll when enslave a device\n  macvlan: Forward unicast frames in bridge mode to lowerdev\n  net: Remove linux/prefetch.h include from linux/skbuff.h\n  ipv4: Include linux/prefetch.h in fib_trie.c\n  netlabel: Remove prefetches from list handlers.\n  drivers/net: add prefetch header for prefetch users\n  ...\n\nFixed up prefetch parts: removed a few duplicate prefetch.h includes,\nfixed the location of the igb prefetch.h, took my version of the\nskbuff.h code without the extra parentheses etc.\n"
    },
    {
      "commit": "70c71606190e9115e5f8363bfcd164c582eb314a",
      "tree": "17c7f6b5df814b9ed319bc0d839969a0de741433",
      "parents": [
        "281dc5c5ec0fb299514567cbc358562649c1af95"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun May 22 16:47:17 2011 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 22 21:41:57 2011 -0700"
      },
      "message": "Add appropriate \u003clinux/prefetch.h\u003e include for prefetch users\n\nAfter discovering that wide use of prefetch on modern CPUs\ncould be a net loss instead of a win, net drivers which were\nrelying on the implicit inclusion of prefetch.h via the list\nheaders showed up in the resulting cleanup fallout.  Give\nthem an explicit include via the following $0.02 script.\n\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #!/bin/bash\n MANUAL\u003d\"\"\n for i in `git grep -l \u0027prefetch(.*)\u0027 .` ; do\n \tgrep -q \u0027\u003clinux/prefetch.h\u003e\u0027 $i\n \tif [ $? \u003d 0 ] ; then\n \t\tcontinue\n \tfi\n\n \t(\techo \u0027?^#include \u003clinux/?a\u0027\n \t\techo \u0027#include \u003clinux/prefetch.h\u003e\u0027\n \t\techo .\n \t\techo w\n \t\techo q\n \t) | ed -s $i \u003e /dev/null 2\u003e\u00261\n \tif [ $? !\u003d 0 ]; then\n \t\techo $i needs manual fixup\n \t\tMANUAL\u003d\"$i $MANUAL\"\n \tfi\n done\n echo ------------------- 8\\\u003c----------------------\n echo vi $MANUAL\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Paul \u003cpaul.gortmaker@windriver.com\u003e\n[ Fixed up some incorrect #include placements, and added some\n  non-network drivers and the fib_trie.c case    - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c378a9c019cf5e017d1ed24954b54fae7bebd2bc",
      "tree": "4ac192542d8c5de29fc014f56b659a554f59017c",
      "parents": [
        "3137663dfb43bb3e3174e9da81db0c05f395fc1b"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat May 21 07:16:42 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 21:01:20 2011 -0400"
      },
      "message": "ipv4: Give backtrace in ip_rt_bug().\n\nAdd a stack backtrace to the ip_rt_bug path for debugging\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "120a3d5c7c1f37752e7956d296a4f031f38cb217",
      "tree": "e89b30c792d36f6d771d7d97d369c7367f0ce2d7",
      "parents": [
        "474b4c4ff007c992ea7dc88ba2605aa124f8bafb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 20:53:43 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 22 20:53:43 2011 -0400"
      },
      "message": "ipv4: Include linux/prefetch.h in fib_trie.c\n\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": "3fb72f1e6e6165c5f495e8dc11c5bbd14c73385c",
      "tree": "e47295482bb91c6f837de040cb4abe5b79be7019",
      "parents": [
        "c182f90bc1f22ce5039b8722e45621d5f96862c2"
      ],
      "author": {
        "name": "Micha Nelissen",
        "email": "micha@neli.hopto.org",
        "time": "Thu May 19 10:14:06 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 17:13:04 2011 -0400"
      },
      "message": "ipconfig wait for carrier\n\nv3 -\u003e v4: fix return boolean false instead of 0 for ic_is_init_dev\n\nCurrently the ip auto configuration has a hardcoded delay of 1 second.\nWhen (ethernet) link takes longer to come up (e.g. more than 3 seconds),\nnfs root may not be found.\n\nRemove the hardcoded delay, and wait for carrier on at least one network\ndevice.\n\nSigned-off-by: Micha Nelissen \u003cmicha@neli.hopto.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75e308c894c4a5e47c005b8e821ae5f539ad2ef3",
      "tree": "2bd8e3e35f42854fc49a34282c7c83b280c63840",
      "parents": [
        "bb0cd2fb539c4e454ed32e32194acc03b75753f3"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Wed May 18 21:16:01 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 16:17:51 2011 -0400"
      },
      "message": "net: ping: fix the coding style\n\nThe characters in a line should be no more than 80.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb0cd2fb539c4e454ed32e32194acc03b75753f3",
      "tree": "e47d019230025967f8f25bfabdfe6f51dce595c6",
      "parents": [
        "6b60d7b9df727726dfb7e59ca0a7caf14e81e0a2"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Wed May 18 21:16:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 19 16:17:51 2011 -0400"
      },
      "message": "net: ping: make local functions static\n\nAs these functions are only used in this file.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a48eff128865aa20520fa6e0e0c5fbd2ac50d712",
      "tree": "c60e376c3fca23bb215c977e42661187076dccbf",
      "parents": [
        "ed2361e66eec60645f8e4715fe39a42235ef43ae"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:42:43 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:42:43 2011 -0400"
      },
      "message": "ipv4: Pass explicit destination address to rt_bind_peer().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed2361e66eec60645f8e4715fe39a42235ef43ae",
      "tree": "96c6f4fa75456647d62c245b87b0d3ce97ce462b",
      "parents": [
        "6bd023f3dddfc7c5f660089598c10e1f4167083b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:38:54 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:38:54 2011 -0400"
      },
      "message": "ipv4: Pass explicit destination address to rt_get_peer().\n\nThis will next trickle down to rt_bind_peer().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6bd023f3dddfc7c5f660089598c10e1f4167083b",
      "tree": "925a7a31d3db434cfda8679cb46e466697ef8bdd",
      "parents": [
        "6882f933ccee5c3a86443ffc7621ce888b93ab6b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:32:03 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:32:03 2011 -0400"
      },
      "message": "ipv4: Make caller provide flowi4 key to inet_csk_route_req().\n\nThis way the caller can get at the fully resolved fl4-\u003e{daddr,saddr}\netc.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6882f933ccee5c3a86443ffc7621ce888b93ab6b",
      "tree": "07998f54bd459c5345491fbaeae03bd60540c6e8",
      "parents": [
        "12f4d0a8770ab26639091d0b2509b19681daad69"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:23:21 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 18 18:23:21 2011 -0400"
      },
      "message": "ipv4: Kill RT_CACHE_DEBUG\n\nIt\u0027s way past it\u0027s usefulness.  And this gets rid of a bunch\nof stray -\u003ert_{dst,src} references.\n\nEven the comment documenting the macro was inaccurate (stated\ndefault was 1 when it\u0027s 0).\n\nIf reintroduced, it should be done properly, with dynamic debug\nfacilities.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d1652cbdb9885e4d73972263e4cdbe1b0beebfe",
      "tree": "6ded7338cfec98f1adf0b5606dc9a09a0f701d9d",
      "parents": [
        "11e73de7ccc1c9c61c65f914a214cb6467966a51"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:28:02 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 17:28:02 2011 -0400"
      },
      "message": "ipv4: Don\u0027t use enums as bitmasks in ip_fragment.c\n\nNoticed by Joe Perches.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f56e03e8dc149bf0ac2888d6843584f48c8700fc",
      "tree": "071864cd821423ff1caf06d824823b533cbcab77",
      "parents": [
        "6dcae1eaee2b437536b2fe928a609f9589691ebf"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Tue May 17 00:16:56 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 17 14:16:58 2011 -0400"
      },
      "message": "net: ping: fix build failure\n\nIf CONFIG_PROC_SYSCTL\u003dn the building process fails:\n\n    ping.c:(.text+0x52af3): undefined reference to `inet_get_ping_group_range_net\u0027\n\nMoved inet_get_ping_group_range_net() to ping.c.\n\nReported-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5173cc057787560c127c6e9737f308c833dc4ff3",
      "tree": "3ac8450239e5e9ee99e1a4bbef1626401dd76be9",
      "parents": [
        "485bf569ba798b4702bc2efbfd3a355fe2c8db04"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 16 08:37:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 16 14:49:14 2011 -0400"
      },
      "message": "ipv4: more compliant RFC 3168 support\n\nCommit 6623e3b24a5e (ipv4: IP defragmentation must be ECN aware) was an\nattempt to not lose \"Congestion Experienced\" (CE) indications when\nperforming datagram defragmentation.\n\nStefanos Harhalakis raised the point that RFC 3168 requirements were not\ncompletely met by this commit.\n\nIn particular, we MUST detect invalid combinations and eventually drop\nillegal frames.\n\nReported-by: Stefanos Harhalakis \u003cv13@v13.gr\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c5be24ff62d238a3fdd5d15461b420cd72e78a14",
      "tree": "fcdeb6a8ee58e96547b41df593fd193894620709",
      "parents": [
        "1a8218e96271790a07dd7065a2ef173e0f67e328"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 18:01:21 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 16 13:49:05 2011 -0400"
      },
      "message": "ipv4: Trivial rt-\u003ert_src conversions in net/ipv4/route.c\n\nAt these points we have a fully filled in value via the IP\nheader the form of ip_hdr(skb)-\u003esaddr\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1a8218e96271790a07dd7065a2ef173e0f67e328",
      "tree": "3bf2696f434e21c92809b4812fa34b57061ce783",
      "parents": [
        "534ea99b063de7c30262a8e22f0ab44dd7d11a71"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun May 15 21:26:31 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 16 11:49:39 2011 -0400"
      },
      "message": "net: ping: dont call udp_ioctl()\n\nudp_ioctl() really handles UDP and UDPLite protocols.\n\n1) It can increment UDP_MIB_INERRORS in case first_packet_length() finds\na frame with bad checksum.\n\n2) It has a dependency on sizeof(struct udphdr), not applicable to\nICMP/PING\n\nIf ping sockets need to handle SIOCINQ/SIOCOUTQ ioctl, this should be\ndone differently.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCC: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b1cb1f78a5e9d54c13e176020c3e8ded5d081ce",
      "tree": "bc29b3c20433a678af2868aa5a49a56b8b9468dc",
      "parents": [
        "89c64d755fbf04d7541d526931dc4b38301946d1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri May 13 22:59:19 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 15 01:22:21 2011 -0400"
      },
      "message": "net: ping: small changes\n\nping_table is not __read_mostly, since it contains one rwlock,\nand is static to ping.c\n\nping_port_rover \u0026 ping_v4_lookup are static\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7be799a70ba3dd90a59e8d2c72bbe06020005b3f",
      "tree": "08062fb33b9b09a935ef42eaaff6f2f67c67749e",
      "parents": [
        "8e36360ae876995e92d3a7538dda70548e64e685"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:31:02 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:31:02 2011 -0400"
      },
      "message": "ipv4: Remove rt-\u003ert_dst reference from ip_forward_options().\n\nAt this point iph-\u003edaddr equals what rt-\u003ert_dst would hold.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e36360ae876995e92d3a7538dda70548e64e685",
      "tree": "d477e086bb35d2de8a6f54b461abeb24be8a4f5b",
      "parents": [
        "22f728f8f311659b068e73ed92833c205651a47f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:29:41 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:29:41 2011 -0400"
      },
      "message": "ipv4: Remove route key identity dependencies in ip_rt_get_source().\n\nPass in the sk_buff so that we can fetch the necessary keys from\nthe packet header when working with input routes.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "22f728f8f311659b068e73ed92833c205651a47f",
      "tree": "cab06ba8b08c8c88a021d597c031c1ef24fae732",
      "parents": [
        "0374d9ceb02eb12fcd65be9dd5df9c911ef93424"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:21:27 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:21:27 2011 -0400"
      },
      "message": "ipv4: Always call ip_options_build() after rest of IP header is filled in.\n\nThis will allow ip_options_build() to reliably look at the values of\niph-\u003e{daddr,saddr}\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0374d9ceb02eb12fcd65be9dd5df9c911ef93424",
      "tree": "3731be10072252825feea225a082b2ee4029c293",
      "parents": [
        "48e20467227fe540e6bbf3d98df98c2c0fca10f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:15:50 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 17:15:50 2011 -0400"
      },
      "message": "ipv4: Kill spurious write to iph-\u003edaddr in ip_forward_options().\n\nThis code block executes when opt-\u003esrr_is_hit is set.  It will be\nset only by ip_options_rcv_srr().\n\nip_options_rcv_srr() walks until it hits a matching nexthop in the SRR\noption addresses, and when it matches one 1) looks up the route for\nthat nexthop and 2) on route lookup success it writes that nexthop\nvalue into iph-\u003edaddr.\n\nip_forward_options() runs later, and again walks the SRR option\naddresses looking for the option matching the destination of the route\nstored in skb_rtable().  This route will be the same exact one looked\nup for the nexthop by ip_options_rcv_srr().\n\nTherefore \"rt-\u003ert_dst \u003d\u003d iph-\u003edaddr\" must be true.\n\nAll it really needs to do is record the route\u0027s source address in the\nmatching SRR option adddress.  It need not write iph-\u003edaddr again,\nsince that has already been done by ip_options_rcv_srr() as detailed\nabove.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c319b4d76b9e583a5d88d6bf190e079c4e43213d",
      "tree": "22fcc6f1c671908d640145c1f82e5290cd40f715",
      "parents": [
        "f20190302e3e697a166cc28ebef43058749dedda"
      ],
      "author": {
        "name": "Vasiliy Kulikov",
        "email": "segoon@openwall.com",
        "time": "Fri May 13 10:01:00 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 13 16:08:13 2011 -0400"
      },
      "message": "net: ipv4: add IPPROTO_ICMP socket kind\n\nThis patch adds IPPROTO_ICMP socket kind.  It makes it possible to send\nICMP_ECHO messages and receive the corresponding ICMP_ECHOREPLY messages\nwithout any special privileges.  In other words, the patch makes it\npossible to implement setuid-less and CAP_NET_RAW-less /bin/ping.  In\norder not to increase the kernel\u0027s attack surface, the new functionality\nis disabled by default, but is enabled at bootup by supporting Linux\ndistributions, optionally with restriction to a group or a group range\n(see below).\n\nSimilar functionality is implemented in Mac OS X:\nhttp://www.manpagez.com/man/4/icmp/\n\nA new ping socket is created with\n\n    socket(PF_INET, SOCK_DGRAM, PROT_ICMP)\n\nMessage identifiers (octets 4-5 of ICMP header) are interpreted as local\nports. Addresses are stored in struct sockaddr_in. No port numbers are\nreserved for privileged processes, port 0 is reserved for API (\"let the\nkernel pick a free number\"). There is no notion of remote ports, remote\nport numbers provided by the user (e.g. in connect()) are ignored.\n\nData sent and received include ICMP headers. This is deliberate to:\n1) Avoid the need to transport headers values like sequence numbers by\nother means.\n2) Make it easier to port existing programs using raw sockets.\n\nICMP headers given to send() are checked and sanitized. The type must be\nICMP_ECHO and the code must be zero (future extensions might relax this,\nsee below). The id is set to the number (local port) of the socket, the\nchecksum is always recomputed.\n\nICMP reply packets received from the network are demultiplexed according\nto their id\u0027s, and are returned by recv() without any modifications.\nIP header information and ICMP errors of those packets may be obtained\nvia ancillary data (IP_RECVTTL, IP_RETOPTS, and IP_RECVERR). ICMP source\nquenches and redirects are reported as fake errors via the error queue\n(IP_RECVERR); the next hop address for redirects is saved to ee_info (in\nnetwork order).\n\nsocket(2) is restricted to the group range specified in\n\"/proc/sys/net/ipv4/ping_group_range\".  It is \"1 0\" by default, meaning\nthat nobody (not even root) may create ping sockets.  Setting it to \"100\n100\" would grant permissions to the single group (to either make\n/sbin/ping g+s and owned by this group or to grant permissions to the\n\"netadmins\" group), \"0 4294967295\" would enable it for the world, \"100\n4294967295\" would enable it for the users, but not daemons.\n\nThe existing code might be (in the unlikely case anyone needs it)\nextended rather easily to handle other similar pairs of ICMP messages\n(Timestamp/Reply, Information Request/Reply, Address Mask Request/Reply\netc.).\n\nUserspace ping util \u0026 patch for it:\nhttp://openwall.info/wiki/people/segoon/ping\n\nFor Openwall GNU/*/Linux it was the last step on the road to the\nsetuid-less distro.  A revision of this patch (for RHEL5/OpenVZ kernels)\nis in use in Owl-current, such as in the 2011/03/12 LiveCD ISOs:\nhttp://mirrors.kernel.org/openwall/Owl/current/iso/\n\nInitially this functionality was written by Pavel Kankovsky for\nLinux 2.4.32, but unfortunately it was never made public.\n\nAll ping options (-b, -p, -Q, -R, -s, -t, -T, -M, -I), are tested with\nthe patch.\n\nPATCH v3:\n    - switched to flowi4.\n    - minor changes to be consistent with raw sockets code.\n\nPATCH v2:\n    - changed ping_debug() to pr_debug().\n    - removed CONFIG_IP_PING.\n    - removed ping_seq_fops.owner field (unused for procfs).\n    - switched to proc_net_fops_create().\n    - switched to %pK in seq_printf().\n\nPATCH v1:\n    - fixed checksumming bug.\n    - CAP_NET_RAW may not create icmp sockets anymore.\n\nRFC v2:\n    - minor cleanups.\n    - introduced sysctl\u0027able group range to restrict socket(2).\n\nSigned-off-by: Vasiliy Kulikov \u003csegoon@openwall.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "72a8f97bf2dfe1b0f02ba8dbaed7d6b76657aae3",
      "tree": "9f736a6ab5b61bb0fc053c4284282c2b19318529",
      "parents": [
        "5c5095494fb545f53b80cbb7539679a10a3472a6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 23:03:46 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 23:03:46 2011 -0400"
      },
      "message": "ipv4: Fix \u0027iph\u0027 use before set.\n\nI swear none of my compilers warned about this, yet it is so\nobvious.\n\n\u003e net/ipv4/ip_forward.c: In function \u0027ip_forward\u0027:\n\u003e net/ipv4/ip_forward.c:87: warning: \u0027iph\u0027 may be used uninitialized in this function\n\nReported-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "def57687e9579b7a797681990dff763c411f5347",
      "tree": "24e1b96d286eda163cf98cf4d5eb5a1d24b34737",
      "parents": [
        "c30883bdff0b3544900a5c4aba18b8985436878f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:34:30 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:34:30 2011 -0400"
      },
      "message": "ipv4: Elide use of rt-\u003ert_dst in ip_forward()\n\nNo matter what kind of header mangling occurs due to IP options\nprocessing, rt-\u003ert_dst will always equal iph-\u003edaddr in the packet.\n\nSo we can safely use iph-\u003edaddr instead of rt-\u003ert_dst here.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c30883bdff0b3544900a5c4aba18b8985436878f",
      "tree": "3446d93477df0997410dc770a2a7f08e233025c2",
      "parents": [
        "10949550bd1e50cc91c0f5085f7080a44b0871fe"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:30:58 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:30:58 2011 -0400"
      },
      "message": "ipv4: Simplify iph-\u003edaddr overwrite in ip_options_rcv_srr().\n\nWe already copy the 4-byte nexthop from the options block into\nlocal variable \"nexthop\" for the route lookup.\n\nRe-use that variable instead of memcpy()\u0027ing again when assigning\nto iph-\u003edaddr after the route lookup succeeds.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10949550bd1e50cc91c0f5085f7080a44b0871fe",
      "tree": "e5a1862145c488c6abf9d12cc52a1db90481823d",
      "parents": [
        "b2a103e6d0afa432dff66b36473c5a55b6b0376c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:26:57 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 12 19:26:57 2011 -0400"
      },
      "message": "ipv4: Kill spurious opt-\u003esrr check in ip_options_rcv_srr().\n\nAll call sites conditionalize the call to ip_options_rcv_srr()\nwith a check of opt-\u003esrr, so no need to check it again there.\n\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": "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": "1fc19aff84edf97753c58cf4b858c6c4fdb246fa",
      "tree": "15d4eb3545a1edf20103bb1ef927d7e7ba7b6c2e",
      "parents": [
        "8f01cb0827c84bd9c4866b849415b3aa6f0428df"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Mon May 09 20:55:03 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 15:03:01 2011 -0700"
      },
      "message": "net: fix two lockdep splats\n\nCommit e67f88dd12f6 (net: dont hold rtnl mutex during netlink dump\ncallbacks) switched rtnl protection to RCU, but we forgot to adjust two\nrcu_dereference() lockdep annotations :\n\ninet_get_link_af_size() or inet_fill_link_af() might be called with\nrcu_read_lock or rtnl held, so use rcu_dereference_rtnl()\ninstead of rtnl_dereference()\n\nReported-by: Valdis Kletnieks \u003cValdis.Kletnieks@vt.edu\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8f01cb0827c84bd9c4866b849415b3aa6f0428df",
      "tree": "b98ccf5aeb28e93d564513f441a81dc062fb44c5",
      "parents": [
        "5fc3590c81bd233c25fbe127cdcf7a8e26e12378"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 15:13:28 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 13:32:48 2011 -0700"
      },
      "message": "ipv4: xfrm: Eliminate -\u003ert_src reference in policy code.\n\nRearrange xfrm4_dst_lookup() so that it works by calling a helper\nfunction __xfrm_dst_lookup() that takes an explicit flow key storage\narea as an argument.\n\nUse this new helper in xfrm4_get_saddr() so we can fetch the selected\nsource address from the flow instead of from rt-\u003ert_src\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79ab053145ae10edf8f0809d1c788b853c7f6ef1",
      "tree": "3817af51a5679168542395dbc69d3fa4cddf175a",
      "parents": [
        "9f6abb5f175bdb9ecfd390000a631bf0abf2fedb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 13:31:04 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 13:32:47 2011 -0700"
      },
      "message": "ipv4: udp: Eliminate remaining uses of rt-\u003ert_src\n\nWe already track and pass around the correct flow key,\nso simply use it in udp_send_skb().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f6abb5f175bdb9ecfd390000a631bf0abf2fedb",
      "tree": "696cd97e0cdc67c9a0dcbf0ad1e2fd0626e221ee",
      "parents": [
        "0a5ebb8000c5362be368df9d197943deb06b6916"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 13:28:22 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 13:32:46 2011 -0700"
      },
      "message": "ipv4: icmp: Eliminate remaining uses of rt-\u003ert_src\n\nOn input packets, rt-\u003ert_src always equals ip_hdr(skb)-\u003esaddr\n\nAnything that mangles or otherwise changes the IP header must\nrelookup the route found at skb_rtable().  Therefore this\ninvariant must always hold true.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a5ebb8000c5362be368df9d197943deb06b6916",
      "tree": "63910ddcbd4672dd7705e524a3db8f1324233365",
      "parents": [
        "1c3319fb69c29376fe23c1aa0cd7cb6df91c7883"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 13:22:43 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 13:32:46 2011 -0700"
      },
      "message": "ipv4: Pass explicit daddr arg to ip_send_reply().\n\nThis eliminates an access to rt-\u003ert_src.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f5fca6086511294653a9e821f8e22f041415ba7b",
      "tree": "1ab025012bf44402e7f816428461d8def54016c1",
      "parents": [
        "77968b78242ee25e2a4d759f0fca8dd52df6d479"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 17:24:10 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 21:24:07 2011 -0700"
      },
      "message": "ipv4: Pass flow key down into ip_append_*().\n\nThis way rt-\u003ert_dst accesses are unnecessary.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77968b78242ee25e2a4d759f0fca8dd52df6d479",
      "tree": "6de21f3a2efe49cb30ea8109fdfc79d30d6b27a3",
      "parents": [
        "e474995f290ff7bc236b549aa9a89ae445ee5b1b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 17:12:19 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 21:24:06 2011 -0700"
      },
      "message": "ipv4: Pass flow keys down into datagram packet building engine.\n\nThis way ip_output.c no longer needs rt-\u003ert_{src,dst}.\n\nWe already have these keys sitting, ready and waiting, on the stack or\nin a socket structure.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e474995f290ff7bc236b549aa9a89ae445ee5b1b",
      "tree": "50c16643d9b828d95f795863653a12739e111224",
      "parents": [
        "eed2a12f1ed9aabf0676f4d0db34aad51976c5c6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 16:38:45 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 21:12:48 2011 -0700"
      },
      "message": "udp: Use flow key information instead of rt-\u003ert_{src,dst}\n\nWe have two cases.\n\nEither the socket is in TCP_ESTABLISHED state and connect() filled\nin the inet socket cork flow, or we looked up the route here and\nused an on-stack flow.\n\nTrack which one it was, and use it to obtain src/dst addrs.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9f47a3aaeabdce3b42829bbb27765fa340f76ba",
      "tree": "93e4f34b502b8ab2f345d1357ab4ed3dfa5c5911",
      "parents": [
        "9c412942a0bb19ba18f7bd939d42eff1e132a901"
      ],
      "author": {
        "name": "stephen hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Wed May 04 10:04:56 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:51:57 2011 -0700"
      },
      "message": "tcp_cubic: limit delayed_ack ratio to prevent divide error\n\nTCP Cubic keeps a metric that estimates the amount of delayed\nacknowledgements to use in adjusting the window. If an abnormally\nlarge number of packets are acknowledged at once, then the update\ncould wrap and reach zero. This kind of ACK could only\nhappen when there was a large window and huge number of\nACK\u0027s were lost.\n\nThis patch limits the value of delayed ack ratio. The choice of 32\nis just a conservative value since normally it should be range of\n1 to 4 packets.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c5216cc70fa769e5a51837f2cf07c4a0aa734fcf",
      "tree": "5481322970570bb58f42b475a618ecd137921c4c",
      "parents": [
        "f1c0a276ea1786213bda2313cd9034f3a23f2e77"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 22:36:30 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:28:29 2011 -0700"
      },
      "message": "tcp: Use cork flow info instead of rt-\u003ert_dst in tcp_v4_get_peer()\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea4fc0d6193ff56fcef39b0d2210d402a7acb5f0",
      "tree": "175b9bca17331112f7aa7c6340b69320426f750b",
      "parents": [
        "d9d8da805dcb503ef8ee49918a94d49085060f23"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 22:30:20 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:28:28 2011 -0700"
      },
      "message": "ipv4: Don\u0027t use rt-\u003ert_{src,dst} in ip_queue_xmit().\n\nNow we can pick it out of the provided flow key.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "0e734419923bd8e599858f8fc196c7804bb85564",
      "tree": "5e8dfaeb84c610a1c4086ed88c26b73e4ba87197",
      "parents": [
        "77357a95522ba645bbfd65253b34317c824103f9"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:28:03 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 15:28:03 2011 -0700"
      },
      "message": "ipv4: Use inet_csk_route_child_sock() in DCCP and TCP.\n\nOperation order is now transposed, we first create the child\nsocket then we try to hook up the route.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "77357a95522ba645bbfd65253b34317c824103f9",
      "tree": "63eb29d2efad915add7693445a215eef890c4191",
      "parents": [
        "8663c938ceb72f47941c95ff0ea491ebbdd68f26"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 14:34:22 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 14:34:22 2011 -0700"
      },
      "message": "ipv4: Create inet_csk_route_child_sock().\n\nThis is just like inet_csk_route_req() except that it operates after\nwe\u0027ve created the new child socket.\n\nIn this way we can use the new socket\u0027s cork flow for proper route\nkey storage.\n\nThis will be used by DCCP and TCP child socket creation handling.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b57ae01a8a8446dbbed7365c9b05aef1fc6dea20",
      "tree": "14e18d9c67111e2fe44bad96b062794f3c14c98d",
      "parents": [
        "6e869138101bc607e4780187210b79d531f9b2ce"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 16:24:06 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 14:05:14 2011 -0700"
      },
      "message": "ipv4: Use cork flow in ip_queue_xmit()\n\nAll invokers of ip_queue_xmit() must make certain that the\nsocket is locked.  All of SCTP, TCP, DCCP, and L2TP now make\nsure this is the case.\n\nTherefore we can use the cork flow during output route lookup in\nip_queue_xmit() when the socket route check fails.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e869138101bc607e4780187210b79d531f9b2ce",
      "tree": "fe85b2fb73b2658684d27f7d90188f8d735ad9c1",
      "parents": [
        "3038eeac027d8ec62e4936143498f2b37baf4cb5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 16:18:04 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 14:05:13 2011 -0700"
      },
      "message": "ipv4: Use cork flow in inet_sk_{reselect_saddr,rebuild_header}()\n\nThese two functions must be invoked only when the socket is locked\n(because socket identity modifications are made non-atomically).\n\nTherefore we can use the cork flow for output route lookups.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3038eeac027d8ec62e4936143498f2b37baf4cb5",
      "tree": "6bbc1d63430437c9f0d3cd65c6d1b2254515834a",
      "parents": [
        "fdbb0f076b065a0c753ba26925f10357505f1d42"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 22:27:25 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 13:48:57 2011 -0700"
      },
      "message": "ipv4: Lock socket and use cork flow in ip4_datagram_connect().\n\nThis is to make sure that an l2tp socket\u0027s inet cork flow is\nfully filled in, when it\u0027s encapsulated in UDP.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da905bd1d5a6480d206f4b3dc61243f95adfae2c",
      "tree": "4446793e7431afc784f10776516da033d603a542",
      "parents": [
        "2c42758cf6683e9c1657d20dcf2a7edd323d98ca"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 16:11:19 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun May 08 13:18:54 2011 -0700"
      },
      "message": "tcp: Use cork flow in tcp_v4_connect()\n\nSince this is invoked from inet_stream_connect() the socket is locked\nand therefore this usage is safe.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10d50e748d983ff1003e0cf556ea17fa8f32c382",
      "tree": "4dc0df6ac2524b68e2b5d360ac5e24f3aa0051c4",
      "parents": [
        "7519cce48fb0a314dac473bdfba203b787435857"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 11:45:08 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:59 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(ip_mc_socklist_reclaim) to kfree_rcu()\n\nThe rcu callback ip_mc_socklist_reclaim() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(ip_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": "7519cce48fb0a314dac473bdfba203b787435857",
      "tree": "ee21fd79073bf20714b352eb912eb59c117bf148",
      "parents": [
        "42ea299d3f1941f8c3dbc1fe031d682f8ad45005"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 11:44:46 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:58 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(ip_sf_socklist_reclaim) to kfree_rcu()\n\nThe rcu callback ip_sf_socklist_reclaim() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(ip_sf_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": "42ea299d3f1941f8c3dbc1fe031d682f8ad45005",
      "tree": "ae0317d700cf49ca48c33935140b65f72a9db229",
      "parents": [
        "dad178fcd5b295f5f350a46a5eaf2f28e847bb5a"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 11:44:08 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:57 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(ip_mc_list_reclaim) to kfree_rcu()\n\nThe rcu callback ip_mc_list_reclaim() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(ip_mc_list_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": "bceb0f4512d448763fe98c9f37504c98bbebbed6",
      "tree": "b16a2987904949d9e02630d21e31086c7b6d4914",
      "parents": [
        "4670994d150a86ebd53ab353a2af517c5465bfaf"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 11:42:34 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:56 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(__leaf_info_free_rcu) to kfree_rcu()\n\nThe rcu callback __leaf_info_free_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(__leaf_info_free_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": "4670994d150a86ebd53ab353a2af517c5465bfaf",
      "tree": "a105dc8907233df44e86496a38761a957a8ef106",
      "parents": [
        "3acb458c32293405cf68985b7b3ac5dc0a5e7929"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 18 11:42:11 2011 +0800"
      },
      "committer": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Sat May 07 22:50:55 2011 -0700"
      },
      "message": "net,rcu: convert call_rcu(fc_rport_free_rcu) to kfree_rcu()\n\nThe rcu callback fc_rport_free_rcu() just calls a kfree(),\nso we use kfree_rcu() instead of the call_rcu(fc_rport_free_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": "706527280ec38fcdcd0466f10b607105fd23801b",
      "tree": "96b1b0c20d214d87fd9d93b9b4c3d8645183705a",
      "parents": [
        "b80d72261aec5e763a76497eba5fddc84833a154"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 16:01:15 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 16:01:15 2011 -0700"
      },
      "message": "ipv4: Initialize cork-\u003eopt using NULL not 0.\n\nNoticed by Joe Perches.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b80d72261aec5e763a76497eba5fddc84833a154",
      "tree": "08480c09ea98195bbc48d5e52282b7129ccfd98b",
      "parents": [
        "bdc712b4c2baf9515887de3a52e7ecd89fafc0c7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 15:06:01 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri May 06 15:37:57 2011 -0700"
      },
      "message": "ipv4: Initialize on-stack cork more efficiently.\n\nip_setup_cork() explicitly initializes every member of\ninet_cork except flags, addr, and opt.  So we can simply\nset those three members to zero instead of using a\nmemset() via an empty struct assignment.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\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": "64f3b9e203bd06855072e295557dca1485a2ecba",
      "tree": "f5aed4dc313db9ce9c98533d56ed9fd6db4bf596",
      "parents": [
        "ff538818f4a82c4cf02d2d6bd6ac5c7360b9d41d"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed May 04 10:02:26 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 14:04:07 2011 -0700"
      },
      "message": "net: ip_expire() must revalidate route\n\nCommit 4a94445c9a5c (net: Use ip_route_input_noref() in input path)\nadded a bug in IP defragmentation handling, in case timeout is fired.\n\nWhen a frame is defragmented, we use last skb dst field when building\nfinal skb. Its dst is valid, since we are in rcu read section.\n\nBut if a timeout occurs, we take first queued fragment to build one ICMP\nTIME EXCEEDED message. Problem is all queued skb have weak dst pointers,\nsince we escaped RCU critical section after their queueing. icmp_send()\nmight dereference a now freed (and possibly reused) part of memory.\n\nCalling skb_dst_drop() and ip_route_input_noref() to revalidate route is\nthe only possible choice.\n\nReported-by: Denys Fedoryshchenko \u003cdenys@visp.net.lb\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbb1e85f9cfd2bd9b7edfd21d167e89a4279faf0",
      "tree": "352ce07ff62b9fc38212d72f3d1b0d124dafea39",
      "parents": [
        "9a1b9496cd2b013f74885218947fa7120d53e74c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:33:34 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:55:07 2011 -0700"
      },
      "message": "ipv4: Kill rt-\u003ert_{src, dst} usage in IP GRE tunnels.\n\nFirst, make callers pass on-stack flowi4 to ip_route_output_gre()\nso they can get at the fully resolved flow key.\n\nNext, use that in ipgre_tunnel_xmit() to avoid the need to use\nrt-\u003ert_{dst,src}.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a1b9496cd2b013f74885218947fa7120d53e74c",
      "tree": "a48d2fdf14a7445a15a7553ef8b7a8732b5bcac1",
      "parents": [
        "dd927a2694ee412b440284dd72dd8e32caada3fc"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:18:54 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:18:54 2011 -0700"
      },
      "message": "ipv4: Pass explicit saddr/daddr args to ipmr_get_route().\n\nThis eliminates the need to use rt-\u003ert_{src,dst}.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd927a2694ee412b440284dd72dd8e32caada3fc",
      "tree": "4f3c2b208d3f61a268139561e9d94f9d106b3946",
      "parents": [
        "69458cb194e82972347a004054e0baed719ed008"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:03:30 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 12:03:30 2011 -0700"
      },
      "message": "ipv4: In ip_build_and_send_pkt() use \u0027saddr\u0027 and \u0027daddr\u0027 args passed in.\n\nInstead of rt-\u003ert_{dst,src}\n\nThe only tricky part is source route option handling.\n\nIf the source route option is enabled we can\u0027t just use plain \u0027daddr\u0027,\nwe have to use opt-\u003eopt.faddr.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69458cb194e82972347a004054e0baed719ed008",
      "tree": "29e9a97a953994a86075cdf06e55ac1fe02a9733",
      "parents": [
        "9cddf15f18865c4f7124d829be41799f59aaa5cf"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 11:10:28 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 04 11:10:28 2011 -0700"
      },
      "message": "ipv4: Use flowi4-\u003e{daddr,saddr} in ipip_tunnel_xmit().\n\nInstead of rt-\u003ert_{dst,src}\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "492f64ce12e259abd85714d05b885e105bd8aeef",
      "tree": "cb4bae9774b7df1bb01aa266cc59fa557f1defd5",
      "parents": [
        "f4bfd99f8519e2d35541cc4fc383b1b3141a657a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:53:12 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:53:12 2011 -0700"
      },
      "message": "ipv4: Use flowi4\u0027s {saddr,daddr} in igmpv3_newpack() and igmp_send_report()\n\nInstead of rt-\u003ert_{src,dst}\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": "475949d8e86bbde5ea3ffa4d95e022ca69233b14",
      "tree": "5e29156df321b617366921f64532fc353019b238",
      "parents": [
        "417da66fa9d2f14b1a90b04095413b87907d8183"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 19:45:15 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 19:45:15 2011 -0700"
      },
      "message": "ipv4: Renamt struct rtable\u0027s rt_tos to rt_key_tos.\n\nTo more accurately reflect that it is purely a routing\ncache lookup key and is used in no other context.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "417da66fa9d2f14b1a90b04095413b87907d8183"
}
