)]}'
{
  "log": [
    {
      "commit": "f145049a06f470d0489f47cb83ff3ccb2a0de622",
      "tree": "2d25f9af4c1e599763f01f9338ed8bf0517ddac1",
      "parents": [
        "0be43f82c4f4c4a999b53cf794513f7f1a4ed7f3"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Mar 24 15:33:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 24 15:33:00 2008 -0700"
      },
      "message": "[NETNS]: Drop packets in the non-initial namespace on the per/protocol basis.\n\nIP layer now can handle multiple namespaces normally. So, process such\npackets normally and drop them only if the transport layer is not\naware about namespaces.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "87c3efbfdd1f98af14a1f60ff19f73d9a8d8da98",
      "tree": "938179d4904406a82d35018c0d7b895505213124",
      "parents": [
        "853cbbaaa4ccdf221be5ab6afe967aa9998546b7"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Dec 11 02:25:01 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:12 2008 -0800"
      },
      "message": "[IPV6]: make inet6_register_protosw to return an error code\n\nThis patch makes the inet6_register_protosw to return an error code.\nThe different protocols can be aware the registration was successful or\nnot and can pass the error to the initial caller, af_inet6.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5bbef20e017efcb10700398cc048c49b98628e0",
      "tree": "5139dfbfb416eaeb43cc75645e486fe6a103e39b",
      "parents": [
        "a224be766bf593f7bcd534ca0c48dbd3eaf7bfce"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Oct 15 12:50:28 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 15 12:50:28 2007 -0700"
      },
      "message": "[IPV6]: Replace sk_buff ** with sk_buff * in input handlers\n\nWith all the users of the double pointers removed from the IPv6 input path,\nthis patch converts all occurances of sk_buff ** to sk_buff * in IPv6 input\nhandlers.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee41e2dff1a0ac548f12871f4bb23fe9e69e13eb",
      "tree": "d71027b2e7d539bc43076da8d39f3e73e4ed4414",
      "parents": [
        "3a137d2065571864be0301b9ebd72ddb01060997"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Nov 28 03:11:33 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:30:55 2006 -0800"
      },
      "message": "[INET]: Change protocol field in struct inet_protosw to u16\n\n[acme@newtoy net-2.6.20]$ pahole /tmp/tcp_ipv6.o inet_protosw\n/* /pub/scm/linux/kernel/git/acme/net-2.6.20/include/net/protocol.h:69 */\nstruct inet_protosw {\n        struct list_head           list;                 /*     0     8 */\n        short unsigned int         type;                 /*     8     2 */\n\n        /* XXX 2 bytes hole, try to pack */\n\n        int                        protocol;             /*    12     4 */\n        struct proto *             prot;                 /*    16     4 */\n        const struct proto_ops  *  ops;                  /*    20     4 */\n        int                        capability;           /*    24     4 */\n        char                       no_check;             /*    28     1 */\n        unsigned char              flags;                /*    29     1 */\n}; /* size: 32, sum members: 28, holes: 1, sum holes: 2, padding: 2 */\n\nSo that we can kill that hole, protocol can only go all the way to 255 (RAW).\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "04ce69093f91547d3a7c4fc815d2868195591340",
      "tree": "69bea18b5d1b8c2999f13f8e0372491c9f9238e6",
      "parents": [
        "8c689a6eae2d83970e4f34753d513e96fb97a025"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Nov 08 00:21:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:21:12 2006 -0800"
      },
      "message": "[IPV6]: \u0027info\u0027 argument of ipv6 -\u003eerr_handler() is net-endian\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a430a43d087545c96542ee64573237919109d370",
      "tree": "653b630298505d5a65e2e094868d83014e4b0dc4",
      "parents": [
        "89114afd435a486deb8583e89f490fc274444d18"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Jul 08 13:34:56 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 08 13:34:56 2006 -0700"
      },
      "message": "[NET] gso: Fix up GSO packets with broken checksums\n\nCertain subsystems in the stack (e.g., netfilter) can break the partial\nchecksum on GSO packets.  Until they\u0027re fixed, this patch allows this to\nwork by recomputing the partial checksums through the GSO mechanism.\n\nOnce they\u0027ve all been converted to update the partial checksum instead of\nclearing it, this workaround can be removed.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adcfc7d0b4d7bc3c7edac6fdde9f3ae510bd6054",
      "tree": "6bf8f6facbfbac9ea8ed4d3310ea46a7518ae453",
      "parents": [
        "2889139a6acd2945f6143eb85f7dc2a22a352e1a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jun 30 13:36:15 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jun 30 14:12:06 2006 -0700"
      },
      "message": "[IPV6]: Added GSO support for TCPv6\n\nThis patch adds GSO support for IPv6 and TCPv6.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "576a30eb6453439b3c37ba24455ac7090c247b5a",
      "tree": "e0c427a61e3de5c93e797c09903d910f6f060e64",
      "parents": [
        "68c1692e3ea5d79f24cb5cc566c4a73939d13d25"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Jun 27 13:22:38 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 29 16:57:53 2006 -0700"
      },
      "message": "[NET]: Added GSO header verification\n\nWhen GSO packets come from an untrusted source (e.g., a Xen guest domain),\nwe need to verify the header integrity before passing it to the hardware.\n\nSince the first step in GSO is to verify the header, we can reuse that\ncode by adding a new bit to gso_type: SKB_GSO_DODGY.  Packets with this\nbit set can only be fed directly to devices with the corresponding bit\nNETIF_F_GSO_ROBUST.  If the device doesn\u0027t have that bit, then the skb\nis fed to the GSO engine which will allow the packet to be sent to the\nhardware if it passes the header check.\n\nThis patch changes the sg flag to a full features flag.  The same method\ncan be used to implement TSO ECN support.  We simply have to mark packets\nwith CWR set with SKB_GSO_ECN so that only hardware with a corresponding\nNETIF_F_TSO_ECN can accept them.  The GSO engine can either fully segment\nthe packet, or segment the first MTU and pass the rest to the hardware for\nfurther segmentation.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4c50d990dcf11a296679dc05de3873783236711",
      "tree": "f4daf1c80fe591d45631e998b0b5d31d6fe76d85",
      "parents": [
        "f6a78bfcb141f963187464bac838d46a81c3882a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Jun 22 03:02:40 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jun 23 02:07:33 2006 -0700"
      },
      "message": "[NET]: Add software TSOv4\n\nThis patch adds the GSO implementation for IPv4 TCP.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "951dbc8ac714b04c36296b8b5c36c8e036ce433f",
      "tree": "7f3599987f6b6db765f66c65d5c1cefe1457ea6a",
      "parents": [
        "16a6677fdf1d1194f688f8291b06fbaff248c353"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jan 06 23:02:34 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jan 07 12:57:29 2006 -0800"
      },
      "message": "[IPV6]: Move nextheader offset to the IP6CB\n\nMove nextheader offset to the IP6CB to make it possible to pass a\npacket to ip6_input_finish multiple times and have it skip already\nparsed headers. As a nice side effect this gets rid of the manual\nhopopts skipping in ip6_input_finish.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "90ddc4f0470427df306f308ad03db6b6b21644b8",
      "tree": "f97c1d57b25585394ebbd4b42b8d42a339f98644",
      "parents": [
        "77d76ea310b50a9c8ff15bd290fcb4ed4961adf2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Dec 22 12:49:22 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:15 2006 -0800"
      },
      "message": "[NET]: move struct proto_ops to const\n\nI noticed that some of \u0027struct proto_ops\u0027 used in the kernel may share\na cache line used by locks or other heavily modified data. (default\nlinker alignement is 32 bytes, and L1_CACHE_LINE is 64 or 128 at\nleast)\n\nThis patch makes sure a \u0027struct proto_ops\u0027 can be declared as const,\nso that all cpus can share all parts of it without false sharing.\n\nThis is not mandatory : a driver can still use a read/write structure\nif it needs to (and eventually a __read_mostly)\n\nI made a global stubstitute to change all existing occurences to make\nthem const.\n\nThis should reduce the possibility of false sharing on SMP, and\nspeedup some socket system calls.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d83d8461f902c672bc1bd8fbc6a94e19f092da97",
      "tree": "0534c553ab92baa2eb9dbb5bba64f2c4540b1e89",
      "parents": [
        "22712813620fa8e682dbfb253a60ca0131da1e07"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 13 23:26:10 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:58 2006 -0800"
      },
      "message": "[IP_SOCKGLUE]: Remove most of the tcp specific calls\n\nAs DCCP needs to be called in the same spots.\n\nNow we have a member in inet_sock (is_icsk), set at sock creation time from\nstruct inet_protosw-\u003eflags (if INET_PROTOSW_ICSK is set, like for TCP and\nDCCP) to see if a struct sock instance is a inet_connection_sock for places\nlike the ones in ip_sockglue.c (v4 and v6) where we previously were looking if\nsk_type was SOCK_STREAM, that is insufficient because we now use the same code\nfor DCCP, that has sk_type SOCK_DCCP.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\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"
    }
  ]
}
