)]}'
{
  "log": [
    {
      "commit": "1c10c49d83e2062b309cc88e8eb3abb05d397480",
      "tree": "e7b665a649e07f519c3be093717f1ba999a401b9",
      "parents": [
        "914e1c8b6980c516667375d3e55f0b6e674c8c58"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Mon Feb 16 00:08:56 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 16 00:08:56 2009 -0800"
      },
      "message": "net: replace commatas with semicolons\n\nImpact: syntax fix\n\nInterestingly enough this compiles w/o any complaints:\n\n\torphans \u003d percpu_counter_sum_positive(\u0026tcp_orphan_count),\n\tsockets \u003d percpu_counter_sum_positive(\u0026tcp_sockets_allocated),\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb4dea5853046727bfbb579f0c9a8cae7369f7c6",
      "tree": "79e18d6284494ab63a890885b0eecce9431a9597",
      "parents": [
        "0f23174aa8c1aa7a2a6050a72a60d290ef9ee578"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 29 23:04:08 2008 -0800"
      },
      "message": "net: Fix percpu counters deadlock\n\nWhen we converted the protocol atomic counters such as the orphan\ncount and the total socket count deadlocks were introduced due to\nthe mismatch in BH status of the spots that used the percpu counter\noperations.\n\nBased on the diagnosis and patch by Peter Zijlstra, this patch\nfixes these issues by disabling BH where we may be in process\ncontext.\n\nReported-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nTested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd24c00191d5e4a1ae896aafe33c6b8095ab4bd1",
      "tree": "e955c09e0b288e50c706b6ee409229d5a930c80c",
      "parents": [
        "1748376b6626acf59c24e9592ac67b3fe2a0e026"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Nov 25 21:17:14 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 21:17:14 2008 -0800"
      },
      "message": "net: Use a percpu_counter for orphan_count\n\nInstead of using one atomic_t per protocol, use a percpu_counter\nfor \"orphan_count\", to reduce cache line contention on\nheavy duty network servers. \n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1748376b6626acf59c24e9592ac67b3fe2a0e026",
      "tree": "65a28205daf1ca92e31389440764fc407365014e",
      "parents": [
        "c1b56878fb68e9c14070939ea4537ad4db79ffae"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 21:16:35 2008 -0800"
      },
      "message": "net: Use a percpu_counter for sockets_allocated\n\nInstead of using one atomic_t per protocol, use a percpu_counter\nfor \"sockets_allocated\", to reduce cache line contention on\nheavy duty network servers. \n\nNote : We revert commit (248969ae31e1b3276fc4399d67ce29a5d81e6fd9\nnet: af_unix can make unix_nr_socks visbile in /proc),\nsince it is not anymore used after sock_prot_inuse_add() addition\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "111cc8b913b42ef07793648b1699288332f273e1",
      "tree": "f74fb48630319113247b5ee0c660b24f2af160d9",
      "parents": [
        "92ee76b6d99bfcdab6162816c9025541ef7248eb"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Nov 24 21:27:22 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 24 21:27:22 2008 -0800"
      },
      "message": "tcp: add some mibs to track collapsing\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b971e7ac834e9f4bda96d5a96ae9abccd01c1dd8",
      "tree": "35c8712758f3113030da5e3a295fe9f8c4b70d25",
      "parents": [
        "013cd397532e5803a1625954a884d021653da720"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 10 21:43:08 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Nov 10 21:43:08 2008 -0800"
      },
      "message": "net: fix /proc/net/snmp as memory corruptor\n\nicmpmsg_put() can happily corrupt kernel memory, using a static\ntable and forgetting to reset an array index in a loop.\n\nRemove the static array since its not safe without proper locking.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "785957d3e8c6fb37b18bf671923a76dbd8240025",
      "tree": "59f089e4bd109ad9d896c6e6a0f1699f42a34136",
      "parents": [
        "8d50b53d66a8a6ae41bafbdcabe401467803f33a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:03:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 30 03:27:25 2008 -0700"
      },
      "message": "tcp: MD5: Use MIB counter instead of warning for MD5 mismatch.\n\nFrom a report by Matti Aarnio, and preliminary patch by Adam Langley.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b6fcbdb4f283f7ba67cec3cda6be23da8e959031",
      "tree": "45d72a4a5d0cce9ab2c98321f4d7d122bf982a55",
      "parents": [
        "de05c557b24c7dffc6d392e3db120cf11c9f6ae7"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:07:44 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:07:44 2008 -0700"
      },
      "message": "proc: consolidate per-net single-release callers\n\nThey are symmetrical to single_open ones :)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de05c557b24c7dffc6d392e3db120cf11c9f6ae7",
      "tree": "d1d6fe1323657afd7d416c6af8a62d6a9e1e1e66",
      "parents": [
        "60bdde95807e982a824be9cfdd35055cc721a88a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:07:21 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:07:21 2008 -0700"
      },
      "message": "proc: consolidate per-net single_open callers\n\nThere are already 7 of them - time to kill some duplicate code.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60bdde95807e982a824be9cfdd35055cc721a88a",
      "tree": "286bd367b687f9a1daddcc6b0fde2f2e8ef4c0ef",
      "parents": [
        "8e3461d01bdbc3dbf993448ed9ad4acaaeb6495d"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:06:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:06:50 2008 -0700"
      },
      "message": "proc: clean the ip_misc_proc_init and ip_proc_init_net error paths\n\nAfter all this stuff is moved outside, this function can look better.\n\nBesides, I tuned the error path in ip_proc_init_net to make it have\nonly 2 exit points, not 3.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e3461d01bdbc3dbf993448ed9ad4acaaeb6495d",
      "tree": "eac7757ba4bc96ce1ce1ba629b5ea6d4b81f6b20",
      "parents": [
        "229bf0cbaa054f1502ab4ee219f05985d2c838d1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:06:26 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:06:26 2008 -0700"
      },
      "message": "proc: show per-net ip_devconf.forwarding in /proc/net/snmp\n\nThis one has become per-net long ago, but the appropriate file\nis per-net only now.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "229bf0cbaa054f1502ab4ee219f05985d2c838d1",
      "tree": "7f542b1f5f3c249a66b7decd2ae22ae5067e97df",
      "parents": [
        "7b7a9dfdf6ccda647f54ea5fa3bd0ac17a189eeb"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:06:04 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:06:04 2008 -0700"
      },
      "message": "proc: create /proc/net/snmp file in each net\n\nAll the statistics shown in this file have been made per-net already.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7b7a9dfdf6ccda647f54ea5fa3bd0ac17a189eeb",
      "tree": "92ab52ffab8bfdc1f3697ff8d02c12a06a43d76c",
      "parents": [
        "d89cbbb1e69a3bfea38038fb058bd51013902ef3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:05:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:05:17 2008 -0700"
      },
      "message": "proc: create /proc/net/netstat file in each net\n\nNow all the shown in it statistics is netnsizated, time to\nshow it in appropriate net.\n\nThe appropriate net init/exit ops already exist - they make\nthe sockstat file per net - so just extend them.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "923c6586b0dc0a00df07a1608185437145a0c68b",
      "tree": "bbe3324b4ae8920a3a50e81e596c75db11cc9433",
      "parents": [
        "b60538a0d737609213e4b758881913498d3ff0b4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:04:22 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:04:22 2008 -0700"
      },
      "message": "mib: put icmpmsg statistics on struct net\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b60538a0d737609213e4b758881913498d3ff0b4",
      "tree": "380b75c744b9eb13b56fe386b58ddc2106686372",
      "parents": [
        "386019d3514b3ed9de8d0b05b67e638a7048375b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:04:02 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:04:02 2008 -0700"
      },
      "message": "mib: put icmp statistics on struct net\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "386019d3514b3ed9de8d0b05b67e638a7048375b",
      "tree": "6447cb5bfe73788abab98f4835b95af258bfeeff",
      "parents": [
        "2f275f91a438abd8eec5321798d66a4ffe6869fa"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:03:45 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:03:45 2008 -0700"
      },
      "message": "mib: put udplite statistics on struct net\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2f275f91a438abd8eec5321798d66a4ffe6869fa",
      "tree": "a14cc8f7112d2ba0dfe08e43577cab779b858ba6",
      "parents": [
        "61a7e26028b94805fd686a6dc9dbd9941f8f19b0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:03:27 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:03:27 2008 -0700"
      },
      "message": "mib: put udp statistics on struct net\n\nSimilar to... ouch, I repeat myself.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "61a7e26028b94805fd686a6dc9dbd9941f8f19b0",
      "tree": "2253a6f827a68ea5a7041456c5bfcac0d8e24138",
      "parents": [
        "a20f5799ca7ceb24d63c74b6fdad4b0c0ee91f4f"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:03:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:03:08 2008 -0700"
      },
      "message": "mib: put net statistics on struct net\n\nSimilar to ip and tcp ones :)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a20f5799ca7ceb24d63c74b6fdad4b0c0ee91f4f",
      "tree": "0262e4a674c611044d78c9f62f378473df0ce0f1",
      "parents": [
        "57ef42d59d1c1d79be59fc3c6380ae14234e38c3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:02:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:02:42 2008 -0700"
      },
      "message": "mib: put ip statistics on struct net\n\nSimilar to tcp one.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "57ef42d59d1c1d79be59fc3c6380ae14234e38c3",
      "tree": "4ccc2166f6967ac1fb582715f7d7d5bb5c9205fc",
      "parents": [
        "9b4661bd6e5437508e0920608f3213c23212cd1b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Jul 18 04:02:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 04:02:08 2008 -0700"
      },
      "message": "mib: put tcp statistics on struct net\n\nProc temporary uses stats from init_net.\n\nBTW, TCP_XXX_STATS are beautiful (w/o do { } while (0) facing) again :)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b040829952d84bf2a62526f0e24b624e0699447",
      "tree": "b2e836e7e64343f19b949e50099bbe2ea554ec30",
      "parents": [
        "573bf470e693f73a6ac437b17a64a10902ba54bf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jun 10 22:46:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 21:00:38 2008 -0700"
      },
      "message": "net: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd4e7b50455330403ed5b1060055f9d411ecdc57",
      "tree": "a5cd0e7156354f37f28569efc63a42de85c361b7",
      "parents": [
        "d0538ca3554a3985c09921903cf8f5e38fa56123"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Mar 31 19:43:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 31 19:43:18 2008 -0700"
      },
      "message": "[IPV4][NETNS]: Display per-net info in sockstat file.\n\nBesides, now we can see per-net fragments statistics in the\nsame file, since this stats is already per-net.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0538ca3554a3985c09921903cf8f5e38fa56123",
      "tree": "84fa02db2609be9b07ec14a6bd91da14726daea3",
      "parents": [
        "70ee115942be6ce52ff10e5e813fb4da82cdb25a"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Mar 31 19:42:37 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 31 19:42:37 2008 -0700"
      },
      "message": "[SOCK][NETNS]: Register sockstat(6) files in each net.\n\nCurrently they live in init_net only, but now almost all the info\nthey can provide is available per-net.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c29a0bc4dfc4d833eb702b1929cec96a3eeb9f7a",
      "tree": "4917ad0bd8979dcae34f626032b28e62b9e358fd",
      "parents": [
        "8efa6e93cb2666dceafc4844057fdcb9aa324fb7"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Mar 31 19:41:46 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 31 19:41:46 2008 -0700"
      },
      "message": "[SOCK][NETNS]: Add a struct net argument to sock_prot_inuse_add and _get.\n\nThis counter is about to become per-proto-and-per-net, so we\u0027ll need \ntwo arguments to determine which cell in this \"table\" to work with.\n\nAll the places, but proc already pass proper net to it - proc will be\ntuned a bit later.\n\nSome indentation with spaces in proc files is done to keep the file\ncoding style consistent.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "db8dac20d5199307dcfcf4e01dac4bda5edf9e89",
      "tree": "3694d1aee5c0014fb45eec045a67ca150ca1231f",
      "parents": [
        "ba0fa4599484b98dbb21d279fbfdb40e9c07d30d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 06 16:22:02 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 06 16:22:02 2008 -0800"
      },
      "message": "[UDP]: Revert udplite and code split.\n\nThis reverts commit db1ed684f6c430c4cdad67d058688b8a1b5e607c (\"[IPV6]\nUDP: Rename IPv6 UDP files.\"), commit\n8be8af8fa4405652e6c0797db5465a4be8afb998 (\"[IPV4] UDP: Move\nIPv4-specific bits to other file.\") and commit\ne898d4db2749c6052072e9bc4448e396cbdeb06a (\"[UDP]: Allow users to\nconfigure UDP-Lite.\").\n\nFirst, udplite is of such small cost, and it is a core protocol just\nlike TCP and normal UDP are.\n\nWe spent enormous amounts of effort to make udplite share as much code\nwith core UDP as possible.  All of that work is less valuable if we\u0027re\njust going to slap a config option on udplite support.\n\nIt is also causing build failures, as reported on linux-next, showing\nthat the changeset was not tested very well.  In fact, this is the\nsecond build failure resulting from the udplite change.\n\nFinally, the config options provided was a bool, instead of a modular\noption.  Meaning the udplite code does not even get build tested\nby allmodconfig builds, and furthermore the user is not presented\nwith a reasonable modular build option which is particularly needed\nby distribution vendors.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e898d4db2749c6052072e9bc4448e396cbdeb06a",
      "tree": "2b8673d85210a23e67d0817b18f401411e8936f3",
      "parents": [
        "c6aefafb7ec620911d46174eed514f9df639e5a4"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Sat Mar 01 01:06:47 2008 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 04 15:18:22 2008 +0900"
      },
      "message": "[UDP]: Allow users to configure UDP-Lite.\n\nLet\u0027s give users an option for disabling UDP-Lite (~4K).\n\nold:\n|    text\t   data\t    bss\t    dec\t    hex\tfilename\n|  286498\t  12432\t   6072\t 305002\t  4a76a\tnet/ipv4/built-in.o\n|  193830\t   8192\t   3204\t 205226\t  321aa\tnet/ipv6/ipv6.o\n\nnew (without UDP-Lite):\n|    text\t   data\t    bss\t    dec\t    hex\tfilename\n|  284086\t  12136\t   5432\t 301654\t  49a56\tnet/ipv4/built-in.o\n|  191835\t   7832\t   3076\t 202743\t  317f7\tnet/ipv6/ipv6.o\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "6ddc082223ef0f73717b4133fa7e648842bbfd02",
      "tree": "62315ac04e396bc6e68543502fb6aeec50be6662",
      "parents": [
        "e5a2bb842cd9681d00d4ca963e63e4d3647e66f8"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Tue Jan 22 06:07:25 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:10:36 2008 -0800"
      },
      "message": "[NETNS][FRAGS]: Make the mem counter per-namespace.\n\nThis is also simple, but introduces more changes, since\nthen mem counter is altered in more places.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5a2bb842cd9681d00d4ca963e63e4d3647e66f8",
      "tree": "b47692f3312039cb944f68f6fbeb0d10442f8056",
      "parents": [
        "ac18e7509e7df327e30d6e073a787d922eaf211d"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Tue Jan 22 06:06:23 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:10:35 2008 -0800"
      },
      "message": "[NETNS][FRAGS]: Make the nqueues counter per-namespace.\n\nThis is simple - just move the variable from struct inet_frags\nto struct netns_frags and adjust the usage appropriately.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65f7651788e18fadb2fbb7276af935d7871e1803",
      "tree": "dcad32d4344d6d11d80061773d9d1dbc9ae92223",
      "parents": [
        "571e7682026fd0e25833d103a3eeb74be29bf199"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Jan 03 20:46:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:36 2008 -0800"
      },
      "message": "[NET]: prot_inuse cleanups and optimizations\n\n1) Cleanups (all functions are prefixed by sock_prot_inuse)\n\nsock_prot_inc_use(prot) -\u003e sock_prot_inuse_add(prot,-1)\nsock_prot_dec_use(prot) -\u003e sock_prot_inuse_add(prot,-1)\nsock_prot_inuse()       -\u003e sock_prot_inuse_get()\n\nNew functions :\n\nsock_prot_inuse_init() and sock_prot_inuse_free() to abstract pcounter use.\n\n2) if CONFIG_PROC_FS\u003dn, we can zap \u0027inuse\u0027 member from \"struct proto\",\nsince nobody wants to read the inuse value.\n\nThis saves 1372 bytes on i386/SMP and some cpu cycles.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95766fff6b9a78d11fc2d3812dd035381690b55d",
      "tree": "c1ec9386a3d9a76a9f74bd230d3e7d4ee8059c51",
      "parents": [
        "3ab224be6d69de912ee21302745ea45a99274dbc"
      ],
      "author": {
        "name": "Hideo Aoki",
        "email": "haoki@redhat.com",
        "time": "Mon Dec 31 00:29:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:00:19 2008 -0800"
      },
      "message": "[UDP]: Add memory accounting.\n\nSigned-off-by: Takahiro Yasui \u003ctyasui@redhat.com\u003e\nSigned-off-by: Hideo Aoki \u003chaoki@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "586f12115264b767ea6a48ce081ca25a39c1e3dd",
      "tree": "48bb41f07d4dc2a1e0d9f9d71286594d3b9800fa",
      "parents": [
        "9355bbd685bf705a7f7bd6470b92ca0562c7a661"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sun Dec 16 13:32:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:58:12 2008 -0800"
      },
      "message": "[IPV4]: Switch users of ipv4_devconf(_all) to use the pernet one\n\nThese are scattered over the code, but almost all the\n\"critical\" places already have the proper struct net\nat hand except for snmp proc showing function and routing\nrtnl handler.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "286ab3d46058840d68e5d7d52e316c1f7e98c59f",
      "tree": "1d70e7895c49d2b148e026aa047efe186697fff9",
      "parents": [
        "91781004b9c029ee55b7aa9ef950a373ba865dc6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 05 23:38:39 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 07 04:08:57 2007 -0800"
      },
      "message": "[NET]: Define infrastructure to keep \u0027inuse\u0027 changes in an efficent SMP/NUMA way.\n\n\"struct proto\" currently uses an array stats[NR_CPUS] to track change on\n\u0027inuse\u0027 sockets per protocol.\n\nIf NR_CPUS is big, this means we use a big memory area for this.\nMoreover, all this memory area is located on a single node on NUMA\nmachines, increasing memory pressure on the boot node.\n\nIn this patch, I tried to :\n\n- Keep a fast !CONFIG_SMP implementation\n- Keep a fast CONFIG_SMP implementation for often used protocols\n(tcp,udp,raw,...)\n- Introduce a NUMA efficient implementation\n\nSome helper macros are defined in include/net/sock.h\nThese macros take into account CONFIG_SMP\n\nIf a \"struct proto\" is declared without using DEFINE_PROTO_INUSE /\nREF_PROTO_INUSE\nmacros, it will automatically use a default implementation, using a\ndynamically allocated percpu zone.\nThis default implementation will be NUMA efficient, but might use 32/64\nbytes per possible cpu\nbecause of current alloc_percpu() implementation.\nHowever it still should be better than previous implementation based on\nstats[NR_CPUS] field.\n\nWhen a \"struct proto\" is changed to use the new macros, we use a single\nstatic \"int\" percpu variable,\nlowering the memory and cpu costs, still preserving NUMA efficiency.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "064f3605be6b9b77151274f60693843cabaa09ec",
      "tree": "d3d3a843f1905650645196dce5bab8724adb19d2",
      "parents": [
        "bf3c23d171e35e6e168074a1514b0acd59cfd81a"
      ],
      "author": {
        "name": "Mitsuru Chinen",
        "email": "mitch@linux.vnet.ibm.com",
        "time": "Mon Oct 29 22:02:57 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 29 22:37:36 2007 -0700"
      },
      "message": "[IPv4] SNMP: Refer correct memory location to display ICMP out-going statistics\n\nWhile displaying ICMP out-going statistics as Out\u003cname\u003e counters in\n/proc/net/snmp, the memory location for ICMP in-coming statistics\nwas referred by mistake.\n\nSigned-off-by: Mitsuru Chinen \u003cmitch@linux.vnet.ibm.com\u003e\nAcked-by: David L Stevens \u003cdlstevens@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8a6911b12f7a835055f3236c6cf7073f79ba0730",
      "tree": "9268aeb1f421ba53f1bf6e26b3e8ed73b96139f8",
      "parents": [
        "a60387ba3114fe087349df23fa82e5ad9d5b6ff2"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Oct 25 18:40:05 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Oct 25 18:40:05 2007 -0700"
      },
      "message": "[IPV4]: Remove no longer used snmp4_icmp_list.\n\nThis was obsoleted by a previous change, but the removal was\nforgotten.\n\nReported by David Howells and David Stevens.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7eb95156d9dce2f59794264db336ce007d71638b",
      "tree": "c283a095f1a9d530edb1a7058454ba30b4f7d028",
      "parents": [
        "5ab11c98d3a950faf6922b6166e5f8fc874590e7"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Oct 15 02:31:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 15 12:26:39 2007 -0700"
      },
      "message": "[INET]: Collect frag queues management objects together\n\nThere are some objects that are common in all the places\nwhich are used to keep track of frag queues, they are:\n\n * hash table\n * LRU list\n * rw lock\n * rnd number for hash function\n * the number of queues\n * the amount of memory occupied by queues\n * secret timer\n\nMove all this stuff into one structure (struct inet_frags)\nto make it possible use them uniformly in the future. Like\nwith the previous patch this mostly consists of hunks like\n\n-    write_lock(\u0026ipfrag_lock);\n+    write_lock(\u0026ip4_frags.lock);\n\nTo address the issue with exporting the number of queues and\nthe amount of memory occupied by queues outside the .c file\nthey are declared in, I introduce a couple of helpers.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cfcabdcc2d5a810208e5bb3974121b7ed60119aa",
      "tree": "1aed711eeecc5a303b57f1fc47e1b5746e8a72c2",
      "parents": [
        "de83c058af25aa97ed4864abab11e90e8dead6e2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Tue Oct 09 01:59:42 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:54:48 2007 -0700"
      },
      "message": "[NET]: sparse warning fixes\n\nFix a bunch of sparse warnings. Mostly about 0 used as\nNULL pointer, and shadowed variable declarations.\nOne notable case was that hash size should have been unsigned.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "912d8f0b1f17b7e851ebbfeb17a16de9f9c7cb88",
      "tree": "176cf4f23aaae9790d947579473da1f8d349a942",
      "parents": [
        "93e680202929802558f783fbd96c41697ae65472"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Tue Sep 25 22:47:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:52:39 2007 -0700"
      },
      "message": "[TCP] MIB: Count FRTO\u0027s successfully detected spurious RTOs\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "96793b482540f3a26e2188eaf75cb56b7829d3e3",
      "tree": "3dfc2871b69cc358ed55dc2adc3bfeef47382cb3",
      "parents": [
        "14878f75abd5bf1d38becb405801cd491ee215dc"
      ],
      "author": {
        "name": "David L Stevens",
        "email": "dlstevens@us.ibm.com",
        "time": "Mon Sep 17 09:57:33 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:28 2007 -0700"
      },
      "message": "[IPV4]: Add ICMPMsgStats MIB (RFC 4293)\n\nBackground: RFC 4293 deprecates existing individual, named ICMP\ntype counters to be replaced with the ICMPMsgStatsTable. This table\nincludes entries for both IPv4 and IPv6, and requires counting of all\nICMP types, whether or not the machine implements the type.\n\nThese patches \"remove\" (but not really) the existing counters, and\nreplace them with the ICMPMsgStats tables for v4 and v6.\nIt includes the named counters in the /proc places they were, but gets the\nvalues for them from the new tables. It also counts packets generated\nfrom raw socket output (e.g., OutEchoes, MLD queries, RA\u0027s from\nradvd, etc).\n\nChanges:\n1) create icmpmsg_statistics mib\n2) create icmpv6msg_statistics mib\n3) modify existing counters to use these\n4) modify /proc/net/snmp to add \"IcmpMsg\" with all ICMP types\n        listed by number for easy SNMP parsing\n5) modify /proc/net/snmp printing for \"Icmp\" to get the named data\n        from new counters.\n\nSigned-off-by: David L Stevens \u003cdlstevens@us.ibm.com\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": "18f02545a9a16c9a89778b91a162ad16d510bb32",
      "tree": "2b1c67a8168b695630d26216b7dd3be17179ca5c",
      "parents": [
        "5b3c98821a8753239aefc1c217409aa3e5c90787"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Aug 24 22:55:52 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:48:30 2007 -0700"
      },
      "message": "[TCP] MIB: Add counters for discarded SACK blocks\n\nIn DSACK case, some events are not extraordinary, such as packet\nduplication generated DSACK. They can arrive easily below\nsnd_una when undo_marker is not set (TCP being in CA_Open),\ncounting such DSACKs amoung SACK discards will likely just\nmislead if they occur in some scenario when there are other\nproblems as well. Similarly, excessively delayed packets could\ncause \"normal\" DSACKs. Therefore, separate counters are\nallocated for DSACK events.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "42f811b8bcdf6695bf74de580b1daf53445e8949",
      "tree": "c7c9dd321c63eb24c5d41488b47b7178c6c9b572",
      "parents": [
        "8d76527e728d00d1cf9d5dd663caffb2dcf05ae6"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Jun 04 23:34:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Jun 07 13:39:13 2007 -0700"
      },
      "message": "[IPV4]: Convert IPv4 devconf to an array\n\nThis patch converts the ipv4_devconf config members (everything except\nsysctl) to an array.  This allows easier manipulation which will be\nneeded later on to provide better management of default config values.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d831666e98b4f1e19ebdd2349735f47bf37cd293",
      "tree": "5e4777090c6c2189b6fe945de174f4b3d82091d9",
      "parents": [
        "ae7bf20a6316272acfcaef5d265b18aaa54b41e4"
      ],
      "author": {
        "name": "Mitsuru Chinen",
        "email": "mitch@linux.vnet.ibm.com",
        "time": "Mon May 14 03:07:30 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 14 03:07:30 2007 -0700"
      },
      "message": "[IPV4] SNMP: Display new statistics at /proc/net/netstat\n\nThis displays the statistics specified in the updated IP-MIB RFC\n(RFC4293) in /proc/net/netstat. The reason why these are not displayed\nin /proc/net/snmp is that some existing utilities are developed under\nthe assumption which ipstat items in /proc/net/snmp is unchanged.\n\nSigned-off-by: Mitsuru Chinen \u003cmitch@linux.vnet.ibm.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5e0f04351d11e07a23b5ab4914282cbb78027e50",
      "tree": "271fbed72ec607ecb8f7574a3b450aee1b0c8186",
      "parents": [
        "bb7ec6dfb5aa32b5b4d7d6388b4098b33cd01e8c"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Apr 24 21:53:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:29:51 2007 -0700"
      },
      "message": "[IPV4]: Consolidate common SNMP code\n\nThis patch moves the SNMP code shared between IPv4/IPv6 from proc.c\ninto net/ipv4/af_inet.c.  This makes sense because these functions\naren\u0027t specific to /proc.\n\nAs a result we can again skip proc.o if /proc is disabled.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb7ec6dfb5aa32b5b4d7d6388b4098b33cd01e8c",
      "tree": "49d06e7bfd6737bfa7dd36e508201d1ccf82a369",
      "parents": [
        "84299b3bc4eaedc0734fcc9052b01291e44445fc"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Apr 24 16:22:42 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:29:50 2007 -0700"
      },
      "message": "[IPV4]: Fix build without procfs.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "334901700f9f58993ebd7f6136d3f9062460d34d",
      "tree": "af1887c408d6757debd73d2e56d45039943e413b",
      "parents": [
        "49ed67a9eee3c756263feed4474e4fcf5c8eaed2"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Apr 20 15:57:15 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:29:12 2007 -0700"
      },
      "message": "[IPV4] SNMP: Move some statistic bits to net/ipv4/proc.c.\n\nThis also fixes memory leak in error path.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9a32144e9d7b4e21341174b1a83b82a82353be86",
      "tree": "6f08560b341418fc9934f56f6162a95f5b5d8aec",
      "parents": [
        "00977a59b951207d38380c75f03a36829950265c"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 7\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\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": "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": "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": "6f912042256c12b0927438122594f5379b364f5d",
      "tree": "c11949814057b356d5896e7f025ec15132dbff78",
      "parents": [
        "dd7ba3b8b15f9c65366986d723ae83254d8d78b7"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Apr 10 22:52:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:31 2006 -0700"
      },
      "message": "[PATCH] for_each_possible_cpu: network codes\n\nfor_each_cpu() actually iterates across all possible CPUs.  We\u0027ve had mistakes\nin the past where people were using for_each_cpu() where they should have been\niterating across only online or present CPUs.  This is inefficient and\npossibly buggy.\n\nWe\u0027re renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the\nfuture.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu under /net\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88a2a4ac6b671a4b0dd5d2d762418904c05f4104",
      "tree": "8c30052a0d7fadec37c785a42a71b28d0a9c5fcf",
      "parents": [
        "cef5076987dd545ac74f4efcf1c962be8eac34b0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Feb 04 23:27:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:51 2006 -0800"
      },
      "message": "[PATCH] percpu data: only iterate over possible CPUs\n\npercpu_data blindly allocates bootmem memory to store NR_CPUS instances of\ncpudata, instead of allocating memory only for possible cpus.\n\nAs a preparation for changing that, we need to convert various 0 -\u003e NR_CPUS\nloops to use for_each_cpu().\n\n(The above only applies to users of asm-generic/percpu.h.  powerpc has gone it\nalone and is presently only allocating memory for present CPUs, so it\u0027s\ncurrently corrupting memory).\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: William Irwin \u003cwli@holomorphy.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\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": "9b5b5cff9a6655dbb6d2e2be365bb95eec3950eb",
      "tree": "80517910c731fc48512ba9c31aa823575db405b3",
      "parents": [
        "fb29644994744a63bc57186cefa79534b5d9b5a9"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Tue Nov 29 16:21:38 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 29 16:21:38 2005 -0800"
      },
      "message": "[NET]: Add const markers to various variables.\n\nthe patch below marks various variables const in net/; the goal is to\nmove them to the .rodata section so that they can\u0027t false-share\ncachelines with things that get written to, as well as potentially\nhelping gcc a bit with optimisations.  (these were found using a gcc\npatch to warn about such variables)\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "670c02c2bfd2c8a305a90f5285409a7b0a8fd630",
      "tree": "a6e7d773d72e2716bf675dbb2679e8ada21b4e21",
      "parents": [
        "900e0143a575406146ac531fcb91790f166ce52f"
      ],
      "author": {
        "name": "John Hawkes",
        "email": "hawkes@sgi.com",
        "time": "Thu Oct 13 09:30:31 2005 -0700"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Oct 25 23:54:01 2005 -0200"
      },
      "message": "[NET]: Wider use of for_each_*cpu()\n\nIn \u0027net\u0027 change the explicit use of for-loops and NR_CPUS into the\ngeneral for_each_cpu() or for_each_online_cpu() constructs, as\nappropriate.  This widens the scope of potential future optimizations\nof the general constructs, as well as takes advantage of the existing\noptimizations of first_cpu() and next_cpu(), which is advantageous\nwhen the true CPU count is much smaller than NR_CPUS.\n\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "295ff7edb8f72b77d524759266f7524deae379b3",
      "tree": "e16e99e324444fb01ae3dfd221b5d47a88acfeb8",
      "parents": [
        "0b4e03bf0bc43ad6250a1e2fa25fc3eb2b028977"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 09 20:44:40 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:55:48 2005 -0700"
      },
      "message": "[TIMEWAIT]: Introduce inet_timewait_death_row\n\nThat groups all of the tables and variables associated to the TCP timewait\nschedulling/recycling/killing code, that now can be isolated from the TCP\nspecific code and used by other transport protocols, such as DCCP.\n\nNext changeset will move this code to net/ipv4/inet_timewait_sock.c\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"
    }
  ]
}
