)]}'
{
  "log": [
    {
      "commit": "df054e1d00fdafa2e2920319df326ddb3f0d0413",
      "tree": "4c5178212391dc2b1fe0d329da5e8552bcab4a55",
      "parents": [
        "cfbbeabc8864902c4af1c0cadf0972b352930a26"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Nov 24 21:32:53 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:53 2008 -0800"
      },
      "message": "[CCID2]: Don\u0027t assign negative values to Ack Ratio\n\nSince it makes not sense to assign negative values to Ack Ratio, this\npatch disallows this possibility.\n\nAs a consequence, a Bug test for negative Ack Ratio values becomes obsolete.\n\nFurthermore, a check against overflow (as Ack Ratio may not exceed 2 bytes,\ndue to RFC 4340, 11.3) has been added.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-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": "cfbbeabc8864902c4af1c0cadf0972b352930a26",
      "tree": "90b544b5ad57bd49c25715a595ccd23d227dd714",
      "parents": [
        "3de5489f47febe0333b142e0eb6389b9924b2634"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Nov 24 20:43:59 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:52 2008 -0800"
      },
      "message": "[CCID2]: Fix sequence number arithmetic/comparisons\n\nThis replaces use of normal subtraction with modulo-48 subtraction.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-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": "3de5489f47febe0333b142e0eb6389b9924b2634",
      "tree": "6ac340c65f64245d14c21a4bca03580c3d9789fe",
      "parents": [
        "a47c51044a77124ce66cd8513bba6f4d7673e43d"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Nov 24 20:37:48 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:51 2008 -0800"
      },
      "message": "[CCID2]: Bug in reading Ack Vectors\n\nIn CCID2 the receiver-history is sorted in ascending order of sequence number,\nbut the processing of received Ack Vectors requires the list traversal in the\nopposite direction.\n\nThe current code has a bug in this regard: the list traversal is upwards. As a\nconsequence, only Ack Vectors with a run length of 1 will pass, in all other\nAck Vectors the remaining (acked) sequence numbers are missed, and may later\nfalsely be identified as lost.\n\nNote: This bug is only visible when Ack Ratio \u003e 1, since otherwise the run\n      lengths of Ack Vectors are 0.\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": "a47c51044a77124ce66cd8513bba6f4d7673e43d",
      "tree": "73fc6ff767aa8075e1246bf8d8d2265d87ca7fa0",
      "parents": [
        "e7d0362dd41e760f340c1b500646cc92522bd9d5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 30 04:19:31 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:51 2008 -0800"
      },
      "message": "[ACKVEC]: Reduce length of identifiers\n\nThis is reduces the length of the struct ackvec/ackvec_record fields. It is\na purely text-based replacement:\n\n\ts#dccpavr_#avr_#g;\n\ts#dccpav_#av_#g;\n\nand increases readability somewhat.\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": "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": "f1267347353b586e1a89a7d02c142be975bae699",
      "tree": "10ce244be6cafb6b47f4be04307f8a1c85374af5",
      "parents": [
        "a53eb3feb2718bf906e81be89fae823b9b6157b6"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Nov 23 21:28:44 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:49 2008 -0800"
      },
      "message": "[IPV6]: Correct the comment concerning inetsw6 table\n\nIt seems that net/ipv6/af_inet6.c was copied from net/ipv4/af_inet.c,\nbut one comment was not fixed.\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": "a53eb3feb2718bf906e81be89fae823b9b6157b6",
      "tree": "4f854d526d80c8386d0212f1a12924c8d9b7fbf0",
      "parents": [
        "c28149016c24f4399c0a1eb0ebc15c92611223f0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Fri Nov 23 20:30:01 2007 +0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:49 2008 -0800"
      },
      "message": "[UNIX] Move the unix sock iterators in to proper place\n\nThe first_unix_socket() and next_unix_sockets() are now used\nin proc file and in forall_unix_socets macro only.\n\nThe forall_unix_sockets is not used in this file at all so\nremove it. After this move the helpers to where they really\nbelong, i.e. closer to proc code under the #ifdef CONFIG_PROC_FS\noption.\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": "c28149016c24f4399c0a1eb0ebc15c92611223f0",
      "tree": "3c0aa85d5ddbe9c697f4817879d71e41147d1aa8",
      "parents": [
        "c86ab2b6a5deec2223a606b90c001bedda9d950b"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 10:14:31 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:48 2008 -0800"
      },
      "message": "[DCCP]: Update documentation on ioctls\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-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": "c86ab2b6a5deec2223a606b90c001bedda9d950b",
      "tree": "92cb4b8549f2cc623cb0422e354875944790ba6d",
      "parents": [
        "6d57b43bf810cd66ccf252c04ba65c3e8e56cbb1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 10:13:53 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:47 2008 -0800"
      },
      "message": "[DCCP]: Ignore Ack Vectors / Elapsed Time on DCCP-Request also\n\nSmall update with regard to RFC 4340 (references added as documentation):\non Requests, Ack Vectors / Elapsed Time should be ignored.\nLength handling of Elapsed Time also simplified.\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": "6d57b43bf810cd66ccf252c04ba65c3e8e56cbb1",
      "tree": "cd3ed95ee320ce230ce1c94f5fed52af4df4c452",
      "parents": [
        "e333b3edc489151afda2a4f6c798842c64cb67a4"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 10:11:52 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:46 2008 -0800"
      },
      "message": "[DCCP]: Remove redundant dependency on IP_DCCP\n\nThis cleans up the consequences of an earlier patch which\nintroduced the `if IP_DCCP\u0027 clause into net/dccp/Kconfig.\n\nThe CCID Kconfig menu is sourced within this clause; as a\nconsequence, all tests of type `depends on IP_DCCP\u0027 are now\nredundant.\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": "e333b3edc489151afda2a4f6c798842c64cb67a4",
      "tree": "b392052fe3a4c8cdc4d0026709d1b9cd5e215921",
      "parents": [
        "ebe6f7e73c3efec1de295205806b4550fcb468cd"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 10:09:56 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:46 2008 -0800"
      },
      "message": "[DCCP]: Promote CCID2 as default CCID\n\nThis patch addresses the following problems:\n\n 1. DCCP relies for its proper functioning on having at least one CCID module\n    enabled (as in TCP plugable congestion control). Currently it is possible to\n    disable both CCIDs and thus leave the DCCP module in a compiled, but entirely\n    non-functional state: no sockets can be created when no CCID is available.\n    Furthermore, the protocol is (again like TCP) not intended to be used without\n    CCIDs. Last, a non-empty CCID list is needed for doing CCID feature negotiation.\n\n 2. Internally the default CCID that is advertised by the Linux host is set to CCID2\n    (DCCPF_INITIAL_CCID in include/linux/dccp.h). Disabling CCID2 in the Kconfig\n    menu without changing the defaults leads to a failure `module not found\u0027 when\n    trying to load the dccp module (which internally tries to load the default CCID).\n\n 3. The specification (RFC 4340, sec. 10) treats CCID2 somewhat like a\n    `minimum common denominator\u0027; the specification says that:\n\n    * \"New connections start with CCID 2 for both endpoints\"\n\n    * \"A DCCP implementation intended for general use, such as an implementation in a\n       general-purpose operating system kernel, SHOULD implement at least CCID 2.\n       The intent is to make CCID 2 broadly available for interoperability [...]\"\n\n    Providing CCID2 as minimum-required CCID (like Reno/Cubic in TCP) thus seems reasonable.\n\nHence this patch automatically selects CCID2 when DCCP is enabled. Documentation also added.\n\nDiscussions with Ian McDonald on this subject are gratefully acknowledged.\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": "ebe6f7e73c3efec1de295205806b4550fcb468cd",
      "tree": "5c813563996e0e99e3f612625299cf03f9111d85",
      "parents": [
        "8e8c71f1ab0ca1c4e74efad14533b991524dcb6c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 10:00:17 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:45 2008 -0800"
      },
      "message": "[DCCP]: Update documentation\n\nThis updates the DCCP documentation, following input from Ian McDonald,\nclarifiying the status of DCCP, and adding a note about the test tree.\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": "8e8c71f1ab0ca1c4e74efad14533b991524dcb6c",
      "tree": "ab9cf593ce85ca9eb278ccb1b683fbe459686cbd",
      "parents": [
        "9b91ad2747891767c0efb4fb965c5dfed8d4f88e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 21 09:56:48 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:44 2008 -0800"
      },
      "message": "[DCCP]: Honour and make use of shutdown option set by user\n\nThis extends the DCCP socket API by honouring any shutdown(2) option set by the user.\nThe behaviour is, as much as possible, made consistent with the API for TCP\u0027s shutdown.\n\nThis patch exploits the information provided by the user via the socket API to reduce\nprocessing costs:\n * if the read end is closed (SHUT_RD), it is not necessary to deliver to input CCID;\n * if the write end is closed (SHUT_WR), the same idea applies, but with a difference -\n   as long as the TX queue has not been drained, we need to receive feedback to keep\n   congestion-control rates up to date. Hence SHUT_WR is honoured only after the last\n   packet (under congestion control) has been sent;\n * although SHUT_RDWR seems nonsensical, it is nevertheless supported in the same manner\n   as for TCP (and agrees with test for SHUTDOWN_MASK in dccp_poll() in net/dccp/proto.c).\n\nFurthermore, most of the code already honours the sk_shutdown flags (dccp_recvmsg() for\ninstance sets the read length to 0 if SHUT_RD had been called); CCID handling is now added\nto this by the present patch.\n\nThere will also no longer be any delivery when the socket is in the final stages, i.e. when\none of dccp_close(), dccp_fin(), or dccp_done() has been called - which is fine since at\nthat stage the connection is its final stages.\n\nMotivation and background are on http://www.erg.abdn.ac.uk/users/gerrit/dccp/notes/shutdown\n\nA FIXME has been added to notify the other end if SHUT_RD has been set (RFC 4340, 11.7).\n\nNote: There is a comment in inet_shutdown() in net/ipv4/af_inet.c which asks to \"make\n      sure the socket is a TCP socket\". This should probably be extended to mean\n      `TCP or DCCP socket\u0027 (the code is also used by UDP and raw sockets).\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": "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": "c3ada46a009001e144b29736880962f24ee2afdf",
      "tree": "a475095e2ef5bff2f0d94a24ca94776578fe1c75",
      "parents": [
        "a5358fdc9c52e44d79dcd144375e089e166508d7"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 20 18:09:59 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:43 2008 -0800"
      },
      "message": "[CCID3]: Inline for moving average\n\nThe moving average computation occurs so frequently in the CCID 3 code that\nit merits an inline function  of its own. This is uses a suggestion by\nArnaldo as per http://www.mail-archive.com/dccp@vger.kernel.org/msg01662.html\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": "a5358fdc9c52e44d79dcd144375e089e166508d7",
      "tree": "ddd84d7a6115700ff93f24d367d59c8ad03a9adc",
      "parents": [
        "eb279b79c46be767ecffadaa8ed6be3e3555e93d"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 20 18:01:59 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:42 2008 -0800"
      },
      "message": "[CCID3]: Accurately determine idle \u0026 application-limited periods\n\nThis fixes/updates the handling of idle and application-limited periods in CCID3,\nwhich currently is broken: there is no detection as to how long a sender has been\nidle - there is only one flag which is toggled in between function calls.\n\nBeing obsolete now, the `idle\u0027 flag is removed.\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": "eb279b79c46be767ecffadaa8ed6be3e3555e93d",
      "tree": "f7695df96e2d129beb65263617ac7ed533e1689a",
      "parents": [
        "6c08b2cf4843788e66a5e69b5512538e686ae3e3"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 20 18:00:39 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:42 2008 -0800"
      },
      "message": "[CCID3]: Ignore trivial amounts of elapsed time\n\nThis patch fixes a previously undiscovered bug; the problem is in computing\nthe elapsed time as the time between `receiving\u0027 the packet (i.e. skb enters\nCCID module) and sending feedback:\n\n     - there is no layer-processing, queueing, or delay involved,\n     - hence the elapsed time is in the order of 1 function call\n     - this is in the dimension of maximally 50..100usec\n     - which renders the use of elapsed time almost entirely useless.\n\nThe fix is simply to ignore such trivial amounts of elapsed time.\n\nAs a further advantage, the now useless elapsed_time field can be removed from\nthe socket, which reduces the socket structure by another four bytes.\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": "6c08b2cf4843788e66a5e69b5512538e686ae3e3",
      "tree": "ec4ddefc1600d0fed860670e4d1457632d37b1f1",
      "parents": [
        "ebb53d75657f86587ac8cf3e38ab0c860a8e3d4f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 20 17:33:17 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:41 2008 -0800"
      },
      "message": "[CCID3]: Revert use of MSS instead of s\n\nThis updates the CCID3 code with regard to two instances of using `MSS\u0027 in place of `s\u0027:\n\n 1. The RFC3390-based initial rate: both rfc3448bis as well as the Faster Restart\n    draft now consistently use `s\u0027 instead of MSS.\n\n 2. Now agrees with section 4.2 of rfc3448bis: \"If the sender is ready to send data when\n    it does not yet have a round trip sample, the value of X is set to s bytes per\n    second, for segment size s [...]\"\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": "0c884439dbd7c895cce61c4974c8868b0f6cd4a1",
      "tree": "dabda50a1363739f62242b510dca3e0dd134b15e",
      "parents": [
        "6b4e324164c683a7b4c1bd0be4d85f9a5a0f0e90"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Nov 16 02:17:07 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:39 2008 -0800"
      },
      "message": "mac80211: remove more forgotten code\n\nHopefully that\u0027s the rest. Seems I didn\u0027t do a very thorough job\nremoving the management interface.\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": "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": "48933dea47c947f1d44631ce2292736e6a48eef1",
      "tree": "76d9dbaaeb3c967dd4fa08432937167b922e8af9",
      "parents": [
        "dabeb344f54ab780d152714c18f1cb6b21c471a1"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "hschaa@suse.de",
        "time": "Fri Nov 09 16:26:09 2007 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:37 2008 -0800"
      },
      "message": "mac80211: Remove local-\u003escan_flags\n\nThis patch removes all references to local-\u003escan_flags as these are not\nused anymore since the removal of prism2 ioctls.\n\nSigned-off-by: Helmut Schaa \u003chschaa@suse.de\u003e\nSigned-off-by: Jiri Benc \u003cjbenc@suse.cz\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": "9859a79023d71dd4e56c195a345abc4112abfd02",
      "tree": "5492ce13e237b6fb9cf284d3fdfd062793dc1126",
      "parents": [
        "3ef1355dcb8551730cc71e9ef4363f5c66ccad17"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 23:20:59 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:36 2008 -0800"
      },
      "message": "[NET]: Compact sk_stream_mem_schedule() code\n\nThis function references sk-\u003esk_prot-\u003exxx for many times.\nIt turned out, that there\u0027s so many code in it, that gcc\ncannot always optimize access to sk-\u003esk_prot\u0027s fields.\n\nAfter saving the sk-\u003esk_prot on the stack and comparing\ndisassembled code, it turned out that the function became\n~10 bytes shorter and made less dereferences (on i386 and\nx86_64). Stack consumption didn\u0027t grow.\n\nBesides, this patch drives most of this function into the\n80 columns limit.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ef1355dcb8551730cc71e9ef4363f5c66ccad17",
      "tree": "cd17815dd88eb923b480547efe862ed2ce5f0290",
      "parents": [
        "85b606800be20ceeca36bd8594c1eb228d2fb2f4"
      ],
      "author": {
        "name": "Benjamin Thery",
        "email": "benjamin.thery@bull.net",
        "time": "Mon Nov 19 23:18:16 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:35 2008 -0800"
      },
      "message": "[NET]: Make netns cleanup to run in a separate queue\n\nThis patch adds a separate workqueue for cleaning up a network\nnamespace. If we use the keventd workqueue to execute cleanup_net(),\nthere is a problem to unregister devices in IPv6. Indeed the code\nthat cleans up also schedule work in keventd: as long as cleanup_net()\nhasn\u0027t return, dst_gc_task() cannot run and as long as dst_gc_task() has\nnot run, there are still some references pending on the net devices and\ncleanup_net() can not unregister and exit the keventd workqueue.\n\nSigned-off-by: Benjamin Thery \u003cbenjamin.thery@bull.net\u003e\nSigned-off-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nAcked-by: Denis V. Lunev \u003cden@openvz.org\u003e\nAcked-By: Kirill Korotaev \u003cdev@sw.ru\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "85b606800be20ceeca36bd8594c1eb228d2fb2f4",
      "tree": "4a9f09e3b12583c7c17858b61b77aa26eccd3547",
      "parents": [
        "52427c9d11477d5a2633d81050f52523decf9eff"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Nov 19 22:52:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:35 2008 -0800"
      },
      "message": "[IPVS]: Relax the module get/put in ip_vs_app.c\n\nBoth try_module_get/module_put already handle the module \u003d\u003d NULL\ncase, so no need in manual checking.\n\nThis patch fits both net-2.6 and net-2.6.25.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nAcked-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52427c9d11477d5a2633d81050f52523decf9eff",
      "tree": "e4107505fb7f7041344e0ec77a9ac714383f9b4a",
      "parents": [
        "02d45827fa211093202f96bdd58020cc8687929f"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Nov 19 22:46:51 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:34 2008 -0800"
      },
      "message": "[TUN]: Use iov_length()\n\nUse iov_length() instead of tun\u0027s homemade iov_total().\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "02d45827fa211093202f96bdd58020cc8687929f",
      "tree": "92f985b3040bca65c3247bb89ae667d77b7c26c9",
      "parents": [
        "beb659bd8c9f2ccc8195779383f71088f936bf6e"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Nov 19 22:45:20 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:33 2008 -0800"
      },
      "message": "[NET] net/core/request_sock.c: Remove unused exports.\n\nThis patch removes the following unused EXPORT_SYMBOL\u0027s:\n- reqsk_queue_alloc\n- __reqsk_queue_destroy\n- reqsk_queue_destroy\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beb659bd8c9f2ccc8195779383f71088f936bf6e",
      "tree": "0d07cc0a6e4525720537d08e7f905245f016136a",
      "parents": [
        "42a73808ed4f30b739eb52bcbb33a02fe62ceef5"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon Nov 19 22:43:37 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:33 2008 -0800"
      },
      "message": "[PATCH] IPV4 : Move ip route cache flush (secret_rebuild) from softirq to workqueue\n\nEvery 600 seconds (ip_rt_secret_interval), a softirq flush of the\nwhole ip route cache is triggered. On loaded machines, this can starve\nsoftirq for many seconds and can eventually crash.\n\nThis patch moves this flush to a workqueue context, using the worker\nwe intoduced in commit 39c90ece7565f5c47110c2fa77409d7a9478bd5b (IPV4:\nConvert rt_check_expire() from softirq processing to workqueue.)\n\nAlso, immediate flushes (echo 0 \u003e/proc/sys/net/ipv4/route/flush) are\nusing rt_do_flush() helper function, wich take attention to\nrescheduling.\n\nNext step will be to handle delayed flushes\n(\"echo -1 \u003e/proc/sys/net/ipv4/route/flush\" or \"ip route flush cache\")\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.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": "097e66c578459f79e3a2128c54e9df5194e1419a",
      "tree": "bdc164e849dc33a4321ea51d965a113917bb287b",
      "parents": [
        "d12d01d6b4d197115c4d7736172b5b1ec8b1eb71"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Mon Nov 19 22:29:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:27 2008 -0800"
      },
      "message": "[NET]: Make AF_UNIX per network namespace safe [v2]\n\nBecause of the global nature of garbage collection, and because of the\ncost of per namespace hash tables unix_socket_table has been kept\nglobal.  With a filter added on lookups so we don\u0027t see sockets from\nthe wrong namespace.\n\nCurrently I don\u0027t fold the namesapce into the hash so multiple\nnamespaces using the same socket name will be guaranteed a hash\ncollision.\n\nChanges from v1:\n- fixed unix_seq_open\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": "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": "4b3da706bbe4613d2fe4df8df4d965954ea98964",
      "tree": "aba584cfbf5a70cfbc95ea87faebdbec5ea2c64a",
      "parents": [
        "97c53cacf00d1f5aa04adabfebcc806ca8b22b10"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Nov 19 22:27:40 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:26 2008 -0800"
      },
      "message": "[NET]: Make the netlink methods in rtnetlink handle multiple network namespaces\n\nAfter the previous prep work this just consists of removing checks\nlimiting the code to work in the initial network namespace, and\nupdating rtmsg_ifinfo so we can generate events for devices in\nsomething other then the initial network namespace.\n\nReferring to network other network devices like the IFLA_LINK\nand IFLA_MASTER attributes do, gets interesting if those network\ndevices happen to be in other network namespaces.  Currently\nifindex numbers are allocated globally so I have taken the path\nof least resistance and not still report the information even\nthough the devices they are talking about are invisible.\n\nIf applications start getting confused or when ifindex\nnumbers become local to the network namespace we may need\nto do something different in the future.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Denis V. Lunev \u003cden@openz.org\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": "b854272b3c732316676e9128f7b9e6f1e1ff88b0",
      "tree": "c90c74b9ec068453881f1173da4c57d6bb00a7d9",
      "parents": [
        "ad5d20a63940fcfb40af76ba06148f36d5d0b433"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Sat Dec 01 00:21:31 2007 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:24 2008 -0800"
      },
      "message": "[NET]: Modify all rtnetlink methods to only work in the initial namespace (v2)\n\nBefore I can enable rtnetlink to work in all network namespaces I need\nto be certain that something won\u0027t break.  So this patch deliberately\ndisables all of the rtnletlink methods in everything except the\ninitial network namespace.  After the methods have been audited this\nextra check can be disabled.\n\nChanges from v1:\n- added IPv6 addrlabel protection\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\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ad5d20a63940fcfb40af76ba06148f36d5d0b433",
      "tree": "aa45929a8fe974db343ee62c24ba8cc32f8b06d2",
      "parents": [
        "59891d53f4a31402f8bd1f8c89e0e2c07d51b2cd"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 19 22:00:42 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:23 2008 -0800"
      },
      "message": "[MACVLAN]: Allow setting mac address while device is up\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "59891d53f4a31402f8bd1f8c89e0e2c07d51b2cd",
      "tree": "9123f42aa59540b43ac4621252ac24ab4d1a4b9f",
      "parents": [
        "1b0b04f9fb657a9ee85e3b9388394b9b943f7ffc"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 19 22:00:00 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:23 2008 -0800"
      },
      "message": "[MACVLAN]: Remove unnecessary IFF_UP check\n\nOnly devices that are UP are in the hash, so macvlan_broadcast() doesn\u0027t\nneed to check for IFF_UP.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b0b04f9fb657a9ee85e3b9388394b9b943f7ffc",
      "tree": "490d33480fd79e16eec52cb41158dd51dd74d725",
      "parents": [
        "b209639e8a91aaabedf8bf3716710e6d9ae942e3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Nov 19 21:56:16 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:22 2008 -0800"
      },
      "message": "[IPCONFIG]: Mark vendor_class_identifier as __initdata.\n\nBased upon a suggestion by Francois Romieu.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b209639e8a91aaabedf8bf3716710e6d9ae942e3",
      "tree": "53614de391f67fab8fdbaf13d7d05306c17e9c76",
      "parents": [
        "7a4fbb1fa46e1a84c246e7bcd99bff45935bf114"
      ],
      "author": {
        "name": "Rumen G. Bogdanovski",
        "email": "rumen@voicecho.com",
        "time": "Mon Nov 19 21:53:27 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:21 2008 -0800"
      },
      "message": "[IPVS]: Create synced connections with their real state\n\nWith this patch the synced connections are created with their real state,\nwhich can be changed on the next synchronizations if necessary. This way\non fail-over all the connections will be treated according to their actual\nstate, causing no scheduling problems (the active and the nonactive\nconnections have different weights in the schedulers).\nThe backwards compatibility is preserved and the existing tools will show\nthe true connection states even on the backup director.\n\nSigned-off-by: Rumen G. Bogdanovski \u003crumen@voicecho.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7a4fbb1fa46e1a84c246e7bcd99bff45935bf114",
      "tree": "1aa51598889bc8a4b2130d96cdaca5f65cd27c6e",
      "parents": [
        "c237899d1f8c5bfcfc9d6204052e0e065827ff75"
      ],
      "author": {
        "name": "Rumen G. Bogdanovski",
        "email": "rumen@voicecho.com",
        "time": "Mon Nov 19 21:52:42 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:21 2008 -0800"
      },
      "message": "[IPVS]: Flag synced connections and expose them in proc\n\nThis patch labels the sync-created connections with IP_VS_CONN_F_SYNC\nflag and creates /proc/net/ip_vs_conn_sync to enable monitoring of the\norigin of the connections, if they are local or created by the\nsynchronization.\n\nSigned-off-by: Rumen G. Bogdanovski \u003crumen@voicecho.com\u003e\nSigned-off-by: Simon Horman \u003chorms@verge.net.au\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": "6a4329554c527e86c2745bc001c29bb8d1b8efaf",
      "tree": "e85887daee02c3df9af312c83b085a39c414b218",
      "parents": [
        "c7b6ea24b43afb5749cb704e143df19d70e23dea"
      ],
      "author": {
        "name": "Mattias Nissler",
        "email": "mattias.nissler@gmx.de",
        "time": "Wed Oct 24 23:30:36 2007 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:19 2008 -0800"
      },
      "message": "mac80211: Accept auto txpower setting\n\nThis changes the SIWTXPOWER ioctl to also accept a txpower setting of\n\"automatic\". Since mac80211 currently cannot tell drivers to automatically\nadjust tx power, we select the tx power level of the current channel. While\nthis is kind of a hack, it certainly saves some iwconfig users from headaches.\n\nSigned-off-by: Mattias Nissler \u003cmattias.nissler@gmx.de\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": "33f807ba0d9259e7c75c7a2ce8bd2787e5b540c7",
      "tree": "3ffeae5c29c5aa36605dfe7a00dc0f4f95ef9177",
      "parents": [
        "0953864160bdd28dfe45fd46fa462b4d2d53cb96"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Nov 19 19:24:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:18 2008 -0800"
      },
      "message": "[NETPOLL]: Kill NETPOLL_RX_DROP, set but never tested.\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": "5106930bd6b57402205e3de54dae9476e215b622",
      "tree": "180a77fe9a8bed0718a849ac91c4bc7866912a1e",
      "parents": [
        "0adc9add7709f87995c003c0ccb085076afdc923"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Nov 19 19:18:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:16 2008 -0800"
      },
      "message": "[NETPOLL]: netpoll_poll() cleanup\n\nRestructure code slightly to improve readability:\n  * dereference device once\n  * change obvious while() loop\n  * let poll_napi() handle null list itself\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0adc9add7709f87995c003c0ccb085076afdc923",
      "tree": "06524f12a286746a835fe901d7732e5db391a1f0",
      "parents": [
        "20de20beba6e9bd2e1c83696bfefa3b16cda9a74"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Mon Nov 19 19:15:03 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:16 2008 -0800"
      },
      "message": "[NETPOLL]: Use skb_queue_purge().\n\nUse standard routine for flushing queue.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20de20beba6e9bd2e1c83696bfefa3b16cda9a74",
      "tree": "71de7ffc816b39eb5a1c0e5c3de2eb1167d681bf",
      "parents": [
        "f7ab97f78a5c573e49474edbd260ea6898ddccda"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Fri Nov 16 16:17:05 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:15 2008 -0800"
      },
      "message": "[TCP]: Correct DSACK check placing\n\nPreviously one of the in-block skip branches was missing it.\n\nAlso, drop it from tail-fully-processed case because the next\niteration will do exactly the same thing, i.e., process the\nSACK block that contains the DSACK information.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7ab97f78a5c573e49474edbd260ea6898ddccda",
      "tree": "4d23cf1ac6e8519ffae51cb887701c7521bbd87f",
      "parents": [
        "beca222d1aa09c0b2f56a6af788eacf5c19093da"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 16:09:28 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:14 2008 -0800"
      },
      "message": "[CAN]: Add documentation\n\nThis patch adds documentation for the PF_CAN protocol family.\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": "beca222d1aa09c0b2f56a6af788eacf5c19093da",
      "tree": "fd26f2997ff6b3c5567dcc60af7dd51c64bf4f1d",
      "parents": [
        "1f98eefae8ca451d317b1602f2cedf7515b032ff"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 16:07:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:14 2008 -0800"
      },
      "message": "[CAN]: Add maintainer entries\n\nThis patch adds entries in the CREDITS and MAINTAINERS file for CAN.\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": "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": "ccb29637991fa6b8321a80c2320a71e379aea962",
      "tree": "07a0a58adcb97c9691ec0d2a0feae5b68804ef4a",
      "parents": [
        "ffd980f976e7fd666c2e61bf8ab35107efd11828"
      ],
      "author": {
        "name": "Oliver Hartkopp",
        "email": "oliver.hartkopp@volkswagen.de",
        "time": "Fri Nov 16 15:56:08 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:12 2008 -0800"
      },
      "message": "[CAN]: Add virtual CAN netdevice driver\n\nThis patch adds the virtual CAN bus (vcan) network driver.\nThe vcan device is just a loopback device for CAN frames, no\nreal CAN hardware is involved.\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": "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": "8dbde28d9711475adfe0e9c88505e38743cdc2a7",
      "tree": "0f41aade985a5626ece9c2007fde14c1ced2a065",
      "parents": [
        "68f8353b480e5f2e136c38a511abdbb88eaa8ce2"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Fri Nov 16 03:32:10 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:08 2008 -0800"
      },
      "message": "[NET]: NET_CLS_ROUTE : convert ip_rt_acct to per_cpu variables\n\nip_rt_acct needs 4096 bytes per cpu to perform some accounting.\nIt is actually allocated as a single huge array [4096*NR_CPUS]\n(rounded up to a power of two)\n\nConverting it to a per cpu variable is wanted to :\n - Save space on machines were num_possible_cpus() \u003c NR_CPUS\n - Better NUMA placement (each cpu gets memory on its node)\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\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": "9e10c47cb9fe3154416787523f7a0df02133063f",
      "tree": "620f07ee479703562cb9e58c9119a1f8ed6b0804",
      "parents": [
        "b7d4815f35ab1d0f1eef2521a94a7d4c789290a2"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:44:56 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:06 2008 -0800"
      },
      "message": "[TCP]: Create tcp_sacktag_one().\n\nWorker function that implements the main logic of\nthe inner-most loop of tcp_sacktag_write_queue().\n\nIdea was originally presented by David S. Miller.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b7d4815f35ab1d0f1eef2521a94a7d4c789290a2",
      "tree": "1d8175fd4cb2c29d643c0f76d446fef04521c849",
      "parents": [
        "9f58f3b721f52a4d3f497ea57f830ccd307f1d76"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:43:56 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:05 2008 -0800"
      },
      "message": "[TCP]: Prior_fackets can be replaced by highest_sack seq\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9f58f3b721f52a4d3f497ea57f830ccd307f1d76",
      "tree": "b68450e082170127efb3c9c382884716211e3221",
      "parents": [
        "a47e5a988a575e64c8c9bae65a1dfe3dca7cba32"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:42:54 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:04 2008 -0800"
      },
      "message": "[TCP]: Make lost retrans detection more self-contained\n\nHighest_sack_end_seq is no longer calculated in the loop,\nthus it can be pushed to the worker function altogether\nmaking that function independent of the sacktag.\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": "85cc391c0e4584db594bfc4005c63c07c76c5077",
      "tree": "d62f02260161ca6d0fa03986ae70a24e260d1c75",
      "parents": [
        "f577111302677e6d1448475821cc19ba8835f60e"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:39:31 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:03 2008 -0800"
      },
      "message": "[TCP]: non-FACK SACK follows conservative SACK loss recovery\n\nMany assumptions that are true when no reordering or other\nstrange events happen are not a part of the RFC3517. FACK\nimplementation is based on such assumptions. Previously (before\nthe rewrite) the non-FACK SACK was basically doing fast rexmit\nand then it times out all skbs when first cumulative ACK arrives,\nwhich cannot really be called SACK based recovery :-).\n\nRFC3517 SACK disables these things:\n- Per SKB timeouts \u0026 head timeout entry to recovery\n- Marking at least one skb while in recovery (RFC3517 does this\n  only for the fast retransmission but not for the other skbs\n  when cumulative ACKs arrive in the recovery)\n- Sacktag\u0027s loss detection flavors B and C (see comment before\n  tcp_sacktag_write_queue)\n\nThis does not implement the \"last resort\" rule 3 of NextSeg, which\nallows retransmissions also when not enough SACK blocks have yet\narrived above a segment for IsLost to return true [RFC3517].\n\nThe implementation differs from RFC3517 in these points:\n- Rate-halving is used instead of FlightSize / 2\n- Instead of using dupACKs to trigger the recovery, the number\n  of SACK blocks is used as FACK does with SACK blocks+holes\n  (which provides more accurate number). It seems that the\n  difference can affect negatively only if the receiver does not\n  generate SACK blocks at all even though it claimed to be\n  SACK-capable.\n- Dupthresh is not a constant one. Dynamical adjustments include\n  both holes and sacked segments (equal to what FACK has) due to\n  complexity involved in determining the number sacked blocks\n  between highest_sack and the reordered segment. Thus it\u0027s will\n  be an over-estimate.\n\nImplementation note:\n\ntcp_clean_rtx_queue doesn\u0027t need a lost_cnt tweak because head\nskb at that point cannot be SACKED_ACKED (nor would such\nsituation last for long enough to cause problems).\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f577111302677e6d1448475821cc19ba8835f60e",
      "tree": "4c5f5f0081bb0843a589fcae86ec6dc13dee3526",
      "parents": [
        "b9d86585dc6c9265aa373c7036458fe8aa7627c6"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:35:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:02 2008 -0800"
      },
      "message": "[TCP]: Extend reordering detection to cover CA_Loss partially\n\nThis implements more accurately what is stated in sacktag\u0027s\noverall comment:\n\n  \"Both of these heuristics are not used in Loss state, when\n   we cannot account for retransmits accurately.\"\n\nWhen CA_Loss state is entered, the state changer ensures that\nundo_marker is only set if no TCPCB_RETRANS skbs were found,\nthus having non-zero undo_marker in CA_Loss basically tells\nthat the R-bits still accurately reflect the current state\nof TCP.\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9d86585dc6c9265aa373c7036458fe8aa7627c6",
      "tree": "12783783956ec16230d8a89a012125b4b6ecb156",
      "parents": [
        "c0ef877b2c9f543e9fb7953bfe1a0cd3a4eae362"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Thu Nov 15 19:33:31 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:01 2008 -0800"
      },
      "message": "[TCP]: Move !in_sack test earlier in sacktag \u0026 reorganize if()s\n\nAll intermediate conditions include it already, make them\nsimpler as well.\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": "de0fa95c14bc4d4b545fae26439371ebfdcb8534",
      "tree": "46d2f8c094f9e472545d68addcd7ee947fa82707",
      "parents": [
        "62013dbb8418eb7231c1577d238cf2e76b7696b0"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Nov 14 16:01:43 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:54:00 2008 -0800"
      },
      "message": "[NET]: Use sockfd_lookup_light in the rest of the net/socket.c\n\nSome time ago a sockfd_lookup_light was introduced and\nmost of the socket.c file was patched to use it. However\ntwo routines were left - sys_sendto and sys_recvfrom.\n\nPatch them as well, since this helper does exactly what\nthese two need.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "62013dbb8418eb7231c1577d238cf2e76b7696b0",
      "tree": "dfcfab3399f653bdf04a9bec21acba294fcf075b",
      "parents": [
        "20fea08b5fb639c4c175b5c74a2bb346c5c5bc2e"
      ],
      "author": {
        "name": "Rainer Jochem",
        "email": "rainer.jochem@mpi-sb.mpg.de",
        "time": "Wed Nov 14 02:18:39 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:59 2008 -0800"
      },
      "message": "[IPV4] ipconfig: Implement DHCP Class-identifier\n\nFrom : Rainer Jochem \u003crainer.jochem@mpi-sb.mpg.de\u003e\n\nAcked-by: Patrick McHardy \u003ckaber@trash.net\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"
    },
    {
      "commit": "303065a8545bf7524550bd9564afb48e8a685a2d",
      "tree": "0d5918afb77b1a779b119711eb387bd31756dcc2",
      "parents": [
        "c1ee656ccb3b03304d38f852debccdd1567702e6"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Nov 14 15:56:15 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:57 2008 -0800"
      },
      "message": "[IPV6] ADDRCONF: Allow address selection policy with ifindex.\n\nThis patch allows ifindex to be a key for address selection policy table.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c1ee656ccb3b03304d38f852debccdd1567702e6",
      "tree": "3debe7c94a5230709fe6705ac0f7036274983954",
      "parents": [
        "294b4baf292197e13d1df1d253efa7ac84ffee3f"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Wed Nov 14 15:55:29 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:56 2008 -0800"
      },
      "message": "[IPV6] ADDRCONF: Rename ipv6_saddr_label() to ipv6_addr_label().\n\nThis patch renames ipv6_saddr_label() to ipv6_addr_label() because\naddress label is used for both of source address and destination\naddress.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "294b4baf292197e13d1df1d253efa7ac84ffee3f",
      "tree": "f7f4fc0fa51e937829e2702faffa78b913895f99",
      "parents": [
        "6e23ae2a48750bda407a4a58f52a4865d7308bf5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Nov 14 01:57:47 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:55 2008 -0800"
      },
      "message": "[IPSEC]: Kill afinfo-\u003enf_post_routing\n\nAfter changeset:\n\n\t[NETFILTER]: Introduce NF_INET_ hook values\n\nIt always evaluates to NF_INET_POST_ROUTING.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6e23ae2a48750bda407a4a58f52a4865d7308bf5",
      "tree": "633fd60b2a42bf6fdb86564f0c05a6d52d8dc92b",
      "parents": [
        "1bf06cd2e338fd6fc29169d30eaf0df982338285"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Mon Nov 19 18:53:30 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:55 2008 -0800"
      },
      "message": "[NETFILTER]: Introduce NF_INET_ hook values\n\nThe IPv4 and IPv6 hook values are identical, yet some code tries to figure\nout the \"correct\" value by looking at the address family. Introduce NF_INET_*\nvalues for both IPv4 and IPv6. The old values are kept in a #ifndef __KERNEL__\nsection for userspace compatibility.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1bf06cd2e338fd6fc29169d30eaf0df982338285",
      "tree": "351bf1c8e5063fdfb8c820470972169d398729fe",
      "parents": [
        "60d5fcfb19d8a958fc563e52240cd05ec23f36c9"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Nov 19 18:50:17 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:54 2008 -0800"
      },
      "message": "[IPSEC]: Add async resume support on input\n\nThis patch adds support for async resumptions on input.  To do so, the\ntransform would return -EINPROGRESS and subsequently invoke the\nfunction xfrm_input_resume to resume processing.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60d5fcfb19d8a958fc563e52240cd05ec23f36c9",
      "tree": "f1bb64a18b1b183ad1cdf84f88a42a0b643af720",
      "parents": [
        "d26f398400311982d2433debae85746c348b7d58"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Nov 19 18:47:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:53 2008 -0800"
      },
      "message": "[IPSEC]: Remove nhoff from xfrm_input\n\nThe nhoff field isn\u0027t actually necessary in xfrm_input.  For tunnel\nmode transforms we now throw away the output IP header so it makes no\nsense to fill in the nexthdr field.  For transport mode we can now let\nthe function transport_finish do the setting and it knows where the\nnexthdr field is.\n\nThe only other thing that needs the nexthdr field to be set is the\nheader extraction code.  However, we can simply move the protocol\nextraction out of the generic header extraction.\n\nWe want to minimise the amount of info we have to carry around between\ntransforms as this simplifies the resumption process for async crypto.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d26f398400311982d2433debae85746c348b7d58",
      "tree": "cd1fd0dfbd5a51428dc92ea3dbbb864205a27fa8",
      "parents": [
        "0ebea8ef3559b545c37b016f44e84c3b33e47c39"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:47:08 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:52 2008 -0800"
      },
      "message": "[IPSEC]: Make x-\u003elastused an unsigned long\n\nCurrently x-\u003elastused is u64 which means that it cannot be\nread/written atomically on all architectures.  David Miller observed\nthat the value stored in it is only an unsigned long which is always\natomic.\n\nSo based on his suggestion this patch changes the internal\nrepresentation from u64 to unsigned long while the user-interface\nstill refers to it as u64.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0ebea8ef3559b545c37b016f44e84c3b33e47c39",
      "tree": "7a47787c1b830084ac2d36371490b9e2574e2472",
      "parents": [
        "668dc8af3150f837f7f0461001bbbc0ce25d7bdf"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:45:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:52 2008 -0800"
      },
      "message": "[IPSEC]: Move state lock into x-\u003etype-\u003einput\n\nThis patch releases the lock on the state before calling\nx-\u003etype-\u003einput.  It also adds the lock to the spots where they\u0027re\ncurrently needed.\n\nMost of those places (all except mip6) are expected to disappear with\nasync crypto.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "668dc8af3150f837f7f0461001bbbc0ce25d7bdf",
      "tree": "9ba3534a190bb69b3aebf24aaa4340685fe16539",
      "parents": [
        "b2aa5e9d43a38dcdfa0878ed750cf32f98460278"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Dec 16 15:55:02 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:51 2008 -0800"
      },
      "message": "[IPSEC]: Move integrity stat collection into xfrm_input\n\nSimilar to the moving out of the replay processing on the output, this\npatch moves the integrity stat collectin from x-\u003etype-\u003einput into\nxfrm_input.\n\nThis would eventually allow transforms such as AH/ESP to be lockless.\n\nThe error value EBADMSG (currently unused in the crypto layer) is used\nto indicate a failed integrity check.  In future this error can be\ndirectly returned by the crypto layer once we switch to aead\nalgorithms.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2aa5e9d43a38dcdfa0878ed750cf32f98460278",
      "tree": "e00544bd1aa0ab6e2ccb0696e1a89cd4900130e9",
      "parents": [
        "716062fd4c2f88a33ab409f62a1e7397ad0a7e33"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:44:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:50 2008 -0800"
      },
      "message": "[IPSEC]: Store xfrm states in security path directly\n\nAs it is xfrm_input first collects a list of xfrm states on the stack\nbefore storing them in the packet\u0027s security path just before it\nreturns.  For async crypto, this construction presents an obstacle\nsince we may need to leave the loop after each transform.\n\nIn fact, it\u0027s much easier to just skip the stack completely and always\nstore to the security path.  This is proven by the fact that this\npatch actually shrinks the code.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "716062fd4c2f88a33ab409f62a1e7397ad0a7e33",
      "tree": "73f2618fe99bca3870a0dbdc35acf6466ab3b976",
      "parents": [
        "c6581a457e661b7070e484ad723bbf555b17aca2"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:44:23 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:50 2008 -0800"
      },
      "message": "[IPSEC]: Merge most of the input path\n\nAs part of the work on asynchronous cryptographic operations, we need\nto be able to resume from the spot where they occur.  As such, it\nhelps if we isolate them to one spot.\n\nThis patch moves most of the remaining family-specific processing into\nthe common input code.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6581a457e661b7070e484ad723bbf555b17aca2",
      "tree": "8562bded99fdee996e6b147d938057caf154f25b",
      "parents": [
        "862b82c6f960cc61274d370aa78ce1112f92a83e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:43:43 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:49 2008 -0800"
      },
      "message": "[IPSEC]: Add async resume support on output\n\nThis patch adds support for async resumptions on output.  To do so,\nthe transform would return -EINPROGRESS and subsequently invoke the\nfunction xfrm_output_resume to resume processing.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "862b82c6f960cc61274d370aa78ce1112f92a83e",
      "tree": "51e252e1525dd7d02a695d428890a4c37fae2442",
      "parents": [
        "ef76bc23ef2acf20c8f7f841a542d8ab74c827c6"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:43:11 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:48 2008 -0800"
      },
      "message": "[IPSEC]: Merge most of the output path\n\nAs part of the work on asynchrnous cryptographic operations, we need\nto be able to resume from the spot where they occur.  As such, it\nhelps if we isolate them to one spot.\n\nThis patch moves most of the remaining family-specific processing into\nthe common output code.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ef76bc23ef2acf20c8f7f841a542d8ab74c827c6",
      "tree": "11ae8004f4c25ac91339f13a86fdd9f170faeb2e",
      "parents": [
        "c439cb2e4b13cf1cb2abcd006b906315a3381323"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 19:15:08 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:47 2008 -0800"
      },
      "message": "[IPV6]: Add ip6_local_out\n\nMost callers of the LOCAL_OUT chain will set the IP packet length\nbefore doing so.  They also share the same output function dst_output.\n\nThis patch creates a new function called ip6_local_out which does all\nof that and converts the appropriate users over to it.\n\nApart from removing duplicate code, it will also help in merging the\nIPsec output path.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c439cb2e4b13cf1cb2abcd006b906315a3381323",
      "tree": "7bb9d27214e010d37d6a715d0533a7148a8f429a",
      "parents": [
        "227620e295090629fcb2c46ad3828222ab65438d"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 19:14:00 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:47 2008 -0800"
      },
      "message": "[IPV4]: Add ip_local_out\n\nMost callers of the LOCAL_OUT chain will set the IP packet length and\nheader checksum before doing so.  They also share the same output\nfunction dst_output.\n\nThis patch creates a new function called ip_local_out which does all\nof that and converts the appropriate users over to it.\n\nApart from removing duplicate code, it will also help in merging the\nIPsec output path once the same thing is done for IPv6.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "227620e295090629fcb2c46ad3828222ab65438d",
      "tree": "534162a74628fdfa7a8201cb776a45ca07510e5b",
      "parents": [
        "36cf9acf93e8561d9faec24849e57688a81eb9c5"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:41:28 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:46 2008 -0800"
      },
      "message": "[IPSEC]: Separate inner/outer mode processing on input\n\nWith inter-family transforms the inner mode differs from the outer\nmode.  Attempting to handle both sides from the same function means\nthat it needs to handle both IPv4 and IPv6 which creates duplication\nand confusion.\n\nThis patch separates the two parts on the input path so that each\nfunction deals with one family only.\n\nIn particular, the functions xfrm4_extract_inut/xfrm6_extract_inut\nmoves the pertinent fields from the IPv4/IPv6 IP headers into a\nneutral format stored in skb-\u003ecb.  This is then used by the inner mode\ninput functions to modify the inner IP header.  In this way the input\nfunction no longer has to know about the outer address family.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "36cf9acf93e8561d9faec24849e57688a81eb9c5",
      "tree": "fd4fab84132f1784a23441e03c4a0b9aea6cc43a",
      "parents": [
        "29bb43b4ec4e625b0659186fc8a7c8f8b7c81982"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:40:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:45 2008 -0800"
      },
      "message": "[IPSEC]: Separate inner/outer mode processing on output\n\nWith inter-family transforms the inner mode differs from the outer\nmode.  Attempting to handle both sides from the same function means\nthat it needs to handle both IPv4 and IPv6 which creates duplication\nand confusion.\n\nThis patch separates the two parts on the output path so that each\nfunction deals with one family only.\n\nIn particular, the functions xfrm4_extract_output/xfrm6_extract_output\nmoves the pertinent fields from the IPv4/IPv6 IP headers into a\nneutral format stored in skb-\u003ecb.  This is then used by the outer mode\noutput functions to write the outer IP header.  In this way the output\nfunction no longer has to know about the inner address family.\n\nSince the extract functions are only called by tunnel modes (the only\nmodes that can support inter-family transforms), I\u0027ve also moved the\nxfrm*_tunnel_check_size calls into them.  This allows the correct ICMP\nmessage to be sent as opposed to now where you might call icmp_send\nwith an IPv6 packet and vice versa.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "29bb43b4ec4e625b0659186fc8a7c8f8b7c81982",
      "tree": "8c04e70edb9ef5d0a76793add6b70cf530f41913",
      "parents": [
        "a2deb6d26f16ed7bf787dbd6a58c5d7be47d8db3"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:40:13 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:45 2008 -0800"
      },
      "message": "[INET]: Give outer DSCP directly to ip*_copy_dscp\n\nThis patch changes the prototype of ipv4_copy_dscp and ipv6_copy_dscp so\nthat they directly take the outer DSCP rather than the outer IP header.\nThis will help us to unify the code for inter-family tunnels.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a2deb6d26f16ed7bf787dbd6a58c5d7be47d8db3",
      "tree": "a8c1ef4007cd8d419aa8d8a218092b00dcd64757",
      "parents": [
        "e40b3286158565909692e5914ea4a11bdbcc68c8"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:39:38 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:44 2008 -0800"
      },
      "message": "[IPSEC]: Move x-\u003eouter_mode-\u003eoutput out of locked section\n\nRO mode is the only one that requires a locked output function.  So\nit\u0027s easier to move the lock into that function rather than requiring\neveryone else to run under the lock.\n\nIn particular, this allows us to move the size check into the output\nfunction without causing a potential dead-lock should the ICMP error\nsomehow hit the same SA on transmission.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e40b3286158565909692e5914ea4a11bdbcc68c8",
      "tree": "5ef7b76f1e02406bb839e4887f6a79ff36dde39f",
      "parents": [
        "25ee3286dcbc830a833354bb1d15567956844813"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Nov 13 21:39:08 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:43 2008 -0800"
      },
      "message": "[IPSEC]: Forbid BEET + ipcomp for now\n\nWhile BEET can theoretically work with IPComp the current code can\u0027t\ndo that because it tries to construct a BEET mode tunnel type which\ndoesn\u0027t (and cannot) exist.  In fact as it is it won\u0027t even attach a\ntunnel object at all for BEET which is bogus.\n\nTo support this fully we\u0027d also need to change the policy checks on\ninput to recognise a plain tunnel as a legal variant of an optional\nBEET transform.\n\nThis patch simply fails such constructions for now.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25ee3286dcbc830a833354bb1d15567956844813",
      "tree": "bb5597d9e148f363bf0bbcd1a7269b5f677f0103",
      "parents": [
        "66cdb3ca27323a92712d289fc5edc7841d74a139"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Dec 11 09:32:34 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:53:43 2008 -0800"
      },
      "message": "[IPSEC]: Merge common code into xfrm_bundle_create\n\nHalf of the code in xfrm4_bundle_create and xfrm6_bundle_create are\ncommon.  This patch extracts that logic and puts it into\nxfrm_bundle_create.  The rest of it are then accessed through afinfo.\n\nAs a result this fixes the problem with inter-family transforms where\nwe treat every xfrm dst in the bundle as if it belongs to the top\nfamily.\n\nThis patch also fixes a long-standing error-path bug where we may free\nthe xfrm states twice.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "66cdb3ca27323a92712d289fc5edc7841d74a139"
}
