)]}'
{
  "log": [
    {
      "commit": "227b60f5102cda4e4ab792b526a59c8cb20cd9f8",
      "tree": "2c9e372601ba794894833b0618bc531a9f5d57c4",
      "parents": [
        "06393009000779b00a558fd2f280882cc7dc2008"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Wed Oct 10 17:30:46 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 10 17:30:46 2007 -0700"
      },
      "message": "[INET]: local port range robustness\n\nExpansion of original idea from Denis V. Lunev \u003cden@openvz.org\u003e\n\nAdd robustness and locking to the local_port_range sysctl.\n1. Enforce that low \u003c high when setting.\n2. Use seqlock to ensure atomic update.\n\nThe locking might seem like overkill, but there are\ncases where sysadmin might want to change value in the\nmiddle of a DoS attack.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "457c4cbc5a3dde259d2a1f15d5f9785290397267",
      "tree": "a2ceee88780cbce27433b9a4434b3e9251efd81a",
      "parents": [
        "07feaebfcc10cd35e745c7073667935246494bee"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Sep 12 12:01:34 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:49:06 2007 -0700"
      },
      "message": "[NET]: Make /proc/net per network namespace\n\nThis patch makes /proc/net per network namespace.  It modifies the global\nvariables proc_net and proc_net_stat to be per network namespace.\nThe proc_net file helpers are modified to take a network namespace argument,\nand all of their callers are fixed to pass \u0026init_net for that argument.\nThis ensures that all of the /proc/net files are only visible and\nusable in the initial network namespace until the code behind them\nhas been updated to be handle multiple network namespaces.\n\nMaking /proc/net per namespace is necessary as at least some files\nin /proc/net depend upon the set of network devices which is per\nnetwork namespace, and even more files in /proc/net have contents\nthat are relevant to a single network namespace.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "32c1da70810017a98aa6c431a5494a302b6b9a30",
      "tree": "8583fe356829dd0265c673798262453d4bc36869",
      "parents": [
        "356f89e12e301376f26795643f3b5931c81c9cd5"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Aug 24 23:09:41 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:48:31 2007 -0700"
      },
      "message": "[UDP]: Randomize port selection.\n\nThis patch causes UDP port allocation to be randomized like TCP.\nThe earlier code would always choose same port (ie first empty list).\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a0c6c980d209827e5d69017fa736f107a744d1d",
      "tree": "dff735fe15844667577fd25bf87bae470d50306b",
      "parents": [
        "cd562c9859f648d78224e9fc0dafa5a3d5000fdb"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Sep 14 17:15:19 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 14 17:15:19 2007 -0700"
      },
      "message": "[IPV4]: Just increment OutDatagrams once per a datagram.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3be550f34b03e5eb762f74d447ebbeba97efbd6d",
      "tree": "07881880089af5f9d8dbea1444f09e34a0100ef1",
      "parents": [
        "dffe4f048b420f1af0b10a6090add0c5ea69e585"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Jul 10 23:06:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 23:06:43 2007 -0700"
      },
      "message": "[UDP]: Fix length check.\n\nRémi Denis-Courmont wrote:\n\u003e Right. By the way, shouldn\u0027t \"len\" rather be signed in there?\n\u003e \n\u003e \t\tunsigned int len;\n\u003e \n\u003e \t\t/* if we\u0027re overly short, let UDP handle it */\n\u003e \t\tlen \u003d skb-\u003elen - sizeof(struct udphdr);\n\u003e \t\tif (len \u003c\u003d 0)\n\u003e \t\t\tgoto udp;\n\nIt should, but the \u003c 0 case can\u0027t happen since __udp4_lib_rcv\nalready makes sure that we have at least a complete UDP header.\n\nAnyways, this patch fixes it.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "067b207b281db5e3f03f8d244286c20f61aa2343",
      "tree": "a947ba1fdc03ca82fdb2c7d6f8334b995c1c5ab2",
      "parents": [
        "93cce3d3657bfb5d04789afcd5104f8c48700f32"
      ],
      "author": {
        "name": "James Chapman",
        "email": "jchapman@katalix.com",
        "time": "Thu Jul 05 17:08:05 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:16:53 2007 -0700"
      },
      "message": "[UDP]: Cleanup UDP encapsulation code\n\nThis cleanup fell out after adding L2TP support where a new encap_rcv\nfuncptr was added to struct udp_sock. Have XFRM use the new encap_rcv\nfuncptr, which allows us to move the XFRM encap code from udp.c into\nxfrm4_input.c.\n\nMake xfrm4_rcv_encap() static since it is no longer called externally.\n\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nAcked-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "342f0234c71b40da785dd6a7ce1dd481ecbfdb81",
      "tree": "b6d7295cd484449f3f6478fe3e796fc8988534a3",
      "parents": [
        "4417da668c0021903464f92db278ddae348e0299"
      ],
      "author": {
        "name": "James Chapman",
        "email": "jchapman@katalix.com",
        "time": "Wed Jun 27 15:37:46 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:57 2007 -0700"
      },
      "message": "[UDP]: Introduce UDP encapsulation type for L2TP\n\nThis patch adds a new UDP_ENCAP_L2TPINUDP encapsulation type for UDP\nsockets. When a UDP socket\u0027s encap_type is UDP_ENCAP_L2TPINUDP, the\nskb is delivered to a function pointed to by the udp_sock\u0027s\nencap_rcv funcptr. If the skb isn\u0027t wanted by L2TP, it returns \u003e0, which\ncauses it to be passed through to UDP.\n\nInclude padding to put the new encap_rcv field on a 4-byte boundary.\n\nPreviously, the only user of UDP encap sockets was ESP, so when\nCONFIG_XFRM was not defined, some of the encap code was compiled\nout. This patch changes that. As a result, udp_encap_rcv() will\nnow do a little more work when CONFIG_XFRM is not defined.\n\nSigned-off-by: James Chapman \u003cjchapman@katalix.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df2bc459a3ad71f8b44c358bf7169acf9caf4acd",
      "tree": "143206b16d59c723be3c2cf2375a33b2a9306280",
      "parents": [
        "3c0d2f3780fc94746c4842e965bd2570e2119bb6"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jun 05 15:18:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 07 13:40:50 2007 -0700"
      },
      "message": "[UDP]: Revert 2-pass hashing changes.\n\nThis reverts changesets:\n\n6aaf47fa48d3c44280810b1b470261d340e4ed87\nb7b5f487ab39bc10ed0694af35651a03d9cb97ff\nde34ed91c4ffa4727964a832c46e624dd1495cf5\nfc038410b4b1643766f8033f4940bcdb1dace633\n\nThere are still some correctness issues recently\ndiscovered which do not have a known fix that doesn\u0027t\ninvolve doing a full hash table scan on port bind.\n\nSo revert for now.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "584bdf8cbdf6f277c2a00e083257ee75687cf6f4",
      "tree": "ae652e24340134824fe7016adcd99155ec9b2aea",
      "parents": [
        "4fcd6b991685493185c2bb8a76b21aadb658bd76"
      ],
      "author": {
        "name": "Wei Dong",
        "email": "weidong@cn.fujitsu.com",
        "time": "Thu May 31 22:49:28 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 03 18:08:50 2007 -0700"
      },
      "message": "[IPV4]: Fix \"ipOutNoRoutes\" counter error for TCP and UDP\n\nSigned-off-by: Wei Dong \u003cweidong@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc038410b4b1643766f8033f4940bcdb1dace633",
      "tree": "3ee59190ecaa77061a9b64cdc09fcce6b6efc389",
      "parents": [
        "a2af421f1819946556c6f467b1efdd0dc84af4d5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed May 09 16:42:20 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 10 23:47:22 2007 -0700"
      },
      "message": "[UDP]: Fix AF-specific references in AF-agnostic code.\n\n__udp_lib_port_inuse() cannot make direct references to\ninet_sk(sk)-\u003ercv_saddr as that is ipv4 specific state and\nthis code is used by ipv6 too.\n\nUse an operations vector to solve this, and this also paves\nthe way for ipv6 support for non-wild saddr hashing in UDP.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59c51591a0ac7568824f541f57de967e88adaa07",
      "tree": "243d20eb0a26b76d5d312f39ec5a1ff60e036711",
      "parents": [
        "02a3e59a088749c08b0293ee1535f5bf48f5926c"
      ],
      "author": {
        "name": "Michael Opdenacker",
        "email": "michael@free-electrons.com",
        "time": "Wed May 09 08:57:56 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed May 09 08:57:56 2007 +0200"
      },
      "message": "Fix occurrences of \"the the \"\n\nSigned-off-by: Michael Opdenacker \u003cmichael@free-electrons.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "de34ed91c4ffa4727964a832c46e624dd1495cf5",
      "tree": "e2745c338913fade9ce5ad76cccabeea9edfcaaf",
      "parents": [
        "b7b5f487ab39bc10ed0694af35651a03d9cb97ff"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Apr 30 14:51:58 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Apr 30 14:51:58 2007 -0700"
      },
      "message": "[UDP]: Do not allow specific bind when wildcard bind exists.\n\nWhen allocating local ports, do not allow a bind to a port\nwith a specific local address when a bind to that port with\na wildcard local address already exists.\n\nNoticed by Linus.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7b5f487ab39bc10ed0694af35651a03d9cb97ff",
      "tree": "7884f34982ae589aa5f72ab3b6e9d41da66aae99",
      "parents": [
        "40caf5ea5a7d47f8a33e26b63ca81dea4b5109d2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Apr 30 13:35:29 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Apr 30 13:35:29 2007 -0700"
      },
      "message": "[IPV4] UDP: Fix endianness bugs in hashing changes.\n\nI accidently applied an earlier version of Eric Dumazet\u0027s patch, from\nMarch 21st.  His version from March 30th didn\u0027t have these bugs, so\nthis just interdiffs to the correct patch.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6aaf47fa48d3c44280810b1b470261d340e4ed87",
      "tree": "ee59c6bd3ee482ef85a7b65f057beff4f4598b9b",
      "parents": [
        "65def812ab25d7565756e5748d91e22e302197ee"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Apr 30 00:26:00 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 30 00:26:00 2007 -0700"
      },
      "message": "[PATCH] INET : IPV4 UDP lookups converted to a 2 pass algo\n\nSome people want to have many UDP sockets, binded to a single port but\nmany different addresses. We currently hash all those sockets into a\nsingle chain.  Processing of incoming packets is very expensive,\nbecause the whole chain must be examined to find the best match.\n\nI chose in this patch to hash UDP sockets with a hash function that\ntake into account both their port number and address : This has a\ndrawback because we need two lookups : one with a given address, one\nwith a wildcard (null) address.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "604763722c655c7e3f31ecf6f7b4dafcd26a7a15",
      "tree": "a5c07f0e22ac86e7ca7a8c80bd3f111116610edd",
      "parents": [
        "628592ccdbbb5bb751217cf02e2e7abb500d7ffe"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 09 11:59:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:43 2007 -0700"
      },
      "message": "[NET]: Treat CHECKSUM_PARTIAL as CHECKSUM_UNNECESSARY\n\nWhen a transmitted packet is looped back directly, CHECKSUM_PARTIAL\nmaps to the semantics of CHECKSUM_UNNECESSARY.  Therefore we should\ntreat it as such in the stack.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "663ead3bb8d5b561e70fc3bb3861c9220b5a77eb",
      "tree": "551d031fc9c904487ced4d8d3363e5ed8f369794",
      "parents": [
        "ac758e3c55c529714354fc268892ca4d23ca1e99"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 09 11:59:07 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:40 2007 -0700"
      },
      "message": "[NET]: Use csum_start offset instead of skb_transport_header\n\nThe skb transport pointer is currently used to specify the start\nof the checksum region for transmit checksum offload.  Unfortunately,\nthe same pointer is also used during receive side processing.\n\nThis creates a problem when we want to retransmit a received\npacket with partial checksums since the skb transport pointer\nwould be overwritten.\n\nThis patch solves this problem by creating a new 16-bit csum_start\noffset value to replace the skb transport header for the purpose\nof checksums.  This offset is calculated from skb-\u003ehead so that\nit does not have to change when skb-\u003edata changes.\n\nNo extra space is required since csum_offset itself fits within\na 16-bit word so we can use the other 16 bits for csum_start.\n\nFor backwards compatibility, just before we push a packet with\npartial checksums off into the device driver, we set the skb\ntransport header to what it would have been under the old scheme.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c7664f13bd1a36acb8566b93892a4c58759ac6",
      "tree": "18ead610bf54ef87f3832c61d64a4bad30d4f78e",
      "parents": [
        "4bedb45203eab92a87b4c863fe2d0cded633427f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:43:18 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce icmp_hdr(), remove skb-\u003eh.icmph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4bedb45203eab92a87b4c863fe2d0cded633427f",
      "tree": "d46e43d0a08253cf85ee2db64df6aee5e4ff5a07",
      "parents": [
        "d9edf9e2be0f7661558984c32bd53867a7037fd3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:28:48 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:22 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce udp_hdr(), remove skb-\u003eh.uh\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea2ae17d6443abddc79480dc9f7af8feacabddc4",
      "tree": "2d6f48a5e4a40f761b5b510af9aac1fca55004cb",
      "parents": [
        "badff6d01a8589a1c828b0bf118903ca38627f4e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 17:55:53 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:16 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_transport_offset()\n\nFor the quite common \u0027skb-\u003eh.raw - skb-\u003edata\u0027 sequence.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "badff6d01a8589a1c828b0bf118903ca38627f4e",
      "tree": "89611d7058c612085c58dfb9913ee30ddf04b604",
      "parents": [
        "0660e03f6b18f19b6bbafe7583265a51b90daf36"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 13:06:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:15 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_reset_transport_header(skb)\n\nFor the common, open coded \u0027skb-\u003eh.raw \u003d skb-\u003edata\u0027 operation, so that we can\nlater turn skb-\u003eh.raw into a offset, reducing the size of struct sk_buff in\n64bit land while possibly keeping it as a pointer on 32bit.\n\nThis one touches just the most simple cases:\n\nskb-\u003eh.raw \u003d skb-\u003edata;\nskb-\u003eh.raw \u003d {skb_push|[__]skb_pull}()\n\nThe next ones will handle the slightly more \"complex\" cases.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eddc9ec53be2ecdbf4efe0efd4a83052594f0ac0",
      "tree": "4a38ab4dbd9d61fdf5a5ea6ed61463e0b9e33ba7",
      "parents": [
        "e023dd643798c4f06c16466af90b4d250e4b8bd7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 20 22:47:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:10 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ip_hdr(), remove skb-\u003enh.iph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7a3c5da35055e2fa97ed4f0da3eec4bd0ef4c38",
      "tree": "cd1bf48945fdf2d872047a76d88642a40eb93d7b",
      "parents": [
        "6dea649a8a4c4b086227018c919298f988c34b30"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Mar 09 13:51:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:20 2007 -0700"
      },
      "message": "[UDP]: Use __skb_pull since we have checked it won\u0027t fail with pskb_may_pull\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fbe070a4293e8ab2d2edb1bc23f1e5220ce61af",
      "tree": "5d2d86c0b5ab1433a3e233a020dd13965531d249",
      "parents": [
        "6f05f629716a71d4c9c82813f45d3e9a6e90d146"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Thu Mar 08 20:46:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:15 2007 -0700"
      },
      "message": "[UDP]: deinline\n\nA couple of functions are exported or used indirectly\nso it is pointless to mark them as inline.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6516c65573fde5e421c6c92c4b180bbe2245b23b",
      "tree": "8c319e78cebc128cc3363e12c7faaaebf454c568",
      "parents": [
        "a2a316fd068c455c609ecc155dcfaa7e208d29fe"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Thu Mar 08 20:41:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:07 2007 -0700"
      },
      "message": "[UDP]: ipv4 whitespace cleanup\n\nFix whitespace around keywords.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "759e5d006462d53fb708daa8284b4ad909415da1",
      "tree": "edcc4e9d975199b3fe5e2aadc3d1e06824755e75",
      "parents": [
        "1ab6eb62b02e0949a392fb19bf31ba59ae1022b1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Mar 25 20:10:56 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:23:51 2007 -0700"
      },
      "message": "[UDP]: Clean up UDP-Lite receive checksum\n\nThis patch eliminates some duplicate code for the verification of\nreceive checksums between UDP-Lite and UDP.  It does this by\nintroducing __skb_checksum_complete_head which is identical to\n__skb_checksum_complete_head apart from the fact that it takes\na length parameter rather than computing the first skb-\u003elen bytes.\n\nAs a result UDP-Lite will be able to use hardware checksum offload\nfor packets which do not use partial coverage checksums.  It also\nmeans that UDP-Lite loopback no longer does unnecessary checksum\nverification.\n\nIf any NICs start support UDP-Lite this would also start working\nautomatically.\n\nThis patch removes the assumption that msg_flags has MSG_TRUNC clear\nupon entry in recvmsg.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d644329bc9f10213a282387dfe4984ff891dd768",
      "tree": "a22fa4740a9bba8f8b994a9b988cc5bc68da9538",
      "parents": [
        "ba5dcee128d9f2877a6d2a5b150c24d90d77dad1"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Mar 06 20:26:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 07 16:08:04 2007 -0800"
      },
      "message": "[UDP]: Reread uh pointer after pskb_trim\n\nThe header may have moved when trimming.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95f30b336b944e3e418f825044b4793d9e9aac09",
      "tree": "4faf8cc7a061fdf7d85f94768ca1150f8580e700",
      "parents": [
        "4768fbcbcfbbcacb785ae08eef33767a0b4fdcdd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Feb 09 15:44:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:29 2007 -0800"
      },
      "message": "[UDP]: UDP can use sk_hash to speedup lookups\n\nIn a prior patch, I introduced a sk_hash field (__sk_common.skc_hash)  to let\ntcp lookups use one cache line per unmatched entry instead of two.\n\nWe can also use sk_hash to speedup UDP part as well. We store in sk_hash the\nhnum value, and use sk-\u003esk_hash (same cache line than \u0027next\u0027 pointer),\ninstead of inet-\u003enum (different cache line)\n\nNote : We still have a false sharing problem for SMP machines, because\nsock_hold(sock) dirties the cache line containing the \u0027next\u0027 pointer. Not\ncounting the udp_hash_lock rwlock. (did someone mentioned RCU ? :) )\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e905a9edab7f4f14f9213b52234e4a346c690911",
      "tree": "9e52a5f47eec47c5685c347ff7af22290a10305b",
      "parents": [
        "642656518b2e64fd59d9bbd15b6885cac5fe99b1"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:47 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:39 2007 -0800"
      },
      "message": "[NET] IPV4: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb9086f21c73b38b5ca27558db4c91d62d0e70b",
      "tree": "1fa2694f1e5eac966cc8db2fb8d5f3d684b09803",
      "parents": [
        "ba7808eac17360dda459f82222859b0e3879854b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 02:09:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:45 2007 -0800"
      },
      "message": "[IPV4/IPV6]: Always wait for IPSEC SA resolution in socket contexts.\n\nDo this even for non-blocking sockets.  This avoids the silly -EAGAIN\nthat applications can see now, even for non-blocking sockets in some\ncases (f.e. connect()).\n\nWith help from Venkat Tekkirala.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c668704b7fa5a4ebf21a490ddfbd6dc2e01fc97",
      "tree": "a5b4ee5df56025c077646a2b8cbdf5a23c2a1b89",
      "parents": [
        "b23e3536667373e44f52a907f63cb55f75969490"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:42:26 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Dec 22 11:42:26 2006 -0800"
      },
      "message": "[UDP]: Fix reversed logic in udp_get_port().\n\nWhen this code was converted to use sk_for_each() the\nlogic for the \"best hash chain length\" code was reversed,\nbreaking everything.\n\nThe original code was of the form:\n\n\t\t\tsize \u003d 0;\n\t\t\tdo {\n\t\t\t\tif (++size \u003e\u003d best_size_so_far)\n\t\t\t\t\tgoto next;\n\t\t\t} while ((sk \u003d sk-\u003enext) !\u003d NULL);\n\t\t\tbest_size_so_far \u003d size;\n\t\t\tbest \u003d result;\n\t\tnext:;\n\nand this got converted into:\n\n\t\t\tsk_for_each(sk2, node, head)\n\t\t\t\tif (++size \u003c best_size_so_far) {\n\t\t\t\t\tbest_size_so_far \u003d size;\n\t\t\t\t\tbest \u003d result;\n\t\t\t\t}\n\nWhich does something very very different from the original.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c0a6cb0db19de411c4bf7fcdc79d4c7c4ccafb1",
      "tree": "e7f793f8d259df2a37fa975325c25961a5d3e14b",
      "parents": [
        "e3703b3de1f049b38733ba520e5038f23063068e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 27 09:29:59 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:45 2006 -0800"
      },
      "message": "[UDP(-Lite)]: consolidate v4 and v6 get|setsockopt code\n\nThis patch consolidates set/getsockopt code between UDP(-Lite) v4 and 6. The\njustification is that UDP(-Lite) is a transport-layer protocol and therefore\nthe socket option code (at least in theory) should be AF-independent.\n\nFurthermore, there is the following code reduplication:\n * do_udp{,v6}_getsockopt is 100% identical between v4 and v6\n * do_udp{,v6}_setsockopt is identical up to the following differerence\n\t--v4 in contrast to v4 additionally allows the experimental encapsulation\n          types  UDP_ENCAP_ESPINUDP and UDP_ENCAP_ESPINUDP_NON_IKE\n\t--the remainder is identical between v4 and v6\n   I believe that this difference is of little relevance.\n\nThe advantages in not duplicating twice almost completely identical code.\n\nThe patch further simplifies the interface of udp{,v6}_push_pending_frames,\nsince for the second argument (struct udp_sock *up) it always holds that\nup \u003d udp_sk(sk); where sk is the first function argument.\n\nSigned-off-by: Gerrit Renker  \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff1dcadb1b55dbf471c5ed109dbbdf06bd19ef3b",
      "tree": "cbcd17d33ecc52c90d218b43c5aec430be448058",
      "parents": [
        "5b14027bf2132c0631ea9f3be11ced89a5057220"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 18:07:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:18 2006 -0800"
      },
      "message": "[NET]: Split skb-\u003ecsum\n\n... into anonymous union of __wsum and __u32 (csum and csum_offset resp.)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e5200f54062b8af0ed1d186ea0f113854786d89",
      "tree": "71e00b21ae4f8410413f70141aa275529dbbfb84",
      "parents": [
        "34bcca28335977e969338c98c6c43a1e08f592b2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 18:06:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:27:16 2006 -0800"
      },
      "message": "[NET]: Fix assorted misannotations (from md5 and udplite merges).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "078250d68d883495f31d0e6ce8321292f2dc1cfa",
      "tree": "b8047d96bfa0aef0d0a1b0709d9545aceef00de9",
      "parents": [
        "7d9e9b3df491d5e1c3ed76c5cff7ace6094124c1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 15 00:44:49 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:47 2006 -0800"
      },
      "message": "[NET/IPv4]: Make udp_push_pending_frames static\n\nudp_push_pending_frames is only referenced within\nnet/ipv4/udp.c and hence can remain static.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6ab028804bdc580fe0915494dbf31f5ea473ca7",
      "tree": "4bf0fedcfaab7103682bc6209f196104fa9df8fb",
      "parents": [
        "b51655b958dfb1176bfcf99466231fdbef8751ff"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Nov 16 02:36:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:39 2006 -0800"
      },
      "message": "[NET]: Make mangling a checksum (0 -\u003e 0xffff on the wire) explicit.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b11687ef003ed595033da89643c8995676f929d",
      "tree": "f18b8e552e88aa213a24cd10bb4c67ba0bab8710",
      "parents": [
        "d6f5493c1a42b1203e5b0cb0507afd00bb2927bf"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 21:28:24 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:23:29 2006 -0800"
      },
      "message": "[NET]: Annotate csum_tcpudp_magic() callers in net/*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba4e58eca8aa9473b44fdfd312f26c4a2e7798b3",
      "tree": "700f8f989f48da480beb83b983637cfd2b5a3f67",
      "parents": [
        "6051e2f4fb68fc8e5343db58fa680ece376f405c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Nov 27 11:10:57 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:46 2006 -0800"
      },
      "message": "[NET]: Supporting UDP-Lite (RFC 3828) in Linux\n\nThis is a revision of the previously submitted patch, which alters\nthe way files are organized and compiled in the following manner:\n\n\t* UDP and UDP-Lite now use separate object files\n\t* source file dependencies resolved via header files\n\t  net/ipv{4,6}/udp_impl.h\n\t* order of inclusion files in udp.c/udplite.c adapted\n\t  accordingly\n\n[NET/IPv4]: Support for the UDP-Lite protocol (RFC 3828)\n\nThis patch adds support for UDP-Lite to the IPv4 stack, provided as an\nextension to the existing UDPv4 code:\n        * generic routines are all located in net/ipv4/udp.c\n        * UDP-Lite specific routines are in net/ipv4/udplite.c\n        * MIB/statistics support in /proc/net/snmp and /proc/net/udplite\n        * shared API with extensions for partial checksum coverage\n\n[NET/IPv6]: Extension for UDP-Lite over IPv6\n\nIt extends the existing UDPv6 code base with support for UDP-Lite\nin the same manner as per UDPv4. In particular,\n        * UDPv6 generic and shared code is in net/ipv6/udp.c\n        * UDP-Litev6 specific extensions are in net/ipv6/udplite.c\n        * MIB/statistics support in /proc/net/snmp6 and /proc/net/udplite6\n        * support for IPV6_ADDRFORM\n        * aligned the coding style of protocol initialisation with af_inet6.c\n        * made the error handling in udpv6_queue_rcv_skb consistent;\n          to return `-1\u0027 on error on all error cases\n        * consolidation of shared code\n\n[NET]: UDP-Lite Documentation and basic XFRM/Netfilter support\n\nThe UDP-Lite patch further provides\n        * API documentation for UDP-Lite\n        * basic xfrm support\n        * basic netfilter support for IPv4 and IPv6 (LOG target)\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "753eab76a3337863a0d86ce045fa4eb6c3cbeef9",
      "tree": "c356797fbdff11986123aaae0bdd6338a76af8ff",
      "parents": [
        "38f7efd52c4f3f0b22c460eadbfe7c42f9ebff82"
      ],
      "author": {
        "name": "Olaf Kirch",
        "email": "okir@suse.de",
        "time": "Wed Nov 22 20:11:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Nov 25 15:16:48 2006 -0800"
      },
      "message": "[UDP]: Make udp_encap_rcv use pskb_may_pull\n\nMake udp_encap_rcv use pskb_may_pull\n\nIPsec with NAT-T breaks on some notebooks using the latest e1000 chipset,\nwhen header split is enabled. When receiving sufficiently large packets, the\ndriver puts everything up to and including the UDP header into the header\nportion of the skb, and the rest goes into the paged part. udp_encap_rcv\nforgets to use pskb_may_pull, and fails to decapsulate it. Instead, it\npasses it up it to the IKE daemon.\n\nSigned-off-by: Olaf Kirch \u003cokir@suse.de\u003e\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1e0c14f49d6b393179f423abbac47f85618d3d46",
      "tree": "9d789c9e4988f96a2da35506f12aeeb5b945432d",
      "parents": [
        "132a55f3c5c0b1a364d32f65595ad8838c30a60e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Oct 03 14:35:49 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 04 00:31:00 2006 -0700"
      },
      "message": "[UDP]: Fix MSG_PROBE crash\n\nUDP tracks corking status through the pending variable.  The\nIP layer also tracks it through the socket write queue.  It\nis possible for the two to get out of sync when MSG_PROBE is\nused.\n\nThis patch changes UDP to check the write queue to ensure\nthat the two stay in sync.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "734ab87f632e94dfd4299f4d4d1d10668548f9d8",
      "tree": "da5225f270efbb1e345c9967626893227e6806bf",
      "parents": [
        "4e7e0c7592cafe5453e5b2f115fc0065d11b3d44"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Sep 27 18:37:41 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:02:17 2006 -0700"
      },
      "message": "[UDP] net/ipv4/udp.c: trivial annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ca3c68e76686bee058937ade2b96f4de58ee434",
      "tree": "13319a2f2a7f53c41746a32a5635254c157fe87e",
      "parents": [
        "7f25afbbefb266520a237df0e9b59112704a7a42"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Sep 27 18:28:07 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Sep 28 18:01:53 2006 -0700"
      },
      "message": "[IPV4]: struct ip_options annotations\n\n-\u003efaddr is net-endian; annotated as such, variables inferred to be net-endian\nannotated.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3b4eadbea77ecb3c3a74d1bc81b392f454c7f2e",
      "tree": "a94577b99959414edd2b76d5005b5d361badc5a6",
      "parents": [
        "bed53ea7fef37820b7c92ad74feff1b817c6aae3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Aug 26 20:10:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:23 2006 -0700"
      },
      "message": "[UDP]: saddr_cmp function should take const socket pointers\n\nThis also kills a warning while building ipv6:\n\nnet/ipv6/udp.c: In function ‘udp_v6_get_port’:\nnet/ipv6/udp.c:66: warning: passing argument 3 of ‘udp_get_port’ from incompatible pointer type\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bed53ea7fef37820b7c92ad74feff1b817c6aae3",
      "tree": "6cacd897edc7a0308d89c2d239d75df5f8624277",
      "parents": [
        "25030a7f9eeab2dcefff036469e0e2b4f956198f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Aug 26 20:06:49 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:22 2006 -0700"
      },
      "message": "[UDP]: Mark udp_port_rover static.\n\nIt is not referenced outside of net/ipv4/udp.c any longer.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25030a7f9eeab2dcefff036469e0e2b4f956198f",
      "tree": "923030c42f1c2bf4aa9cd851df13b95bd0fe542b",
      "parents": [
        "6a28ec8cd0c6993a4ac0d52f4347f7ed077b5cac"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Aug 26 20:06:05 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:21 2006 -0700"
      },
      "message": "[UDP]: Unify UDPv4 and UDPv6 -\u003eget_port()\n\nThis patch creates one common function which is called by\nudp_v4_get_port() and udp_v6_get_port(). As a result,\n  * duplicated code is removed\n  * udp_port_rover and local port lookup can now be removed from udp.h\n  * further savings follow since the same function will be used by UDP-Litev4\n    and UDP-Litev6\n\nIn contrast to the patch sent in response to Yoshifujis comments\n(fixed by this variant), the code below also removes the\nEXPORT_SYMBOL(udp_port_rover), since udp_port_rover can now remain\nlocal to net/ipv4/udp.c.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "81aa646cc4df3779bcbf9d18cc2c0813ee9b3262",
      "tree": "7cf11f1e09f83b97a36012c187231504c4654199",
      "parents": [
        "2aa7f36cdb332a32849afbf25fcbf35dce5b1940"
      ],
      "author": {
        "name": "Martin Bligh",
        "email": "mbligh@google.com",
        "time": "Mon Aug 14 23:57:10 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:54:41 2006 -0700"
      },
      "message": "[IPV4]: add the UdpSndbufErrors and UdpRcvbufErrors MIBs\n\nSigned-off-by: Martin Bligh \u003cmbligh@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "84fa7933a33f806bbbaae6775e87459b1ec584c0",
      "tree": "5be404225d90f640997b12f631e9b496b3fd0d61",
      "parents": [
        "8584d6df39db5601965f9bc5e3bf2fea833ad7bb"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 29 16:44:56 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:53 2006 -0700"
      },
      "message": "[NET]: Replace CHECKSUM_HW by CHECKSUM_PARTIAL/CHECKSUM_COMPLETE\n\nReplace CHECKSUM_HW by CHECKSUM_PARTIAL (for outgoing packets, whose\nchecksum still needs to be completed) and CHECKSUM_COMPLETE (for\nincoming packets, device supplied full checksum).\n\nPatch originally from Herbert Xu, updated by myself for 2.6.18-rc3.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beb8d13bed80f8388f1a9a107d07ddd342e627e8",
      "tree": "19d5763b9b3b8ff3969997565e5ec0edd6e4bd33",
      "parents": [
        "4e2ba18eae7f370c7c3ed96eaca747cc9b39f917"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@TrustedCS.com",
        "time": "Fri Aug 04 23:12:42 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:27 2006 -0700"
      },
      "message": "[MLSXFRM]: Add flow labeling\n\nThis labels the flows that could utilize IPSec xfrms at the points the\nflows are defined so that IPSec policy and SAs at the right label can\nbe used.\n\nThe following protos are currently not handled, but they should\ncontinue to be able to use single-labeled IPSec like they currently\ndo.\n\nipmr\nip_gre\nipip\nigmp\nsit\nsctp\nip6_tunnel (IPv6 over IPv6 tunnel device)\ndecnet\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0da974f4f303a6842516b764507e3c0a03f41e5a",
      "tree": "8872aec792f02040269c6769dd1009b20f71d186",
      "parents": [
        "a0ee7c70b22f78593957f99faa06acb4747b8bc0"
      ],
      "author": {
        "name": "Panagiotis Issaris",
        "email": "takis@issaris.org",
        "time": "Fri Jul 21 14:51:30 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 21 14:51:30 2006 -0700"
      },
      "message": "[NET]: Conversions from kmalloc+memset to k(z|c)alloc.\n\nSigned-off-by: Panagiotis Issaris \u003ctakis@issaris.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "543d9cfeec4d58ad3fd974db5531b06b6b95deb4",
      "tree": "b5f79a92ec01b4a97f26d48cae11566498641822",
      "parents": [
        "f94691acf9df35d5cd828373e35391bdc4a3fde6"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:48:35 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:48:35 2006 -0800"
      },
      "message": "[NET]: Identation \u0026 other cleanups related to compat_[gs]etsockopt cset\n\nNo code changes, just tidying up, in some cases moving EXPORT_SYMBOLs\nto just after the function exported, etc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3fdadf7d27e3fbcf72930941884387d1f4936f04",
      "tree": "167072cf1e60b6b307610563614b435ff0caa52d",
      "parents": [
        "c750360938b403e6cc193d293cfbcb099dd6c60e"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:45:21 2006 -0800"
      },
      "message": "[NET]: {get|set}sockopt compatibility layer\n\nThis patch extends {get|set}sockopt compatibility layer in order to\nmove protocol specific parts to their place and avoid huge universal\nnet/compat.c file in the future.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b59c270104f03960069596722fea70340579244d",
      "tree": "5d038835626047899097b622695ead5c1eb1c499",
      "parents": [
        "5c901daaea3be0d900b3ae1fc9b5f64ff94e4f02"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jan 06 23:06:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jan 07 12:57:36 2006 -0800"
      },
      "message": "[NETFILTER]: Keep conntrack reference until IPsec policy checks are done\n\nKeep the conntrack reference until policy checks have been performed for\nIPsec NAT support. The reference needs to be dropped before a packet is\nqueued to avoid having the conntrack module unloadable.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14c850212ed8f8cbb5972ad6b8812e08a0bc901c",
      "tree": "53c88f03e7bbac4064f6e80d462ad484ee038326",
      "parents": [
        "25995ff577675b58dbd848b7758e7bad87411947"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 27 02:43:12 2005 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:21 2006 -0800"
      },
      "message": "[INET_SOCK]: Move struct inet_sock \u0026 helper functions to net/inet_sock.h\n\nTo help in reducing the number of include dependencies, several files were\ntouched as they were getting needed headers indirectly for stuff they use.\n\nThanks also to Alan Menegotto for pointing out that net/dccp/proto.c had\nlinux/dccp.h include twice.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65a45441d7e91ef6107fadbc55f775db4ba23874",
      "tree": "d88c4908321609739e653c10b6d5fbdbeccfd1ea",
      "parents": [
        "3305b80c214c642b89cd5c21af83bc91ec13f8bd"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Tue Dec 13 23:17:02 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:42 2006 -0800"
      },
      "message": "[UDP]: udp_checksum_init return value\n\nSince udp_checksum_init always returns 0 there is no point in\nhaving it return a value.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3305b80c214c642b89cd5c21af83bc91ec13f8bd",
      "tree": "909ed75c500d0ac422738781f84a819c933703c5",
      "parents": [
        "57cca05af1e20fdc65b55be52c042c234f86c866"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Dec 13 23:16:37 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:41 2006 -0800"
      },
      "message": "[IP]: Simplify and consolidate MSG_PEEK error handling\n\nWhen a packet is obtained from skb_recv_datagram with MSG_PEEK enabled\nit is left on the socket receive queue.  This means that when we detect\na checksum error we have to be careful when trying to free the packet\nas someone could have dequeued it in the time being.\n\nCurrently this delicate logic is duplicated three times between UDPv4,\nUDPv6 and RAWv6.  This patch moves them into a one place and simplifies\nthe code somewhat.\n\nThis is based on a suggestion by Eric Dumazet.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fb286bb2990a107009dbf25f6ffebeb7df77f9be",
      "tree": "0eede2c37f1b3831e59601933eebf6b82be75ffc",
      "parents": [
        "1064e944d03eb7a72c0fa11236d5e69cfd877a71"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Nov 10 13:01:24 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Nov 10 13:01:24 2005 -0800"
      },
      "message": "[NET]: Detect hardware rx checksum faults correctly\n\nHere is the patch that introduces the generic skb_checksum_complete\nwhich also checks for hardware RX checksum faults.  If that happens,\nit\u0027ll call netdev_rx_csum_fault which currently prints out a stack\ntrace with the device name.  In future it can turn off RX checksum.\n\nI\u0027ve converted every spot under net/ that does RX checksum checks to\nuse skb_checksum_complete or __skb_checksum_complete with the\nexceptions of:\n\n* Those places where checksums are done bit by bit.  These will call\nnetdev_rx_csum_fault directly.\n\n* The following have not been completely checked/converted:\n\nipmr\nip_vs\nnetfilter\ndccp\n\nThis patch is based on patches and suggestions from Stephen Hemminger\nand David S. Miller.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e308e25c97f06cf704e65eeb773412f5460a3b93",
      "tree": "295885afa3300455fa1b7cb0dd18a543d73fc744",
      "parents": [
        "0e4e4220f10bf8f58a8606f0cb28538088c64b1a"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Thu Sep 08 12:32:21 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 08 12:32:21 2005 -0700"
      },
      "message": "[IPV4] udp: trim forgets about CHECKSUM_HW\n\nA UDP packet may contain extra data that needs to be trimmed off.\nBut when doing so, UDP forgets to fixup the skb checksum if CHECKSUM_HW\nis being used.\n\nI think this explains the case of a NFS receive using skge driver\ncausing \u0027udp hw checksum failures\u0027 when interacting with a crufty\nsettop box.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba89966c1984513f4f2cc0a6c182266be44ddd03",
      "tree": "6e5766fc5c287708c03e0a162531dfd4785b0703",
      "parents": [
        "29cb9f9c5502f6218cd3ea574efe46a5e55522d2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Aug 26 12:05:31 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:11:18 2005 -0700"
      },
      "message": "[NET]: use __read_mostly on kmem_cache_t , DEFINE_SNMP_STAT pointers\n\nThis patch puts mostly read only data in the right section\n(read_mostly), to help sharing of these data between CPUS without\nmemory ping pongs.\n\nOn one of my production machine, tcp_statistics was sitting in a\nheavily modified cache line, so *every* SNMP update had to force a\nreload.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64ce207306debd7157f47282be94770407bec01c",
      "tree": "b4004f01b2b0e935b95bcce9a78e60a9e9e17f65",
      "parents": [
        "64cf1e5d8b5f88d56509260e08fa0d8314277350"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 09 20:50:53 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:56:08 2005 -0700"
      },
      "message": "[NET]: Make NETDEBUG pure printk wrappers\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c752f0739f09b803aed191c4765a3b6650a08653",
      "tree": "33dcc7acf66ec51952b76276c758e38811f4f708",
      "parents": [
        "f3f05f7046e7c85b04af390d95a82a27160dd5d0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Tue Aug 09 20:08:28 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:41:54 2005 -0700"
      },
      "message": "[TCP]: Move the tcp sock states to net/tcp_states.h\n\nLots of places just needs the states, not even linux/tcp.h, where this\nenum was, needs it.\n\nThis speeds up development of the refactorings as less sources are\nrebuilt when things get moved from net/tcp.h.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ca9334523c853e407da7b3a0bd02f54d0fa59414",
      "tree": "3c4f8050d9bc0e062038c1f7e22722e0e6447bfc",
      "parents": [
        "4d479e40e1748a877a24015fc6727b27b77110cd"
      ],
      "author": {
        "name": "Heikki Orsila",
        "email": "heikki.orsila@iki.fi",
        "time": "Mon Aug 08 14:26:52 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 08 14:26:52 2005 -0700"
      },
      "message": "[IPV4]: Debug cleanup\n\nHere\u0027s a small patch to cleanup NETDEBUG() use in net/ipv4/ for Linux \nkernel 2.6.13-rc5. Also weird use of indentation is changed in some\nplaces.\n\nSigned-off-by: Heikki Orsila \u003cheikki.orsila@iki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "208d89843b7b03978d8e748b8b991c1be81c4f43",
      "tree": "10669e257624aa511eb6b14db296e40f9db777cc",
      "parents": [
        "9bb7bc942d3da606f184ac6a4dfc7e4d470c831b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon May 30 15:50:15 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 30 15:50:15 2005 -0700"
      },
      "message": "[IPV4]: Fix BUG() in 2.6.x, udp_poll(), fragments + CONFIG_HIGHMEM\n\nSteven Hand \u003cSteven.Hand@cl.cam.ac.uk\u003e wrote:\n\u003e \n\u003e Reconstructed forward trace: \n\u003e \n\u003e   net/ipv4/udp.c:1334   spin_lock_irq() \n\u003e   net/ipv4/udp.c:1336   udp_checksum_complete() \n\u003e net/core/skbuff.c:1069   skb_shinfo(skb)-\u003enr_frags \u003e 1\n\u003e net/core/skbuff.c:1086   kunmap_skb_frag()\n\u003e net/core/skbuff.h:1087   local_bh_enable()\n\u003e kernel/softirq.c:0140   WARN_ON(irqs_disabled());\n\nThe receive queue lock is never taken in IRQs (and should never be) so\nwe can simply substitute bh for irq.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02c30a84e6298b6b20a56f0896ac80b47839e134",
      "tree": "031e9d68ad83c371af7ebeb6840f3ede52698663",
      "parents": [
        "125947f2ab8c45417feaa4a8800e89529ca4612f"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Thu May 05 16:16:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu May 05 16:36:49 2005 -0700"
      },
      "message": "[PATCH] update Ross Biro bouncing email address\n\nRoss moved.  Remove the bad email address so people will find the correct\none in ./CREDITS.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d78b6c78ae6d87e4c1c8072f42efa716f04afb9",
      "tree": "e04f156e8d74c28b925bf53e62d3e4b424a6ffb7",
      "parents": [
        "c7f905f0f6d49ed8c1aa4566c31f0383a0ba0c9d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Apr 19 22:48:59 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 19 22:48:59 2005 -0700"
      },
      "message": "[IPSEC]: COW skb header in UDP decap\n\nThe following patch just makes the header part of the skb writeable.\nThis is needed since we modify the IP headers just a few lines below.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
