)]}'
{
  "log": [
    {
      "commit": "2aaef4e47fef8a6c0bc7fc5d9d3eea4af290e04c",
      "tree": "c78dfe5a76f1c19cf1167b94d623feed3f4cc9d5",
      "parents": [
        "a0a53c8ba95451feef6c1975016f0a1eb3044ad4"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Dec 11 04:19:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:15 2008 -0800"
      },
      "message": "[NETNS]: separate af_packet netns data\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0a53c8ba95451feef6c1975016f0a1eb3044ad4",
      "tree": "0b64ce018878cbaa0bf5cdfa308d4a7e71218914",
      "parents": [
        "27147c9e6e8316af91dea487aa2c14b18dcff4cf"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Dec 11 04:19:17 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:14 2008 -0800"
      },
      "message": "[NETNS]: struct net content re-work (v3)\n\nRecently David Miller and Herbert Xu pointed out that struct net becomes\noverbloated and un-maintainable. There are two solutions:\n- provide a pointer to a network subsystem definition from struct net.\n  This costs an additional dereferrence\n- place sub-system definition into the structure itself. This will speedup\n  run-time access at the cost of recompilation time\n\nThe second approach looks better for us. Other sub-systems will follow.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27147c9e6e8316af91dea487aa2c14b18dcff4cf",
      "tree": "d7f494a12434664d52ba6a17693a70ae7fa38576",
      "parents": [
        "7f4e4868f3ce0e946f116c28fa4fe033be5e4ba9"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Dec 11 04:18:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:13 2008 -0800"
      },
      "message": "[AF_UNIX]: Remove unused declaration of sysctl_unix_max_dgram_qlen.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7f4e4868f3ce0e946f116c28fa4fe033be5e4ba9",
      "tree": "144add1d4c94a145f7e048a17d91b563f5e6e265",
      "parents": [
        "87c3efbfdd1f98af14a1f60ff19f73d9a8d8da98"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Dec 11 02:25:35 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:13 2008 -0800"
      },
      "message": "[IPV6]: make the protocol initialization to return an error code\n\nThis patchset makes the different protocols to return an error code, so\nthe af_inet6 module can check the initialization was correct or not.\n\nThe raw6 was taken into account to be consistent with the rest of the\nprotocols, but the registration is at the same place.\nBecause the raw6 has its own init function, the proto and the ops structure\ncan be moved inside the raw6.c file.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\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": "853cbbaaa4ccdf221be5ab6afe967aa9998546b7",
      "tree": "6b6ff0b340fcff4054c919092fbbadce82dff36c",
      "parents": [
        "248b238dc960a42aa235057ba0a51a98ae2b0f0d"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Dec 11 02:24:29 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:11 2008 -0800"
      },
      "message": "[IPV6]: make frag to return an error at initialization\n\nThis patch makes the frag_init to return an error code, so the af_inet6\nmodule can handle the error.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "248b238dc960a42aa235057ba0a51a98ae2b0f0d",
      "tree": "0c655bde3e6a9ad24491fe3ec4edaba1bf9053f2",
      "parents": [
        "0a3e78ac2c555441f5bc00588070058533bc8d6b"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Dec 11 02:23:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:10 2008 -0800"
      },
      "message": "[IPV6]: make extended headers to return an error at initialization\n\nThis patch factorize the code for the differents init functions for rthdr,\nnodata, destopt in a single function exthdrs_init.\nThis function returns an error so the af_inet6 module can check correctly\nthe initialization.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0a3e78ac2c555441f5bc00588070058533bc8d6b",
      "tree": "c5d406c1ea39ae256bc682e5d824682e0a6f6d56",
      "parents": [
        "51602b2a5e849babd94311e555bf1ba58151b8d4"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Tue Dec 11 02:23:18 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:10 2008 -0800"
      },
      "message": "[IPV6]: make flowlabel to return an error\n\nThis patch makes the flowlab subsystem to return an error code and makes\nsome cleanup with procfs ifdefs.\nThe af_inet6 will use the flowlabel init return code to check the initialization\nwas correct.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "01ecfe9ba63aa0f23bbdb15371916ba4d5382330",
      "tree": "28563d727df9590b18a992ebace476d927070b51",
      "parents": [
        "95c9382a345262637d3e5c7da5f09f0f46daa930"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Tue Dec 11 02:16:47 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:08 2008 -0800"
      },
      "message": "[IPV4]: Cleanup IN_DEV_MFORWARD macro\n\nThis is essentially IN_DEV_ANDCONF with proper arguments.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "005011211f559113686938c2c252b8ee1ab855b5",
      "tree": "a126bc8cbbfa9a263e06cc517fe3c1ae6f31af59",
      "parents": [
        "385ac2e3f226c09cb71733df1899658e33a7850f"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Dec 11 01:53:43 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:05 2008 -0800"
      },
      "message": "[IPSEC]: Add xfrm_input_state helper\n\nThis patch adds the xfrm_input_state helper function which returns the\ncurrent xfrm state being processed on the input path given an sk_buff.\nThis is currently only used by xfrm_input but will be used by ESP upon\nasynchronous resumption.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c69bce20dda7f79160856a338298d65a284ba303",
      "tree": "0a07716410f323aa716b0dfa3607070fa6d3fd8d",
      "parents": [
        "971b893e79db0f7dccfcea15dbdebca3ca64a84d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Jan 23 22:31:45 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:02 2008 -0800"
      },
      "message": "[NET]: Remove unused \"mibalign\" argument for snmp_mib_init().\n\nWith fixes from Arnaldo Carvalho de Melo.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "971b893e79db0f7dccfcea15dbdebca3ca64a84d",
      "tree": "e04d0a7c05aec59f1eb2253e7e73d0bdc2f8aed8",
      "parents": [
        "a2bbe6822f8928e254452765c07cb863633113b8"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sat Dec 08 00:32:23 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:01 2008 -0800"
      },
      "message": "[IPV4]: last default route is a fib table property\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7e5449c21562f1554d2c355db1ec9d3e4f434288",
      "tree": "96e0eede0ade3339b6d4e202f77e4eecf658da4b",
      "parents": [
        "c35b7e72cd48bc7163b6900fb3689fa54b572bba"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Sat Dec 08 00:14:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:59 2008 -0800"
      },
      "message": "[IPV6]: route6 remove ifdef for fib_rules\n\nThe patch defines the usual static inline functions when the code is\ndisabled for fib6_rules. That\u0027s allow to remove some ifdef in route.c\nfile and make the code a little more clear.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c35b7e72cd48bc7163b6900fb3689fa54b572bba",
      "tree": "28e1386d9c0a7522e40d6d77b2c912f88f0e8a36",
      "parents": [
        "75314fb38364c81a573cd222f74d792409a7afba"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Sat Dec 08 00:14:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:59 2008 -0800"
      },
      "message": "[IPV6]: remove ifdef in route6 for xfrm6\n\nThe following patch create the usual static inline functions to disable\nthe xfrm6_init and xfrm6_fini function when XFRM is off.\nThat\u0027s allow to remove some ifdef and make the code a little more clear.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b8e1f9b5c37e77cc8f978a58859b35fe5edd5542",
      "tree": "3c39da61f10eeb8b8e200ec68770128f1b57f25d",
      "parents": [
        "790a35328991b01181ff5624bdb084053b6fac54"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 08 00:12:33 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:57 2008 -0800"
      },
      "message": "[NET] sysctl: make sysctl_somaxconn per-namespace\n\nJust move the variable on the struct net and adjust\nits usage.\n\nOthers sysctls from sys.net.core table are more\ndifficult to virtualize (i.e. make them per-namespace),\nbut I\u0027ll look at them as well a bit later.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@oenvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "024626e36d75fc8c6e32d50d4c68bfc3b8df5fdf",
      "tree": "ada6c8c215a5c4fa57e9e34f3b139609b95b2c5f",
      "parents": [
        "cbbb90e68cd073b8d63b491166066e347902b7e9"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 08 00:09:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:56 2008 -0800"
      },
      "message": "[NET] sysctl: make the sys.net.core sysctls per-namespace\n\nMaking them per-namespace is required for the following\ntwo reasons:\n\n First, some ctl values have a per-namespace meaning.\n Second, making them writable from the sub-namespace\n is an isolation hole.\n\nSo I introduce the pernet operations to create these\ntables. For init_net I use the existing statically\ndeclared tables, for sub-namespace they are duplicated\nand the write bits are removed from the mode.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cbbb90e68cd073b8d63b491166066e347902b7e9",
      "tree": "eabca27e8863d9f7ad9f258e0ffa75791affd404",
      "parents": [
        "b5e78337b50c0f3adda7faadb92f62bbdd5ffb56"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Dec 07 23:56:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:55 2008 -0800"
      },
      "message": "[SNMP]: Remove unused devconf macros.\n\nThe SNMP_INC_STATS_OFFSET_BH is used only by ICMP6_INC_STATS_OFFSET_BH.\nThe ICMP6_INC_STATS_OFFSET_BH is unused.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb803175865dd030420eebbc87298414c7725019",
      "tree": "7419c6c86b91c3543f7cafe0bdd33abd9bb98281",
      "parents": [
        "f845ab6b7dd872d027c27146c264e46bc16c656a"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Dec 07 00:46:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:49 2008 -0800"
      },
      "message": "[IPV4]: Remove ip_fib_local_table and ip_fib_main_table defines.\n\nThere are only 2 users and it doesn\u0027t hurt to call fib_get_table\ninstead, and it makes it easier to make the fib network namespace\naware.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "433d49c3bb14b8a2351fe97df8359e4ad0de4c7c",
      "tree": "76f478e8eca70520b809dc9d5684b47d3eb615f2",
      "parents": [
        "9eb87f3f7e0686a256c5bb4f886dede0171245f2"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Dec 07 00:43:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:47 2008 -0800"
      },
      "message": "[IPV6]: Make ip6_route_init to return an error code.\n\nThe route initialization function does not return any value to notify\nif the initialization is successful or not. This patch checks all\ncalls made for the initilization in order to return a value for the\ncaller.\n\nUnfortunately, proc_net_fops_create will return a NULL pointer if\nCONFIG_PROC_FS is off, so we can not check the return code without an\nifdef CONFIG_PROC_FS block in the ip6_route_init function.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9eb87f3f7e0686a256c5bb4f886dede0171245f2",
      "tree": "64ca735755b0c5a70eec1cfda0a3ebef5a31c419",
      "parents": [
        "0013cabab30ec55830ce63d34c0bdd887eb87644"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Dec 07 00:42:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:46 2008 -0800"
      },
      "message": "[IPV6]: Make fib6_rules_init to return an error code.\n\nWhen the fib_rules initialization finished, no return code is provided\nso there is no way to know, for the caller, if the initialization has\nbeen successful or has failed. This patch fix that.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0013cabab30ec55830ce63d34c0bdd887eb87644",
      "tree": "667338ce7d2e2b859f1a0fd8d268622da471fe08",
      "parents": [
        "d63bddbe90c4fd924b2155ca92a879393d856170"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Dec 07 00:42:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:45 2008 -0800"
      },
      "message": "[IPV6]: Make xfrm6_init to return an error code.\n\nThe xfrm initialization function does not return any error code, so if\nthere is an error, the caller can not be advise of that.  This patch\nchecks the return code of the different called functions in order to\nreturn a successful or failed initialization.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d63bddbe90c4fd924b2155ca92a879393d856170",
      "tree": "223d80eca0d44a057b160ddbb229103c27b3e76f",
      "parents": [
        "5a3e55d68ec5baac578bf32ba67607088c763657"
      ],
      "author": {
        "name": "Daniel Lezcano",
        "email": "dlezcano@fr.ibm.com",
        "time": "Fri Dec 07 00:40:34 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:45 2008 -0800"
      },
      "message": "[IPV6]: Make fib6_init to return an error code.\n\nIf there is an error in the initialization function, nothing is\nfollowed up to the caller. So I add a return value to be set for the\ninit function.\n\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f4d900a2cae94256f56be7769734100c7054bf00",
      "tree": "3991508447452b737d11769c5e1a8799812243bb",
      "parents": [
        "a59322be07c964e916d15be3df473fb7ba20c41e"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 03:31:53 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:34 2008 -0800"
      },
      "message": "[NETLINK]: Mark attribute construction exception unlikely\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a59322be07c964e916d15be3df473fb7ba20c41e",
      "tree": "16d4caa41c1fd6c3fb907ce792202b157e6c9a1e",
      "parents": [
        "1781f7f5804e52ee2d35328b129602146a8d8254"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Dec 05 01:53:40 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:34 2008 -0800"
      },
      "message": "[UDP]: Only increment counter on first peek/recv\n\nThe previous move of the the UDP inDatagrams counter caused each\npeek of the same packet to be counted separately.  This may be\nundesirable.\n\nThis patch fixes this by adding a bit to sk_buff to record whether\nthis packet has already been seen through skb_recv_datagram.  We\nthen only increment the counter when the packet is seen for the\nfirst time.\n\nThe only dodgy part is the fact that skb_recv_datagram doesn\u0027t have\na good way of returning this new bit of information.  So I\u0027ve added\na new function __skb_recv_datagram that does return this and made\nskb_recv_datagram a wrapper around it.\n\nThe plan is to eventually replace all uses of skb_recv_datagram with\nthis new function at which time it can be renamed its proper name.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1781f7f5804e52ee2d35328b129602146a8d8254",
      "tree": "dc67102f480e59d87859c50392452be4f41487bd",
      "parents": [
        "27ab2568649d5ba6c5a20212079b7c4f6da4ca0d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Dec 11 11:30:32 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:33 2008 -0800"
      },
      "message": "[UDP]: Restore missing inDatagrams increments\n\nThe previous move of the the UDP inDatagrams counter caused the\ncounting of encapsulated packets, SUNRPC data (as opposed to call)\npackets and RXRPC packets to go missing.\n\nThis patch restores all of these.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27ab2568649d5ba6c5a20212079b7c4f6da4ca0d",
      "tree": "19bb85e73d7deb0adf40386af3117c2f397b653d",
      "parents": [
        "c8fecf2242a0ab7230210665986b8ef915e1ae9e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Dec 05 01:51:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:32 2008 -0800"
      },
      "message": "[UDP]: Avoid repeated counting of checksum errors due to peeking\n\nCurrently it is possible for two processes to peek on the same socket\nand end up incrementing the error counter twice for the same packet.\n\nThis patch fixes it by making skb_kill_datagram return whether it\nsucceeded in unlinking the packet and only incrementing the counter\nif it did.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68dd299bc84dede6aef32e6f4777a676314f5d21",
      "tree": "665132d14a68b3d5676b3fc87424c8be79c28487",
      "parents": [
        "4d43b78ac27ca50fe42718192ac7c80474417389"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:44:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:31 2008 -0800"
      },
      "message": "[INET]: Merge sys.net.ipv4.ip_forward and sys.net.ipv4.conf.all.forwarding\n\nAFAIS these two entries should do the same thing - change the\nforwarding state on ipv4_devconf and on all the devices.\n\nI propose to merge the handlers together using ctl paths.\n\nThe inet_forward_change() is static after this and I move\nit higher to be closer to other \"propagation\" helpers and\nto avoid diff making patches based on { and } matching :)\ni.e. - make them easier to read.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "08913681e484f3f0db949dd0809012e089846216",
      "tree": "5fd37f75f1de49d21fb49bb4e51f2bd4f1dcf849",
      "parents": [
        "36f0bebd9865dc7e327777fca34b75e65cbfd1a6"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:42:49 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:29 2008 -0800"
      },
      "message": "[NET]: Remove the empty net_table\n\nI have removed all the entries from this table (core_table,\nipv4_table and tr_table), so now we can safely drop it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36f0bebd9865dc7e327777fca34b75e65cbfd1a6",
      "tree": "394626193facaaa5dd86e284617c74fb6c8a0494",
      "parents": [
        "3e37c3f9978839d91188e4ca0cc662a7245f28e4"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Jan 24 17:04:49 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:28 2008 -0800"
      },
      "message": "[TR]: Use ctl paths to register net/token-ring/ table\n\nThe same thing for token-ring - use ctl paths and get\nrid of external references on the tr_table.\n\nUnfortunately, I couldn\u0027t split this patch into cleanup and\nuse-the-paths parts.\n\nAs a lame excuse I can say, that the cleanup is just moving\nthe tr_table from one file to another - closet to a single\nvariable, that this ctl table tunes. Since the source  file\nbecomes empty after the move, I remove it.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3e37c3f9978839d91188e4ca0cc662a7245f28e4",
      "tree": "56574ce30de6f52e2d476b1a3a9993a380edcec6",
      "parents": [
        "9ba639797606acbcd97be886f41fbce163914e7b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:41:26 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:27 2008 -0800"
      },
      "message": "[IPV4]: Use ctl paths to register net/ipv4/ table\n\nThis is the same as I did for the net/core/ table in the\nsecond patch in his series: use the paths and isolate the\nwhole table in the .c file.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "33eb9cfc700ae9ce621d47d6ca6d6b4ad7cd97f3",
      "tree": "d5e3c0e9644249fa327c613571613c43ec474c6b",
      "parents": [
        "7e2e109cef0d59abcb9aca8b82993e304ed8970c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Dec 05 01:37:34 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:26 2008 -0800"
      },
      "message": "[NET]: Isolate the net/core/ sysctl table\n\nUsing ctl paths we can put all the stuff, related to net/core/\nsysctl table, into one file and remove all the references on it.\n\nAs a good side effect this hides the \"core_table\" name from\nthe global scope :)\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02f014d88831f73b895c1fe09badb66c88e932d3",
      "tree": "09aa75b8edeb240e62c4269f20630f8206c0e6d4",
      "parents": [
        "7a6c6653b3a977087ec64d76817c7ee6e1df5b60"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 01:26:33 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:14 2008 -0800"
      },
      "message": "[NETFILTER]: nf_queue: move list_head/skb/id to struct nf_info\n\nMove common fields for queue management to struct nf_info and rename it\nto struct nf_queue_entry. The avoids one allocation/free per packet and\nsimplifies the code a bit.\n\nAlternatively we could add some private room at the tail, but since\nall current users use identical structs this seems easier.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c01cd429fc118c5db92475c5f08b307718aa4efc",
      "tree": "9428982e5b996c73071ea70b8f280d030e53a51e",
      "parents": [
        "f9d8928f8340ab8e76f1da4799cb19a6ff58b83d"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 01:24:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:10 2008 -0800"
      },
      "message": "[NETFILTER]: nf_queue: move queueing related functions/struct to seperate header\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f9d8928f8340ab8e76f1da4799cb19a6ff58b83d",
      "tree": "e2c763679016394bebee40a56dafe708ffb9d0de",
      "parents": [
        "e3ac5298159c5286cef86f0865d4fa6a606bd391"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 01:24:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:10 2008 -0800"
      },
      "message": "[NETFILTER]: nf_queue: remove unused data pointer\n\nRemove the data pointer from struct nf_queue_handler. It has never been used\nand is useless for the only handler that really matters, nfnetlink_queue,\nsince the handler is shared between all instances.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e3ac5298159c5286cef86f0865d4fa6a606bd391",
      "tree": "e2d398667438d5e9e4cb688af03a37c6198e2e72",
      "parents": [
        "fb46990dba94866462e90623e183d02ec591cf8f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 01:23:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:09 2008 -0800"
      },
      "message": "[NETFILTER]: nf_queue: make queue_handler const\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1841a4c7ae106b7a3e2521db55f4d8bb8a0988d5",
      "tree": "50c64a8b67e9f2f768560f32792ea740042b3f08",
      "parents": [
        "193b23c5a0b270f045a4e77545e9020bfe73d5c4"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Dec 05 01:22:05 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:05 2008 -0800"
      },
      "message": "[NETFILTER]: nf_ct_h323: remove ipv6 module dependency\n\nnf_conntrack_h323 needs ip6_route_output for the call forwarding filter.\nAdd a -\u003eroute function to nf_afinfo and use that to avoid pulling in the\nipv6 module.\n\nFix the #ifdef for the IPv6 code while I\u0027m at it - the IPv6 support is\nonly needed when IPv6 conntrack is enabled.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "50c164a81f1c0dfad056f99e5685537fdd0f07dd",
      "tree": "8f1383e3bdff0de1969dc280faf11b3e4bf01ef8",
      "parents": [
        "5859034d7eb8793d3d78d3af515c4175e7b9d03a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Dec 04 13:02:19 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:03 2008 -0800"
      },
      "message": "[NETFILTER]: x_tables: add rateest match\n\nAdd rate estimator match. The rate estimator match can match on\nestimated rates by the RATEEST target. It supports matching on\nabsolute bps/pps values, comparing two rate estimators and matching\non the difference between two rate estimators.\n\nThis is what I use to route outgoing data connections from a FTP\nserver over two lines based on the  available bandwidth:\n\n# estimate outgoing rates\niptables -t mangle -A POSTROUTING -o eth0 -j RATEEST --rateest-name eth0 \\\n                                                     --rateest-interval 250ms \\\n                                                     --rateest-ewma 0.5s\niptables -t mangle -A POSTROUTING -o ppp0 -j RATEEST --rateest-name ppp0 \\\n                                                     --rateest-interval 250ms \\\n                                                     --rateest-ewma 0.5s\n\n# mark based on available bandwidth\niptables -t mangle -A BALANCE -m state --state NEW \\\n                              -m helper --helper ftp \\\n                              -m rateest --rateest-delta \\\n                                         --rateest1 eth0 \\\n                                         --rateest-bps1 2.5mbit \\\n                                         --rateest-gt \\\n                                         --rateest2 ppp0 \\\n                                         --rateest-bps2 2mbit \\\n                              -j CONNMARK --set-mark 0x1\n\niptables -t mangle -A BALANCE -m state --state NEW \\\n                              -m helper --helper ftp \\\n                              -m rateest --rateest-delta \\\n                                         --rateest1 ppp0 \\\n                                         --rateest-bps1 2mbit \\\n                                         --rateest-gt \\\n                                         --rateest2 eth0 \\\n                                         --rateest-bps2 2.5mbit \\\n                              -j CONNMARK --set-mark 0x2\n\niptables -t mangle -A BALANCE -j CONNMARK --restore-mark\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5859034d7eb8793d3d78d3af515c4175e7b9d03a",
      "tree": "fbd0efe0424d9ef9dbe2a57b905bcd413c4cb0bc",
      "parents": [
        "cb76c6a597350534d211ba79d92da1f9771f8226"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Dec 04 23:40:05 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:02 2008 -0800"
      },
      "message": "[NETFILTER]: x_tables: add RATEEST target\n\nAdd new rate estimator target (using gen_estimator). In combination with\nthe rateest match (next patch) this can be used for load-based multipath\nrouting.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c350e5a380333c64da8580fa134a2fd8e71fea4",
      "tree": "1d9ff30ad36946af539816fec2761165e7bb4aaf",
      "parents": [
        "f1095ab51d4297d4a84b64a65c71054183a73486"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Tue Dec 04 23:39:09 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:00 2008 -0800"
      },
      "message": "[NETFILTER]: IPv6 capable xt_TOS v1 target\n\nExtends the xt_DSCP target by xt_TOS v1 to add support for selectively\nsetting and flipping any bit in the IPv4 TOS and IPv6 Priority fields.\n(ipt_TOS and xt_DSCP only accepted a limited range of possible\nvalues.)\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1095ab51d4297d4a84b64a65c71054183a73486",
      "tree": "50b3d4fe6d4a23cf5072fd3a92cf935d1545ba57",
      "parents": [
        "c9fd49680954714473d6cbd2546d6ff120f96840"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Tue Dec 04 23:38:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:56:00 2008 -0800"
      },
      "message": "[NETFILTER]: IPv6 capable xt_tos v1 match\n\nExtends the xt_dscp match by xt_tos v1 to add support for selectively\nmatching any bit in the IPv4 TOS and IPv6 Priority fields. (ipt_tos\nand xt_dscp only accepted a limited range of possible values.)\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c3f486603438130b93b33acd92db0f994ec3e55",
      "tree": "8f9462fa49f7139cfc0bc6599fd3706233a3bbb4",
      "parents": [
        "4c37799ccf6c722e0dad6a0677af22d1c23fb897"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Tue Dec 04 23:37:29 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:58 2008 -0800"
      },
      "message": "[NET]: Constify include/net/dsfield.h\n\nConstify include/net/dsfield.h\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e2cf5ecbea861ff05105bbd40f4f0d7823d9e213",
      "tree": "f1563dbe6d1e3c06f63d966e43d5c777c912ca4a",
      "parents": [
        "0553811612a6178365f3b062c30234913b218a96"
      ],
      "author": {
        "name": "Laszlo Attila Toth",
        "email": "panther@balabit.hu",
        "time": "Tue Dec 04 23:30:18 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:56 2008 -0800"
      },
      "message": "[NETFILTER]: ipt_addrtype: limit address type checking to an interface\n\nAddrtype match has a new revision (1), which lets address type checking\nlimited to the interface the current packet belongs to. Either incoming\nor outgoing interface can be used depending on the current hook. In the\nFORWARD hook two maches should be used if both interfaces have to be checked.\nThe new structure is ipt_addrtype_info_v1.\n\nRevision 0 lets older userspace programs use the match as earlier.\nipt_addrtype_info is used.\n\nSigned-off-by: Laszlo Attila Toth \u003cpanther@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0553811612a6178365f3b062c30234913b218a96",
      "tree": "81e4fa4f6d0a8beeb7ace09e7e4cb2375c9bfea1",
      "parents": [
        "0265ab44bacc1a1e0e3f5873d8ca2d5a29e33db2"
      ],
      "author": {
        "name": "Laszlo Attila Toth",
        "email": "panther@balabit.hu",
        "time": "Tue Dec 04 23:28:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:56 2008 -0800"
      },
      "message": "[IPV4]: Add inet_dev_addr_type()\n\nAddress type search can be limited to an interface by\ninet_dev_addr_type function.\n\nSigned-off-by: Laszlo Attila Toth \u003cpanther@balabit.hu\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0265ab44bacc1a1e0e3f5873d8ca2d5a29e33db2",
      "tree": "977ab0ae0832876f5e46fb19e0047364e0bcdf45",
      "parents": [
        "9e67d5a739327c44885adebb4f3a538050be73e4"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Tue Dec 04 23:27:38 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:55 2008 -0800"
      },
      "message": "[NETFILTER]: merge ipt_owner/ip6t_owner in xt_owner\n\nxt_owner merges ipt_owner and ip6t_owner, and adds a flag to match\non socket (non-)existence.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "259d4e41f3ec25f22169daece42729f597b89f9a",
      "tree": "8d3d335b3f16834e6374a125f449db383306961d",
      "parents": [
        "d3c5ee6d545b5372fd525ebe16988a5b6efeceb0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Tue Dec 04 23:24:56 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:54 2008 -0800"
      },
      "message": "[NETFILTER]: x_tables: struct xt_table_info diet\n\nInstead of using a big array of NR_CPUS entries, we can compute the size\nneeded at runtime, using nr_cpu_ids\n\nThis should save some ram (especially on David\u0027s machines where NR_CPUS\u003d4096 :\n32 KB can be saved per table, and 64KB for dynamically allocated ones (because\nof slab/slub alignements) )\n\nIn particular, the \u0027bootstrap\u0027 tables are not any more static (in data\nsection) but on stack as their size is now very small.\n\nThis also should reduce the size used on stack in compat functions\n(get_info() declares an automatic variable, that could be bigger than kernel\nstack size for big NR_CPUS)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "338e8a79262c3709e314fbcc7ca193323e534934",
      "tree": "07557902e0b4a824fbe8cf72ee20fecd6a741b67",
      "parents": [
        "0eeb8ffcfeaa0d909ce39147f7b8fdd6cef1aacd"
      ],
      "author": {
        "name": "Sven Schnelle",
        "email": "svens@bitebene.org",
        "time": "Tue Dec 04 23:21:50 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:51 2008 -0800"
      },
      "message": "[NETFILTER]: x_tables: add TCPOPTSTRIP target\n\nSigned-off-by: Sven Schnelle \u003csvens@bitebene.org\u003e\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0eeb8ffcfeaa0d909ce39147f7b8fdd6cef1aacd",
      "tree": "8e252aebdb09e023fa7bde266c1081f08c17a7f9",
      "parents": [
        "6ac552fdc6e96bf2f39c18d6e66b8c8080bbb06e"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Dec 04 01:15:45 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:51 2008 -0800"
      },
      "message": "[NET]: netns compilation speedup\n\nThis patch speedups compilation when net_namespace.h is changed.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2fcb45b6b87914f072314e5b5d9c196f45984683",
      "tree": "e5a6cc4101a8b2693799fde9f47abaf480ae2dfc",
      "parents": [
        "bbca17680f82b1ba3122d41e8bc675aebf6d1cf2"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 03 22:54:12 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:49 2008 -0800"
      },
      "message": "[IPSEC]: Use the correct family for input state lookup\n\nWhen merging the input paths of IPsec I accidentally left a hard-coded\nAF_INET for the state lookup call.  This broke IPv6 obviously.  This\npatch fixes by getting the input callers to specify the family through\nskb-\u003ecb.\n\nCredit goes to Kazunori Miyazawa for diagnosing this and providing an\ninitial patch.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6859d49475d4f32abe640372117e4b687906e6b6",
      "tree": "2133f2e26af6540f2a212c36f219873d34db2c1e",
      "parents": [
        "7201883599ac8bff76300117155e299b1a54092f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 02 00:48:06 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:46 2008 -0800"
      },
      "message": "[TCP]: Abstract tp-\u003ehighest_sack accessing \u0026 point to next skb\n\nPointing to the next skb is necessary to avoid referencing\nalready SACKed skbs which will soon be on a separate list.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "234b68607006f3721679e900809ccb99e8bfb10c",
      "tree": "5f40cdf7db79afbfbbb864ee3a07192136162006",
      "parents": [
        "d67c58e9ae80ea577785111534e49d3ca757ec50"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 02 00:48:02 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:43 2008 -0800"
      },
      "message": "[TCP]: Add tcp_for_write_queue_from_safe and use it in mtu_probe\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c3a05c6050a339c92e49fae0ba77dbba0d41fd99",
      "tree": "4bc4e003d522cc748aceb7478f86c043e382ad8e",
      "parents": [
        "ede9f3b186bc3eb0fce084bdcab500efc3721a80"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 02 00:47:59 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:41 2008 -0800"
      },
      "message": "[TCP]: Cong.ctrl modules: remove unused good_ack from cong_avoid\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d3c990fb26b78f60614885d9ecaf7b7686b7b098",
      "tree": "4948049e6b1bd1ee0392173380e8444e69baa8c5",
      "parents": [
        "fd4c7f2fce1737105208c564e1458c885918982d"
      ],
      "author": {
        "name": "Ron Rindjunsky",
        "email": "ron.rindjunsky@intel.com",
        "time": "Mon Nov 26 16:14:34 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:33 2008 -0800"
      },
      "message": "mac80211: adding 802.11n configuration flows\n\nThis patch configures the 802.11n mode of operation\ninternally in ieee80211_conf structure and in the low-level\ndriver as well (through op conf_ht).\nIt does not include AP configuration flows.\n\nSigned-off-by: Ron Rindjunsky \u003cron.rindjunsky@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "10816d40f2e9500057cb46d7608a362a1d10bb9b",
      "tree": "ad026a7a9c9ac9458e2895f16a1f21f32e6a4b80",
      "parents": [
        "82b3cad942ebf1f64798e6ec3c46c277822e1fce"
      ],
      "author": {
        "name": "Ron Rindjunsky",
        "email": "ron.rindjunsky@intel.com",
        "time": "Mon Nov 26 16:14:30 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:30 2008 -0800"
      },
      "message": "mac80211: adding 802.11n HT framework definitions\n\nNew structures:\n - ieee80211_ht_info: describing STA\u0027s HT capabilities\n - ieee80211_ht_bss_info: describing BSS\u0027s HT characteristics\nChanged structures:\n - ieee80211_hw_mode: now also holds PHY HT capabilities for each HW mode\n - ieee80211_conf: ht_conf holds current self HT configuration\n                   ht_bss_conf holds current BSS HT configuration\n - flag IEEE80211_CONF_SUPPORT_HT_MODE added to indicate if HT use is\n   desired\n - sta_info: now also holds Peer\u0027s HT capabilities\n\nSigned-off-by: Ron Rindjunsky \u003cron.rindjunsky@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e38bad4766a110b61fa6038f10be16ced8c6cc38",
      "tree": "8a1b3920dd5383c4a8312597c6d4570b22eae148",
      "parents": [
        "76ee65bfaa1435320a72989a6413467ce446ae23"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Nov 28 10:55:32 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:28 2008 -0800"
      },
      "message": "mac80211: make ieee80211_iterate_active_interfaces not need rtnl\n\nInterface iteration in mac80211 can be done without holding any\nlocks because I converted it to RCU. Initially, I thought this\nwouldn\u0027t be needed for ieee80211_iterate_active_interfaces but\nit\u0027s turning out that multi-BSS AP support can be much simpler\nin a driver if ieee80211_iterate_active_interfaces can be called\nwithout holding locks. This converts it to use RCU, it adds a\nrequirement that the callback it invokes cannot sleep.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1597fbc0faf88c42edb3fe42e92e53b83c3f120e",
      "tree": "17a56a96af0e00a1af452f0530997585803b6c7b",
      "parents": [
        "1d430b913c2e6293a80a4a422406bc9489a476ad"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:51:01 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:23 2008 -0800"
      },
      "message": "[UNIX]: Make the unix sysctl tables per-namespace\n\nThis is the core.\n\n * add the ctl_table_header on the struct net;\n * make the unix_sysctl_register and _unregister clone the table;\n * moves calls to them into per-net init and exit callbacks;\n * move the .data pointer in the proper place.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d392e49756a99ba51577d265d6db83e3f01c6ac8",
      "tree": "644610d6fc7ab79a9e8a7f76357062759ec8d690",
      "parents": [
        "97577e38284f48ca773392e2d401af2f6c95dc08"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:44:15 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:22 2008 -0800"
      },
      "message": "[UNIX]: Move the sysctl_unix_max_dgram_qlen\n\nThis will make all the sub-namespaces always use the\ndefault value (10) and leave the tuning via sysctl\nto the init namespace only.\n\nPer-namespace tuning is coming.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97577e38284f48ca773392e2d401af2f6c95dc08",
      "tree": "f744e46259cf06b13858f2965526d512308cb7da",
      "parents": [
        "dd88590995de7c7ce108718a9ad52b3832e77814"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Sat Dec 01 23:40:40 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:21 2008 -0800"
      },
      "message": "[UNIX]: Extend unix_sysctl_(un)register prototypes\n\nAdd the struct net * argument to both of them to use in\nthe future. Also make the register one return an error code.\n\nIt is useless right now, but will make the future patches\nmuch simpler.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95bdfccb2bf4ea21c0065772c6a2c75cbaf6ad0d",
      "tree": "779993b29b8e348e14497496f3c9d318fb0b0d0e",
      "parents": [
        "e51b6ba077791f2f8c876022b37419be7a2ceec3"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 30 23:55:42 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:18 2008 -0800"
      },
      "message": "[NET]: Implement the per network namespace sysctl infrastructure\n\nThe user interface is: register_net_sysctl_table and\nunregister_net_sysctl_table.  Very much like the current\ninterface except there is a network namespace parameter.\n\nWith this any sysctl registered with register_net_sysctl_table\nwill only show up to tasks in the same network namespace.\n\nAll other sysctls continue to be globally visible.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e51b6ba077791f2f8c876022b37419be7a2ceec3",
      "tree": "9d8ca18f3239eff84cad5b79b715c332970fa89d",
      "parents": [
        "23eb06de7d2d333a0f7ebba2da663e00c9c9483e"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 30 23:54:00 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:17 2008 -0800"
      },
      "message": "sysctl: Infrastructure for per namespace sysctls\n\nThis patch implements the basic infrastructure for per namespace sysctls.\n\nA list of lists of sysctl headers is added, allowing each namespace to have\nit\u0027s own list of sysctl headers.\n\nEach list of sysctl headers has a lookup function to find the first\nsysctl header in the list, allowing the lists to have a per namespace\ninstance.\n\nregister_sysct_root is added to tell sysctl.c about additional\nlists of sysctl_headers.  As all of the users are expected to be in\nkernel no unregister function is provided.\n\nsysctl_head_next is updated to walk through the list of lists.\n\n__register_sysctl_paths is added to add a new sysctl table on\na non-default sysctl list.\n\nThe only intrusive part of this patch is propagating the information\nto decided which list of sysctls to use for sysctl_check_table.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "23eb06de7d2d333a0f7ebba2da663e00c9c9483e",
      "tree": "2958ebaacc8d8fd4b1a4d1966c31e6395b5b634a",
      "parents": [
        "29e796fd4de54b8f5bc30d897611210ece4fd0f2"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 30 23:52:10 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:17 2008 -0800"
      },
      "message": "sysctl: Remember the ctl_table we passed to register_sysctl_paths\n\nBy doing this we allow users of register_sysctl_paths that build\nand dynamically allocate their ctl_table to be simpler.  This allows\nthem to just remember the ctl_table_header returned from\nregister_sysctl_paths from which they can now find the\nctl_table array they need to free.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "29e796fd4de54b8f5bc30d897611210ece4fd0f2",
      "tree": "a05b5e87e7b6c4d1820d892c4aabc438ccee58e5",
      "parents": [
        "be0ea7d5da3d99140bde7e5cea328eb111731700"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Nov 30 23:50:18 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:16 2008 -0800"
      },
      "message": "sysctl: Add register_sysctl_paths function\n\nThere are a number of modules that register a sysctl table\nsomewhere deeply nested in the sysctl hierarchy, such as\nfs/nfs, fs/xfs, dev/cdrom, etc.\n\nThey all specify several dummy ctl_tables for the path name.\nThis patch implements register_sysctl_path that takes\nan additional path name, and makes up dummy sysctl nodes\nfor each component.\n\nThis patch was originally written by Olaf Kirch and\nbrought to my attention and reworked some by Olaf Hering.\nI have changed a few additional things so the bugs are mine.\n\nAfter converting all of the easy callers Olaf Hering observed\nallyesconfig ARCH\u003di386, the patch reduces the final binary size by 9369 bytes.\n\n.text +897\n.data -7008\n\n   text    data     bss     dec     hex filename\n   26959310        4045899 4718592 35723801        2211a19 ../vmlinux-vanilla\n   26960207        4038891 4718592 35717690        221023a ../O-allyesconfig/vmlinux\n\nSo this change is both a space savings and a code simplification.\n\nCC: Olaf Kirch \u003cokir@suse.de\u003e\nCC: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "be0ea7d5da3d99140bde7e5cea328eb111731700",
      "tree": "fc7e0702bf03eff7409c1bd8361fca5737cbe365",
      "parents": [
        "a99a00cf1adef2d3dce745c93c9cc8b0a1612c50"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Nov 30 01:17:11 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:15 2008 -0800"
      },
      "message": "[NETFILTER]: Convert old checksum helper names\n\nKill the defines again, convert to the new checksum helper names and\nremove the dependency of NET_ACT_NAT on NETFILTER.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a99a00cf1adef2d3dce745c93c9cc8b0a1612c50",
      "tree": "4629669029f845ae141693578a899505cde577e9",
      "parents": [
        "3159afe0d2c1994392c269cf9dee2797830d016b"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Nov 30 01:14:30 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:14 2008 -0800"
      },
      "message": "[NET]: Move netfilter checksum helpers to net/core/utils.c\n\nThis allows to get rid of the CONFIG_NETFILTER dependency of NET_ACT_NAT.\nThis patch redefines the old names to keep the noise low, the next patch\nconverts all users.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0c869620762fea4b3acf6502d9e80840b27ec642",
      "tree": "218146397018baf917260f3d0a90dd89fc13cc7f",
      "parents": [
        "f11135a3442996d78dad99933bfdb90d1f6588d3"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 28 11:59:48 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:13 2008 -0800"
      },
      "message": "[DCCP]: Integrate state transitions for passive-close\n\nThis adds the necessary state transitions for the two forms of passive-close\n\n * PASSIVE_CLOSE    - which is entered when a host   receives a Close;\n * PASSIVE_CLOSEREQ - which is entered when a client receives a CloseReq.\n\nHere is a detailed account of what the patch does in each state.\n\n1) Receiving CloseReq\n\n  The pseudo-code in 8.5 says:\n\n     Step 13: Process CloseReq\n          If P.type \u003d\u003d CloseReq and S.state \u003c CLOSEREQ,\n              Generate Close\n              S.state :\u003d CLOSING\n              Set CLOSING timer.\n\n  This means we need to address what to do in CLOSED, LISTEN, REQUEST, RESPOND, PARTOPEN, and OPEN.\n\n   * CLOSED:         silently ignore - it may be a late or duplicate CloseReq;\n   * LISTEN/RESPOND: will not appear, since Step 7 is performed first (we know we are the client);\n   * REQUEST:        perform Step 13 directly (no need to enqueue packet);\n   * OPEN/PARTOPEN:  enter PASSIVE_CLOSEREQ so that the application has a chance to process unread data.\n\n  When already in PASSIVE_CLOSEREQ, no second CloseReq is enqueued. In any other state, the CloseReq is ignored.\n  I think that this offers some robustness against rare and pathological cases: e.g. a simultaneous close where\n  the client sends a Close and the server a CloseReq. The client will then be retransmitting its Close until it\n  gets the Reset, so ignoring the CloseReq while in state CLOSING is sane.\n\n2) Receiving Close\n\n  The code below from 8.5 is unconditional.\n\n     Step 14: Process Close\n          If P.type \u003d\u003d Close,\n              Generate Reset(Closed)\n              Tear down connection\n              Drop packet and return\n\n  Thus we need to consider all states:\n   * CLOSED:           silently ignore, since this can happen when a retransmitted or late Close arrives;\n   * LISTEN:           dccp_rcv_state_process() will generate a Reset (\"No Connection\");\n   * REQUEST:          perform Step 14 directly (no need to enqueue packet);\n   * RESPOND:          dccp_check_req() will generate a Reset (\"Packet Error\") -- left it at that;\n   * OPEN/PARTOPEN:    enter PASSIVE_CLOSE so that application has a chance to process unread data;\n   * CLOSEREQ:         server performed active-close -- perform Step 14;\n   * CLOSING:          simultaneous-close: use a tie-breaker to avoid message ping-pong (see comment);\n   * PASSIVE_CLOSEREQ: ignore - the peer has a bug (sending first a CloseReq and now a Close);\n   * TIMEWAIT:         packet is ignored.\n\n   Note that the condition of receiving a packet in state CLOSED here is different from the condition \"there\n   is no socket for such a connection\": the socket still exists, but its state indicates it is unusable.\n\n   Last, dccp_finish_passive_close sets either DCCP_CLOSED or DCCP_CLOSING \u003d TCP_CLOSING, so that\n   sk_stream_wait_close() will wait for the final Reset (which will trigger CLOSING \u003d\u003e CLOSED).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f11135a3442996d78dad99933bfdb90d1f6588d3",
      "tree": "6b10cea26f0551b769097296b7e41f25d6b44f08",
      "parents": [
        "f53dc67c5e7babafe239b93a11678b0e05bead51"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 28 11:34:53 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:12 2008 -0800"
      },
      "message": "[DCCP]: Dedicated auxiliary states to support passive-close\n\nThis adds two auxiliary states to deal with passive closes:\n  * PASSIVE_CLOSE    (reached from OPEN via reception of Close)    and\n  * PASSIVE_CLOSEREQ (reached from OPEN via reception of CloseReq)\nas internal intermediate states.\n\nThese states are used to allow a receiver to process unread data before\nacknowledging the received connection-termination-request (the Close/CloseReq).\n\nWithout such support, it will happen that passively-closed sockets enter CLOSED\nstate while there is still unprocessed data in the queue; leading to unexpected\nand erratic API behaviour.\n\nPASSIVE_CLOSE has been mapped into TCPF_CLOSE_WAIT, so that the code will\nseamlessly work with inet_accept() (which tests for this state).\n\nThe state names are thanks to Arnaldo, who suggested this naming scheme\nfollowing an earlier revision of this patch.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7dc89c0ac8e7c3796bff91becf58ccdbcaf9f18",
      "tree": "e876ccadf29a90b7a211522aeccfd42255dab586",
      "parents": [
        "df97c708d5e6eebdd9ded1fa588eae09acf53793"
      ],
      "author": {
        "name": "Fred L. Templin",
        "email": "fred.l.templin@boeing.com",
        "time": "Thu Nov 29 22:11:40 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:09 2008 -0800"
      },
      "message": "[IPV6]: Add RFC4214 support\n\nThis patch includes support for the Intra-Site Automatic Tunnel\nAddressing Protocol (ISATAP) per RFC4214. It uses the SIT\nmodule, and is configured using extensions to the \"iproute2\"\nutility. The diffs are specific to the Linux 2.6.24-rc2 kernel\ndistribution.\n\nThis version includes the diff for ./include/linux/if.h which was\nmissing in the v2.4 submission and is needed to make the\npatch compile. The patch has been installed, compiled and\ntested in a clean 2.6.24-rc2 kernel build area.\n\nSigned-off-by: Fred L. Templin \u003cfred.l.templin@boeing.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "df97c708d5e6eebdd9ded1fa588eae09acf53793",
      "tree": "35bcca504e629f3b9635fd52870a8add0846f333",
      "parents": [
        "f561d0f27d6283c49359bb96048f8ac3728c812c"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Nov 29 21:22:33 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:08 2008 -0800"
      },
      "message": "[NET]: Eliminate unused argument from sk_stream_alloc_pskb\n\nThe 3rd argument is always zero (according to grep :) Eliminate\nit and merge the function with sk_stream_alloc_skb.\n\nThis saves 44 more bytes, and together with the previous patch\nwe have:\n\nadd/remove: 1/0 grow/shrink: 0/8 up/down: 183/-751 (-568)\nfunction                                     old     new   delta\nsk_stream_alloc_skb                            -     183    +183\nip_rt_init                                   529     525      -4\narp_ignore                                   112     107      -5\n__inet_lookup_listener                       284     274     -10\ntcp_sendmsg                                 2583    2481    -102\ntcp_sendpage                                1449    1300    -149\ntso_fragment                                 417     258    -159\ntcp_fragment                                1149     988    -161\n__tcp_push_pending_frames                   1998    1837    -161\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f561d0f27d6283c49359bb96048f8ac3728c812c",
      "tree": "95665f72ac84fc9c91f5c1ee568f169984631887",
      "parents": [
        "3015a347dcd470fcc8becf1f84b0502391a3c0e0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Nov 29 20:28:50 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:07 2008 -0800"
      },
      "message": "[NET]: Uninline the sk_stream_alloc_pskb\n\nThis function seems too big for inlining. Indeed, it saves\nhalf-a-kilo when uninlined:\n\nadd/remove: 1/0 grow/shrink: 0/7 up/down: 195/-719 (-524)\nfunction                                     old     new   delta\nsk_stream_alloc_pskb                           -     195    +195\nip_rt_init                                   529     525      -4\n__inet_lookup_listener                       284     274     -10\ntcp_sendmsg                                 2583    2486     -97\ntcp_sendpage                                1449    1305    -144\ntso_fragment                                 417     267    -150\ntcp_fragment                                1149     992    -157\n__tcp_push_pending_frames                   1998    1841    -157\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8512430e554a84275669f78f86dce18566d5cf7a",
      "tree": "86c3743da48dbe20c2eda691b957310dd0181ad2",
      "parents": [
        "82d8a867ffaed7fe58e789103b32c0fc6b79dafd"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Nov 26 20:17:38 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:05 2008 -0800"
      },
      "message": "[TCP]: Move FRTO checks out from write queue abstraction funcs\n\nBetter place exists in update_send_head (other non-queue related\nadjustments are done there as well) which is the only caller of\ntcp_advance_send_head (now that the bogus call from mtu_probe is\ngone).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d8ad9d7c4bfe79bc91b7fc419ecfb9dcdfe6a51",
      "tree": "4b655c4b898e634f39fd170eeb8d06f45b240660",
      "parents": [
        "ce865a61c810c971b47f57c729ec6e9b2d522d94"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 26 20:10:50 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:55:03 2008 -0800"
      },
      "message": "[NET]: Name magic constants in sock_wake_async()\n\nThe sock_wake_async() performs a bit different actions\ndepending on \"how\" argument. Unfortunately this argument\nony has numerical magic values.\n\nI propose to give names to their constants to help people\nreading this function callers understand what\u0027s going on\nwithout looking into this function all the time.\n\nI suppose this is 2.6.25 material, but if it\u0027s not (or the\nnaming seems poor/bad/awful), I can rework it against the\ncurrent net-2.6 tree.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e7d0362dd41e760f340c1b500646cc92522bd9d5",
      "tree": "d3535fd6d181c90fb027f90c43e0db04ec7dd8c4",
      "parents": [
        "f1267347353b586e1a89a7d02c142be975bae699"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Mon Nov 26 23:34:54 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:50 2008 -0800"
      },
      "message": "[PCOUNTER] Fix build error without CONFIG_SMP\n\nI keep getting this build error and couldn\u0027t find anyone fixing\nit in archives. ...Maybe all net developers except me build\njust SMP kernels :-).\n\nIn file included from include/net/sock.h:50,\n                 from ipc/mqueue.c:35:\ninclude/linux/pcounter.h: In function \u0027pcounter_add\u0027:\ninclude/linux/pcounter.h:87: error: \u0027struct pcounter\u0027 has no\nmember named \u0027value\u0027\nmake[1]: *** [ipc/mqueue.o] Error 1\nmake: *** [ipc] Error 2\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9b91ad2747891767c0efb4fb965c5dfed8d4f88e",
      "tree": "010b946c201fab39f3417ffd0abbdc74dbe62cdb",
      "parents": [
        "c3ada46a009001e144b29736880962f24ee2afdf"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 20 21:56:37 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:44 2008 -0800"
      },
      "message": "[DCCP]: Make PARTOPEN an autonomous state\n\nThis decouples PARTOPEN from TCP-specific stream-states.\n\nIt thus addresses the FIXME.\n\nThe code has been checked with regard to dependency on PARTOPEN and FIN_WAIT1\nstates (to which PARTOPEN previously was mapped): there is no difference, as\nPARTOPEN is always referred to directly (i.e. not via the mapping to TCP\nstate).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ebb53d75657f86587ac8cf3e38ab0c860a8e3d4f",
      "tree": "2b1d63cb8ee54b19589d6d13a693147001e642ad",
      "parents": [
        "de4d1db369785c29d68915edfee0cb70e8199f4c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Nov 21 22:08:50 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:40 2008 -0800"
      },
      "message": "[NET] proto: Use pcounters for the inuse field\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de4d1db369785c29d68915edfee0cb70e8199f4c",
      "tree": "78979fc131145d4b2df3cd4721a811784126f05c",
      "parents": [
        "0c884439dbd7c895cce61c4974c8868b0f6cd4a1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Nov 21 22:02:58 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:39 2008 -0800"
      },
      "message": "[LIB]: Introduce struct pcounter\n\nThis just generalises what was introduced by Eric Dumazet for the struct proto\ninuse field in 286ab3d46058840d68e5d7d52e316c1f7e98c59f:\n\n    [NET]: Define infrastructure to keep \u0027inuse\u0027 changes in an efficent SMP/NUMA way.\n\nPlease look at the comment in there to see the rationale.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6b4e324164c683a7b4c1bd0be4d85f9a5a0f0e90",
      "tree": "d7b993daf43b7bc8f7edbe368ffb34908a4ff84b",
      "parents": [
        "48933dea47c947f1d44631ce2292736e6a48eef1"
      ],
      "author": {
        "name": "Ron Rindjunsky",
        "email": "ron.rindjunsky@intel.com",
        "time": "Wed Nov 14 19:57:38 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:38 2008 -0800"
      },
      "message": "mac80211: adding 802.11n definitions in ieee80211.h\n\nThis patch adds several structs and definitions to ieee80211.h\nto support 802.11n draft specifications.\nAs 802.11n depends on and extends the 802.11e standard in several issues,\nthere are also several definitions that belong to 802.11e.\n\nSigned-off-by: Ron Rindjunsky \u003cron.rindjunsky@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dabeb344f54ab780d152714c18f1cb6b21c471a1",
      "tree": "b93be2a461b00882491bc8b7d3780476ca71bf7e",
      "parents": [
        "9859a79023d71dd4e56c195a345abc4112abfd02"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Nov 09 01:57:29 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:37 2008 -0800"
      },
      "message": "mac80211: provide interface iterator for drivers\n\nSometimes drivers need to know which interfaces are associated with\ntheir hardware. Rather than forcing those drivers to keep track of\nthe interfaces that were added, this adds an iteration function to\nmac80211.\n\nAs it is intended to be used from the interface add/remove callbacks,\nthe iteration function may currently only be called under RTNL.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "42a73808ed4f30b739eb52bcbb33a02fe62ceef5",
      "tree": "3bd75f0afd1277d9340aa416ff79eec0be040392",
      "parents": [
        "ab70768ec78c6784958bab3b58fbe3f4150006df"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:38:33 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:32 2008 -0800"
      },
      "message": "[RAW]: Consolidate proc interface.\n\nBoth ipv6/raw.c and ipv4/raw.c use the seq files to walk\nthrough the raw sockets hash and show them.\n\nThe \"walking\" code is rather huge, but is identical in both\ncases. The difference is the hash table to walk over and\nthe protocol family to check (this was not in the first\nvirsion of the patch, which was noticed by YOSHIFUJI)\n\nMake the -\u003eopen store the needed hash table and the family\non the allocated raw_iter_state and make the start/next/stop\ncallbacks work with it.\n\nThis removes most of the code.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab70768ec78c6784958bab3b58fbe3f4150006df",
      "tree": "65c09684bb97c028554d6dd7157a6124585f4734",
      "parents": [
        "65b4c50b47c4ac3d2b5a82e5553b8e5613fb9585"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:37:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:31 2008 -0800"
      },
      "message": "[RAW]: Consolidate proto-\u003eunhash callback\n\nSame as the -\u003ehash one, this is easily consolidated.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65b4c50b47c4ac3d2b5a82e5553b8e5613fb9585",
      "tree": "7278ca549a04aba218a93e489a44be4410ec3239",
      "parents": [
        "b673e4dfc8f29e5bfe4d342029b793e9d504f6dd"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:37:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:31 2008 -0800"
      },
      "message": "[RAW]: Consolidate proto-\u003ehash callback\n\nHaving the raw_hashinfo it\u0027s easy to consolidate the\nraw[46]_hash functions.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b673e4dfc8f29e5bfe4d342029b793e9d504f6dd",
      "tree": "e0282a3819176b9f28eb7e2021c55c70bdbda50e",
      "parents": [
        "69d6da0b0faa70249a243a14e6066c013e9294e5"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:36:45 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:30 2008 -0800"
      },
      "message": "[RAW]: Introduce raw_hashinfo structure\n\nThe ipv4/raw.c and ipv6/raw.c contain many common code (most\nof which is proc interface) which can be consolidated.\n\nMost of the places to consolidate deal with the raw sockets\nhashtable, so introduce a struct raw_hashinfo which describes\nthe raw sockets hash.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "69d6da0b0faa70249a243a14e6066c013e9294e5",
      "tree": "f3678fc834f0b7ba1fc46ef2a4a240e7a937d747",
      "parents": [
        "7bc54c90307b4bc3d7fb2ffd6ad8fbda0671a45e"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:35:57 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:29 2008 -0800"
      },
      "message": "[IPv6] RAW: Compact the API for the kernel\n\nSame as in the previous patch for ipv4, compact the\nAPI and hide hash table and rwlock inside the raw.c\nfile.\n\nPlus fix some \"bad\" places from checkpatch.pl point\nof view (assignments inside if()).\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7bc54c90307b4bc3d7fb2ffd6ad8fbda0671a45e",
      "tree": "74e2030d9603c41ce5dc3699862804a69300b7dc",
      "parents": [
        "e372c41401993b45c721c4d92730e7e0a79f7c1b"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:35:07 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:28 2008 -0800"
      },
      "message": "[IPv4] RAW: Compact the API for the kernel\n\nThe raw sockets functions are explicitly used from\ninside the kernel in two places:\n\n1. in ip_local_deliver_finish to intercept skb-s\n2. in icmp_error\n\nFor this purposes many functions and even data structures,\nthat are naturally internal for raw protocol, are exported.\n\nCompact the API to two functions and hide all the other\n(including hash table and rwlock) inside the net/ipv4/raw.c\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e372c41401993b45c721c4d92730e7e0a79f7c1b",
      "tree": "8f062f506c0578fc83b7d05c8751a7ccac96e50e",
      "parents": [
        "097e66c578459f79e3a2128c54e9df5194e1419a"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:31:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:28 2008 -0800"
      },
      "message": "[NET]: Consolidate net namespace related proc files creation.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d12d01d6b4d197115c4d7736172b5b1ec8b1eb71",
      "tree": "480fc48e6ae404b59d2f62a7e3afc6ea88a5413c",
      "parents": [
        "4b3da706bbe4613d2fe4df8df4d965954ea98964"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:28:35 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:26 2008 -0800"
      },
      "message": "[NET]: Make AF_PACKET handle multiple network namespaces\n\nThis is done by making packet_sklist_lock and packet_sklist per\nnetwork namespace and adding an additional filter condition on\nreceived packets to ensure they came from the proper network\nnamespace.\n\nChanges from v1:\n- prohibit to call inet_dgram_ops.ioctl in other than init_net\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "97c53cacf00d1f5aa04adabfebcc806ca8b22b10",
      "tree": "6b7223df312aa27a5017c4d7c4d1e500a33ed8d8",
      "parents": [
        "b854272b3c732316676e9128f7b9e6f1e1ff88b0"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:26:51 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:25 2008 -0800"
      },
      "message": "[NET]: Make rtnetlink infrastructure network namespace aware (v3)\n\nAfter this patch none of the netlink callback support anything\nexcept the initial network namespace but the rtnetlink infrastructure\nnow handles multiple network namespaces.\n\nChanges from v2:\n- IPv6 addrlabel processing\n\nChanges from v1:\n- no need for special rtnl_unlock handling\n- fixed IPv6 ndisc\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c237899d1f8c5bfcfc9d6204052e0e065827ff75",
      "tree": "b107bd8355b8e3e423a980c86f0a304242e718ed",
      "parents": [
        "6a4329554c527e86c2745bc001c29bb8d1b8efaf"
      ],
      "author": {
        "name": "Michael Wu",
        "email": "flamingice@sourmilk.net",
        "time": "Tue Oct 30 16:50:05 2007 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:20 2008 -0800"
      },
      "message": "ieee80211: Add IEEE80211_MAX_FRAME_LEN to linux/ieee80211.h\n\nThis patch adds IEEE80211_MAX_FRAME_LEN which is useful for drivers trying\nto determine how much to allocate for their RX buffers.\n\nIt also updates the comment on IEEE80211_MAX_DATA_LEN based on revisions\nin 802.11e.\n\nIEEE80211_MAX_FRAG_THRESHOLD and IEEE80211_MAX_RTS_THRESHOLD are also\nrevised due to the new maximum frame size.\n\nSigned-off-by: Michael Wu \u003cflamingice@sourmilk.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c7b6ea24b43afb5749cb704e143df19d70e23dea",
      "tree": "e46281225b1cec008b5a65ece47b8d5f1a8d7abd",
      "parents": [
        "33f807ba0d9259e7c75c7a2ce8bd2787e5b540c7"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Nov 19 19:37:09 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:18 2008 -0800"
      },
      "message": "[NETPOLL]: Don\u0027t need rx_flags.\n\nThe rx_flags variable is redundant. Turning rx on/off is done\nvia setting the rx_np pointer.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0953864160bdd28dfe45fd46fa462b4d2d53cb96",
      "tree": "fcc3be7c24858b4606d6eeafee2292a58d84c6a4",
      "parents": [
        "5106930bd6b57402205e3de54dae9476e215b622"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Nov 19 19:23:29 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:17 2008 -0800"
      },
      "message": "[NETPOLL]: no need to store local_mac\n\nThe local_mac is managed by the network device, no need to keep a\nspare copy and all the management problems that could cause.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1f98eefae8ca451d317b1602f2cedf7515b032ff",
      "tree": "708923bfda749548bdf036c2d20756640f119ba7",
      "parents": [
        "4195e31780a20e09c6e793c2d96390e05309e226"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver@hartkopp.net",
        "time": "Thu Dec 27 16:51:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:13 2008 -0800"
      },
      "message": "[CAN]: Add missing Kbuild entries\n\nThis patch adds the missing Kbuild entries and the missing Kbuild file\nin include/linux/can for the CAN subsystem.\n\nSigned-off-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4195e31780a20e09c6e793c2d96390e05309e226",
      "tree": "eb76871e302e5e86125ea94bee4dcef73af469cf",
      "parents": [
        "ccb29637991fa6b8321a80c2320a71e379aea962"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver@hartkopp.net",
        "time": "Thu Dec 27 16:50:06 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:12 2008 -0800"
      },
      "message": "[CAN]: Fix plain integer definitions in userspace header.\n\nThis patch fixes the use of plain integers instead of __u32 in a struct\nthat is visible from kernel space and user space.\n\nThanks to Sam Ravnborg for pointing out the wrong plain int usage.\n\nSigned-off-by: Oliver Hartkopp \u003coliver@hartkopp.net\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffd980f976e7fd666c2e61bf8ab35107efd11828",
      "tree": "78ac4c20961ad5607b162cf0bc43a8cfc0a009ee",
      "parents": [
        "c18ce101f2e47d97ace125033e2896895a6db3dd"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 15:53:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:11 2008 -0800"
      },
      "message": "[CAN]: Add broadcast manager (bcm) protocol\n\nThis patch adds the CAN broadcast manager (bcm) protocol.\n\nSigned-off-by: Oliver Hartkopp \u003coliver.hartkopp@volkswagen.de\u003e\nSigned-off-by: Urs Thuermann \u003curs.thuermann@volkswagen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c18ce101f2e47d97ace125033e2896895a6db3dd",
      "tree": "9e85bb469d1a756f7f270bde67a681972fdf8097",
      "parents": [
        "0d66548a10cbbe0ef256852d63d30603f0f73f9b"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 15:53:09 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:10 2008 -0800"
      },
      "message": "[CAN]: Add raw protocol\n\nThis patch adds the CAN raw protocol.\n\nSigned-off-by: Oliver Hartkopp \u003coliver.hartkopp@volkswagen.de\u003e\nSigned-off-by: Urs Thuermann \u003curs.thuermann@volkswagen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0d66548a10cbbe0ef256852d63d30603f0f73f9b",
      "tree": "58c91033f88014c6a25b4d105a721bc58ec35f2c",
      "parents": [
        "cd05acfe65ed2cf2db683fa9a6adb8d35635263b"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 15:52:17 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:10 2008 -0800"
      },
      "message": "[CAN]: Add PF_CAN core module\n\nThis patch adds the CAN core functionality but no protocols or drivers.\nNo protocol implementations are included here.  They come as separate\npatches.  Protocol numbers are already in include/linux/can.h.\n\nSigned-off-by: Oliver Hartkopp \u003coliver.hartkopp@volkswagen.de\u003e\nSigned-off-by: Urs Thuermann \u003curs.thuermann@volkswagen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cd05acfe65ed2cf2db683fa9a6adb8d35635263b",
      "tree": "73cf8541f3ad48bce5078209fb1cc7383e8c2a3b",
      "parents": [
        "8dbde28d9711475adfe0e9c88505e38743cdc2a7"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Sun Dec 16 15:59:24 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:09 2008 -0800"
      },
      "message": "[CAN]: Allocate protocol numbers for PF_CAN\n\nThis patch adds a protocol/address family number, ARP hardware type,\nethernet packet type, and a line discipline number for the SocketCAN\nimplementation.\n\nSigned-off-by: Oliver Hartkopp \u003coliver.hartkopp@volkswagen.de\u003e\nSigned-off-by: Urs Thuermann \u003curs.thuermann@volkswagen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "68f8353b480e5f2e136c38a511abdbb88eaa8ce2",
      "tree": "3e412890c3caa98619872f15e117daffb68e9edf",
      "parents": [
        "fd6dad616d4fe2f08d690f25ca76b0102158fb3a"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:50:37 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:07 2008 -0800"
      },
      "message": "[TCP]: Rewrite SACK block processing \u0026 sack_recv_cache use\n\nKey points of this patch are:\n\n  - In case new SACK information is advance only type, no skb\n    processing below previously discovered highest point is done\n  - Optimize cases below highest point too since there\u0027s no need\n    to always go up to highest point (which is very likely still\n    present in that SACK), this is not entirely true though\n    because I\u0027m dropping the fastpath_skb_hint which could\n    previously optimize those cases even better. Whether that\u0027s\n    significant, I\u0027m not too sure.\n\nCurrently it will provide skipping by walking. Combined with\nRB-tree, all skipping would become fast too regardless of window\nsize (can be done incrementally later).\n\nPreviously a number of cases in TCP SACK processing fails to\ntake advantage of costly stored information in sack_recv_cache,\nmost importantly, expected events such as cumulative ACK and new\nhole ACKs. Processing on such ACKs result in rather long walks\nbuilding up latencies (which easily gets nasty when window is\nhuge). Those latencies are often completely unnecessary\ncompared with the amount of _new_ information received, usually\nfor cumulative ACK there\u0027s no new information at all, yet TCP\nwalks whole queue unnecessary potentially taking a number of\ncostly cache misses on the way, etc.!\n\nSince the inclusion of highest_sack, there\u0027s a lot information\nthat is very likely redundant (SACK fastpath hint stuff,\nfackets_out, highest_sack), though there\u0027s no ultimate guarantee\nthat they\u0027ll remain the same whole the time (in all unearthly\nscenarios). Take advantage of this knowledge here and drop\nfastpath hint and use direct access to highest SACKed skb as\na replacement.\n\nEffectively \"special cased\" fastpath is dropped. This change\nadds some complexity to introduce better coveraged \"fastpath\",\nthough the added complexity should make TCP behave more cache\nfriendly.\n\nThe current ACK\u0027s SACK blocks are compared against each cached\nblock individially and only ranges that are new are then scanned\nby the high constant walk. For other parts of write queue, even\nwhen in previously known part of the SACK blocks, a faster skip\nfunction is used (if necessary at all). In addition, whenever\npossible, TCP fast-forwards to highest_sack skb that was made\navailable by an earlier patch. In typical case, no other things\nbut this fast-forward and mandatory markings after that occur\nmaking the access pattern quite similar to the former fastpath\n\"special case\".\n\nDSACKs are special case that must always be walked.\n\nThe local to recv_sack_cache copying could be more intelligent\nw.r.t DSACKs which are likely to be there only once but that\nis left to a separate patch.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd6dad616d4fe2f08d690f25ca76b0102158fb3a",
      "tree": "1f6955b224b910172411d58e999743b470ec93b4",
      "parents": [
        "9e10c47cb9fe3154416787523f7a0df02133063f"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:49:47 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:07 2008 -0800"
      },
      "message": "[TCP]: Earlier SACK block verification \u0026 simplify access to them\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a47e5a988a575e64c8c9bae65a1dfe3dca7cba32",
      "tree": "30c389efb3a98a7af24150e5f6462f3c379d1e63",
      "parents": [
        "85cc391c0e4584db594bfc4005c63c07c76c5077"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:41:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:03 2008 -0800"
      },
      "message": "[TCP]: Convert highest_sack to sk_buff to allow direct access\n\nIt is going to replace the sack fastpath hint quite soon... :-)\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c0ef877b2c9f543e9fb7953bfe1a0cd3a4eae362",
      "tree": "8e97df63b9e1b3cac8040461c263c0c938f8b994",
      "parents": [
        "de0fa95c14bc4d4b545fae26439371ebfdcb8534"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Thu Nov 15 03:03:19 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:00 2008 -0800"
      },
      "message": "[NET]: Move sock_valbool_flag to socket.c\n\nThe sock_valbool_flag() helper is used in setsockopt to\nset or reset some flag on the sock. This helper is required\nin the net/socket.c only, so move it there.\n\nBesides, patch two places in sys_setsockopt() that repeat\nthis helper functionality manually.\n\nSince this is not a bugfix, but a trivial cleanup, I\nprepared this patch against net-2.6.25, but it also\napplies (with a single offset) to the latest net-2.6.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20fea08b5fb639c4c175b5c74a2bb346c5c5bc2e",
      "tree": "3ffa7e1e82051c6772fc2a01d561e4a5a29bb138",
      "parents": [
        "2a8cc6c89039e0530a3335954253b76ed0f9339a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Nov 14 01:44:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:58 2008 -0800"
      },
      "message": "[NET]: Move Qdisc_class_ops and Qdisc_ops in appropriate sections.\n\nQdisc_class_ops are const, and Qdisc_ops are mostly read.\n\nUsing \"const\" and \"__read_mostly\" qualifiers helps to reduce false\nsharing.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2a8cc6c89039e0530a3335954253b76ed0f9339a",
      "tree": "df7c77496032025bf73d0ee60441e0cc2724ed29",
      "parents": [
        "303065a8545bf7524550bd9564afb48e8a685a2d"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Nov 14 15:56:23 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:58 2008 -0800"
      },
      "message": "[IPV6] ADDRCONF: Support RFC3484 configurable address selection policy table.\n\nPolicy table is implemented as an RCU linear list since we do not expect\nlarge list nor frequent updates.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "294b4baf292197e13d1df1d253efa7ac84ffee3f"
}
