)]}'
{
  "log": [
    {
      "commit": "fe84f4140f0d24deca8591e38926b95cfd097e62",
      "tree": "5b4c809f131105fddb533776632ff1d546b604a7",
      "parents": [
        "de7fe7874dc55e8226245c50f07dec3c7b285044"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Oct 27 19:16:25 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 28 10:27:00 2010 -0700"
      },
      "message": "dccp: Return-value convention of hc_tx_send_packet()\n\nThis patch reorganises the return value convention of the CCID TX sending\nfunction, to permit more flexible schemes, as required by subsequent patches.\n\nCurrently the convention is\n * values \u003c 0     mean error,\n * a value \u003d\u003d 0   means \"send now\", and\n * a value x \u003e 0  means \"send in x milliseconds\".\n\nThe patch provides symbolic constants and a function to interpret return values.\n\nIn addition, it caps the maximum positive return value to 0xFFFF milliseconds,\ncorresponding to 65.535 seconds.  This is possible since in CCID-3/4 the\nmaximum possible inter-packet gap is fixed at t_mbi \u003d 64 sec.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "baf9e782e1dc4991edecfa3b8700cf8739c40259",
      "tree": "1715d02df95b82af9eb79633d9a498084fd678c3",
      "parents": [
        "93344af44c0f649582bf1e3b5ecc45b3d19e98c2"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Oct 11 20:37:38 2010 +0200"
      },
      "committer": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Oct 12 06:57:41 2010 +0200"
      },
      "message": "dccp: remove unused argument in CCID tx function\n\nThis removes the argument `more\u0027 from ccid_hc_tx_packet_sent, since it was\nnowhere used in the entire code.\n\n(Btw, this argument was not even used in the original KAME code where the\n function initially came from; compare the variable moreToSend in the\n freebsd61-dccp-kame-28.08.2006.patch kept by Emmanuel Lochin.)\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\n"
    },
    {
      "commit": "4874c131d79695e3d372042781a408a1a8a762d8",
      "tree": "e3c6bf89f191b47e019f063d16c3e5d6c4fc0623",
      "parents": [
        "462fb2af9788a82a534f8184abfde31574e1cfa0"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Sep 19 20:06:50 2010 +0200"
      },
      "committer": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Sep 21 12:14:25 2010 +0200"
      },
      "message": "dccp: Add packet type information to CCID-specific option parsing\n\nThis\n 1. adds packet type information to ccid_hc_{rx,tx}_parse_options(). This is\n    necessary, since table 3 in RFC 4340, 5.8 leaves it to the CCIDs to state\n    which options may (not) appear on what packet type.\n\n 2. adds such a check for CCID-3\u0027s {Loss Event, Receive} Rate as specified in\n    RFC 4340 8.3 (\"Receive Rate options MUST NOT be sent on DCCP-Data packets\")\n    and 8.5 (\"Loss Event Rate options MUST NOT be sent on DCCP-Data packets\").\n\n 3. removes an unused argument `idx\u0027 from ccid_hc_{rx,tx}_parse_options(). This\n    is also no longer necessary, since the CCID-specific option-parsing routines\n    are passed every single parameter of the type-length-value option encoding.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\n"
    },
    {
      "commit": "8ed030dd0aa400d18c63861c2c6deb7c38f4edde",
      "tree": "c84de9bd4c14cc9e565b887638d05597e6b6e56c",
      "parents": [
        "f6815077e75c5b7f55b56fc3788e328514d4e72a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Feb 01 02:12:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 03 19:00:30 2010 -0800"
      },
      "message": "dccp: fix bug in cache allocation\n\nThis fixes a bug introduced in commit de4ef86cfce60d2250111f34f8a084e769f23b16\n(\"dccp: fix dccp rmmod when kernel configured to use slub\", 17 Jan): the\nvsnprintf used sizeof(slab_name_fmt), which became truncated to 4 bytes, since\nslab_name_fmt is now a 4-byte pointer and no longer a 32-character array.\n\nThis lead to error messages such as\n FATAL: Error inserting dccp: No buffer space available\n\n \u003e\u003e kernel: [ 1456.341501] kmem_cache_create: duplicate cache cci\ngenerated due to the truncation after the 3rd character.\n\nFixed for the moment by introducing a symbolic constant. Tested to fix the bug.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de4ef86cfce60d2250111f34f8a084e769f23b16",
      "tree": "097eb01bbe375ab3a14f6f7135901b160206f602",
      "parents": [
        "0a931acfd19faf13129a22a46c06f330ecc2a4a3"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Sun Jan 17 17:16:12 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 19 01:59:01 2010 -0800"
      },
      "message": "dccp: fix dccp rmmod when kernel configured to use slub\n\nHey all-\n\tI was tinkering with dccp recently and noticed that I BUG halted the\nkernel when I rmmod-ed the dccp module.  The bug halt occured because the page\nthat I passed to kfree failed the PageCompound and PageSlab test in the slub\nimplementation of kfree.  I tracked the problem down to the following set of\nevents:\n\n1) dccp, unlike all other uses of kmem_cache_create, allocates a string\ndynamically when registering a slab cache.  This allocated string is freed when\nthe cache is destroyed.\n\n2) Normally, (1) is not an issue, but when Slub is in use, it is possible that\ncaches are \u0027merged\u0027.  This process causes multiple caches of simmilar\nconfiguration to use the same cache data structure.  When this happens, the new\nname of the cache is effectively dropped.\n\n3) (2) results in kmem_cache_name returning an ambigous value (i.e.\nccid_kmem_cache_destroy, which uses this fuction to retrieve the name pointer\nfor freeing), is no longer guaranteed that the string it assigned is what is\nreturned.\n\n4) If such merge event occurs, ccid_kmem_cache_destroy frees the wrong pointer,\nwhich trips over the BUG in the slub implementation of kfree (since its likely\nnot a slab allocation, but rather a pointer into the static string table\nsection.\n\nSo, what to do about this.  At first blush this is pretty clearly a leak in the\ninformation that slub owns, and as such a slub bug.  Unfortunately, theres no\nreally good way to fix it, without exposing slub specific implementation details\nto the generic slab interface.  Also, even if we could fix this in slub cleanly,\nI think the RCU free option would force us to do lots of string duplication, not\nonly in slub, but in every slab allocator.  As such, I\u0027d like to propose this\nsolution.  Basically, I just move the storage for the kmem cache name to the\nccid_operations structure.  In so doing, we don\u0027t have to do the kstrdup or\nkfree when we allocate/free the various caches for dccp, and so we avoid the\nproblem, by storing names with static memory, rather than heap, the way all\nother calls to kmem_cache_create do.\n\nI\u0027ve tested this out myself here, and it solves the problem quite well.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e5fd56ca4eb3a130882bbef69d6952ef6aca5c8d",
      "tree": "4e0c6670335f2434fbe8f44554988ca9832a685a",
      "parents": [
        "ddebc973c56b51b4e5d84d606f0430d81b895d67"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Jan 04 21:43:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 21:43:23 2009 -0800"
      },
      "message": "dccp: Clean up ccid.c after integration of CCID plugins\n\nThis patch cleans up after integrating the CCID modules and, in addition,\n\n * moves the if/else cases from ccid_delete() into ccid_hc_{tx,rx}_delete();\n * removes the \u0027gfp\u0027 argument to ccid_new() - since it is always gfp_any().\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ddebc973c56b51b4e5d84d606f0430d81b895d67",
      "tree": "cebe0e4461346072b2063132fc1d9cf8c3e148f1",
      "parents": [
        "6ea2fde13abd3444008ab5e9585f9ed249e6047e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Jan 04 21:42:53 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jan 04 21:42:53 2009 -0800"
      },
      "message": "dccp: Lockless integration of CCID congestion-control plugins\n\nBased on Arnaldo\u0027s earlier patch, this patch integrates the standardised\nCCID congestion control plugins (CCID-2 and CCID-3) of DCCP with dccp.ko:\n\n * enables a faster connection path by eliminating the need to always go \n   through the CCID registration lock;\n\n * updates the implementation to use only a single array whose size equals\n   the number of configured CCIDs instead of the maximum (256);\n\n * since the CCIDs are now fixed array elements, synchronization is no\n   longer needed, simplifying use and implementation.\n\nCCID-2 is suggested as minimum for a basic DCCP implementation (RFC 4340, 10);\nCCID-3 is a standards-track CCID supported by RFC 4342 and RFC 5348.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0049bab5e765aa74cf767a834fa336e19453fc5e",
      "tree": "f3210e13c5645dbedffe90a4b1f1dca787673bb0",
      "parents": [
        "63b8e2861f31868dce9c92fd7444f212a5a8a775"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Mon Dec 08 01:18:05 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Dec 08 01:18:05 2008 -0800"
      },
      "message": "dccp: Remove obsolete parts of the old CCID interface\n\nThe TX/RX CCIDs of the minisock are now redundant: similar to the Ack Vector\ncase, their value equals initially that of the sysctl, but at the end of\nfeature negotiation may be something different.\n\nThe old interface removed by this patch thus has been replaced by the newer\ninterface to dynamically query the currently loaded CCIDs.\n\nAlso removed are the constructors for the TX CCID and the RX CCID, since the\nswitch \"rx \u003c-\u003e non-rx\" is done by the handler in minisocks.c (and the handler\nis the only place in the code where CCIDs are loaded).\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: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "71c262a3dd42dea73700646d969b0af7a4102edf",
      "tree": "7586f62639805bc6b6854b71294e53be66490f2c",
      "parents": [
        "b20a9c24d5c5d466d7e4a25c6f1bedbd2d16ad4f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Nov 23 16:04:59 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 23 16:04:59 2008 -0800"
      },
      "message": "dccp: API to query the current TX/RX CCID\n\nThis provides function to query the current TX/RX CCID dynamically,\nwithout reliance on the minisock value, using dynamic information\navailable in the currently loaded CCID module.\n\nThis query function is then used to\n (a) provide the getsockopt part for getting/setting CCIDs via sockopts;\n (b) replace the current test for \"which CCID is in use\" in probe.c.\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: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d90ebcbfa7f5a8b4e20518c9f94c5c4e4cd3c2e5",
      "tree": "b1fb407c7ee1adbe8215311675d133a83a2d55b5",
      "parents": [
        "e8ef967a54f401ac5e8637b7f7f8bddb006144c4"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Nov 12 00:47:26 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 12 00:47:26 2008 -0800"
      },
      "message": "dccp: Query supported CCIDs\n\nThis provides a data structure to record which CCIDs are locally supported\nand three accessor functions:\n - a test function for internal use which is used to validate CCID requests\n   made by the user;\n - a copy function so that the list can be used for feature-negotiation;   \n - documented getsockopt() support so that the user can query capabilities.\n\nThe data structure is a table which is filled in at compile-time with the\nlist of available CCIDs (which in turn depends on the Kconfig choices).\n\nUsing the copy function for cloning the list of supported CCIDs is useful for\nfeature negotiation, since the negotiation is now with the full list of available\nCCIDs (e.g. {2, 3}) instead of the default value {2}. This means negotiation \nwill not fail if the peer requests to use CCID3 instead of CCID2. \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: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6179983ad30c43313e153b35af52bd9ebd7745c3",
      "tree": "1b1fcbad582d7aef0505910bdbfecaf833726357",
      "parents": [
        "84a97b0af8c29aa5a47cc5271968a9c6004fb91e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Thu Dec 13 23:37:55 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:59 2008 -0800"
      },
      "message": "[DCCP]: Introducing CCMPS\n\nThis introduces a CCMPS field for setting a CCID-specific upper bound on the application payload\nsize, as is defined in RFC 4340, section 14.\n\nOnly the TX CCID is considered in setting this limit, since the RX CCID generates comparatively\nsmall (DCCP-Ack) feedback packets. The CCMPS field includes network and transport layer header\nlengths. The only current CCMPS customer is CCID4 (via RFC 4828).\n\nA wrapper is used to allow querying the CCMPS even at times where the CCID modules may not have\nbeen fully negotiated yet.\n\nIn dccp_sync_mss() the variable `mss_now\u0027 has been renamed into `cur_mps\u0027, to reflect that we are\ndealing with an MPS, but not an MSS.\nSince the DCCP code closely follows the TCP code, the identifiers `dccp_sync_mss\u0027 and\n`dccps_mss_cache\u0027 have been kept, as they have direct TCP counterparts.\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": "9cb2345a8c49ea380437d02bb9fd9f291c0a005d",
      "tree": "d9305b7be0f0a29bdfc252285b7c1079c18a29cf",
      "parents": [
        "f5026fabda54e5ab5d469d8cfac5f46b4d321ce9"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Thu Dec 13 23:31:14 2007 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:57:58 2008 -0800"
      },
      "message": "[DCCP]: Documentation for CCID operations\n\nThis adds documentation for the ccid_operations structure.\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": "65d6c2b42ecc0ca77bb3c0fe27fcbdc84fc7a79a",
      "tree": "f38a54545125cf0c736fd484f03ec3e3ee3d971a",
      "parents": [
        "f6282f4da5eb67e08eff94d73a1911c3a008846a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:05:38 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:49 2006 -0800"
      },
      "message": "[DCCP] ccid: Deprecate ccid_hc_tx_insert_options\n\n The function ccid3_hc_tx_insert_options only does a redundant no-op,\n as the operation\n\n  DCCP_SKB_CB(skb)-\u003edccpd_ccval \u003d hctx-\u003eccid3hctx_last_win_count;\n\n is already performed _unconditionally_ in ccid3_hc_tx_send_packet.\n\n Since there is further no current need for this function, it is removed\n entirely. Since furthermore, there is actually no present need for the\n entire interface function ccid_hc_tx_insert_options, it was decided to\n remove it also, to clean up the interface.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e18b890bb0881bbab6f4f1a6cd20d9c60d66b003",
      "tree": "4828be07e1c24781c264b42c5a75bcd968223c3f",
      "parents": [
        "441e143e95f5aa1e04026cb0aa71c801ba53982f"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:25 2006 -0800"
      },
      "message": "[PATCH] slab: remove kmem_cache_t\n\nReplace all uses of kmem_cache_t with struct kmem_cache.\n\nThe patch was generated using the following script:\n\n\t#!/bin/sh\n\t#\n\t# Replace one string by another in all the kernel sources.\n\t#\n\n\tset -e\n\n\tfor file in `find * -name \"*.c\" -o -name \"*.h\"|xargs grep -l $1`; do\n\t\tquilt add $file\n\t\tsed -e \"1,\\$s/$1/$2/g\" $file \u003e/tmp/$$\n\t\tmv /tmp/$$ $file\n\t\tquilt refresh\n\tdone\n\nThe script was run like this\n\n\tsh replace kmem_cache_t \"struct kmem_cache\"\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6b57c93dc3aa0115b589cb89ef862d46ab9bd95e",
      "tree": "f825b1288d7839ade26225bb0a630540e38ffe41",
      "parents": [
        "a79ef76f4d8424324c2f108824a7398571193f43"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Nov 28 19:55:06 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:31:02 2006 -0800"
      },
      "message": "[DCCP]: Use `unsigned\u0027 for packet lengths\n\nThis patch implements a suggestion by Ian McDonald and\n\n 1) Avoids tests against negative packet lengths by using unsigned int\n    for packet payload lengths in the CCID send_packet()/packet_sent() routines\n\n 2) As a consequence, it removes an now unnecessary test with regard to `len \u003e 0\u0027\n    in ccid3_hc_tx_packet_sent: that condition is always true, since\n      * negative packet lengths are avoided\n      * ccid3_hc_tx_send_packet flags an error whenever the payload length is 0.\n        As a consequence, ccid3_hc_tx_packet_sent is never called as all errors\n        returned by ccid_hc_tx_send_packet are caught in dccp_write_xmit\n\n 3) Removes the third argument of ccid_hc_tx_send_packet (the `len\u0027 parameter),\n    since it is currently always set to skb-\u003elen. The code is updated with regard\n    to this parameter change.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "2d0817d11eaec57435feb61493331a763f732a2b",
      "tree": "7c42229b1cc64e67efe8ed21b82cdc513e638f82",
      "parents": [
        "110bae4efb5ed5565257a0fb9f6d26e6125a1c4b"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 22:32:06 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 22:32:06 2006 -0800"
      },
      "message": "[DCCP] options: Make dccp_insert_options \u0026 friends yell on error\n\nAnd not the silly LIMIT_NETDEBUG and silently return without inserting\nthe option requested.\n\nAlso drop some old debugging messages associated to option insertion.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91f0ebf7b6d5cb2b6e818d48587566144821babe",
      "tree": "505c66f36bd72014d7eacb7a04ea011bae2e9a3a",
      "parents": [
        "f38c39d6ce8226519455a6dfe91c2ad84f363f6f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Mon Mar 20 19:21:44 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 20 19:21:44 2006 -0800"
      },
      "message": "[DCCP] CCID: Improve CCID infrastructure\n\n1. No need for -\u003eccid_init nor -\u003eccid_exit, this is what module_{init,exit}\n   does and anynways neither ccid2 nor ccid3 were using it.\n\n2. Rename struct ccid to struct ccid_operations and introduce struct ccid\n   with a pointer to ccid_operations and rigth after it the rx or tx\n   private state.\n\n3. Remove the pointer to the state of the half connections from struct\n   dccp_sock, now its derived thru ccid_priv() from the ccid pointer.\n\nNow we also can implement the setsockopt for changing the CCID easily as\nno ccid init routines can affect struct dccp_sock in any way that prevents\nother CCIDs from working if a CCID switch operation is asked by apps.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14c850212ed8f8cbb5972ad6b8812e08a0bc901c",
      "tree": "53c88f03e7bbac4064f6e80d462ad484ee038326",
      "parents": [
        "25995ff577675b58dbd848b7758e7bad87411947"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 27 02:43:12 2005 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:21 2006 -0800"
      },
      "message": "[INET_SOCK]: Move struct inet_sock \u0026 helper functions to net/inet_sock.h\n\nTo help in reducing the number of include dependencies, several files were\ntouched as they were getting needed headers indirectly for stuff they use.\n\nThanks also to Alan Menegotto for pointing out that net/dccp/proto.c had\nlinux/dccp.h include twice.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "777b25a2fea7129222eb11fba55c0a67982383ff",
      "tree": "51e4a429fc09a8401371e47db9845d119408e576",
      "parents": [
        "061cb4a0ec34a6e3069d5a1b3c547e55a71498c5"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Mon Oct 10 21:24:20 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 10 21:24:20 2005 -0700"
      },
      "message": "[CCID]: Check if ccid is NULL in the hc_[tr]x_exit functions\n\nFor consistency with ccid_exit and to fix a bug when\nIP_DCCP_UNLOAD_HACK is enabled as the control sock is not associated\nto any CCID.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88f964db6ef728982734356bf4c406270ea29c1d",
      "tree": "7fb9ba2fb646f4917911fed4a0a37cd52a12eae4",
      "parents": [
        "561713cf475de1f671cc89c437927ec008a20209"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Sep 18 00:19:32 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Sep 18 00:19:32 2005 -0700"
      },
      "message": "[DCCP]: Introduce CCID getsockopt for the CCIDs\n\nAllocation for the optnames is similar to the DCCP options, with a\nrange for rx and tx half connection CCIDs.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2babe1f6fea717c36c008c878fe095d1ca5696c1",
      "tree": "f2ce23b6e5898a6bec8726f17104074516559397",
      "parents": [
        "4fded33b3e8177d1d2eec0ccc69af8dfe8b4c3c3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 23 21:52:35 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:05:07 2005 -0700"
      },
      "message": "[DCCP]: Introduce dccp_get_info\n\nAnd also hc_tx and hc_rx get_info functions for the CCIDs to fill in\ninformation that is specific to them.\n\nFor now reusing struct tcp_info, later I\u0027ll try to figure out a better\nsolution, for now its really nice to get this kind of info:\n\n[root@qemu ~]# ./ss -danemi\nState       Recv-Q Send-Q  Local Addr:Port  Peer Addr:Port\nLISTEN      0      0                *:5001          *:*     ino:628 sk:c1340040\n         mem:(r0,w0,f0,t0) cwnd:0 ssthresh:0\nESTAB       0      0       172.20.0.2:5001 172.20.0.1:32785 ino:629 sk:c13409a0\n         mem:(r0,w0,f0,t0) ts rto:1000 rtt:0.004/0 cwnd:0 ssthresh:0 rcv_rtt:61.377\n\nThis, for instance, shows that we\u0027re not congestion controlling ACKs,\nas the above output is in the ttcp receiving host, and ttcp is a one\nway app, i.e. the received never calls sendmsg, so\nccid_hc_tx_send_packet is never called, so the TX half connection\nstays in TFRC_SSTATE_NO_SENT state and hctx_rtt is never calculated,\nstays with the value set in ccid3_hc_tx_init, 4us, as show above in\nmilliseconds (0.004ms), upcoming patches will fix this.\n\nrcv_rtt seems sane tho, matching ping results :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "012e13eac7579fcc7618df4ca1d5af3cdc03748c",
      "tree": "934c71228174d0da4a324afc1b7b001db9978911",
      "parents": [
        "a4beb1b64f5846e216bf2c439022df480151902a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 23 21:51:13 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:04:48 2005 -0700"
      },
      "message": "[CCID]: Make ccid_hc_[rt]x_exit accept NULL arguments\n\nJust like kfree, etc it will just not call the CCID exit\nroutines when the private data area is set to NULL.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7690af3fff7633e40b1b9950eb8489129251d074",
      "tree": "92fa07234a7547c4a7dd74877972b5a291673fcf",
      "parents": [
        "c173437669967301facff151bfeb7bae67354e4c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sat Aug 13 20:34:54 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:59:26 2005 -0700"
      },
      "message": "[DCCP]: Just reflow the source code to fit in 80 columns\n\nAndrew Morton should be happy now 8)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27258ee54f8cd4a43d09319aa5448145afc2cb8d",
      "tree": "4a52d16da47f7ab0777252169406ae85e53488b1",
      "parents": [
        "0d48d93947dd9ea21c5cdc76a8581b06a4a39281"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 09 20:30:56 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:55:18 2005 -0700"
      },
      "message": "[DCCP]: Introduce dccp_write_xmit from code in dccp_sendmsg\n\nThis way it gets closer to the TCP flow, where congestion window\nchecks are done, it seems we can map ccid_hc_tx_send_packet in\ndccp_write_xmit to tcp_snd_wnd_test in tcp_write_xmit, a CCID2\ndecision should just fit in here as well...\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c657876b63cb1d8a2ec06f8fc6c37bb8412e66c",
      "tree": "3cb2732870c9cf8f976cb6fa57e0223f1c648e2a",
      "parents": [
        "c4365c9235f80128c3c3d5993074173941b1c1f0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Tue Aug 09 20:14:34 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:49:46 2005 -0700"
      },
      "message": "[DCCP]: Initial implementation\n\nDevelopment to this point was done on a subversion repository at:\n\nhttp://oops.ghostprotocols.net:81/cgi-bin/viewcvs.cgi/dccp-2.6/\n\nThis repository will be kept at this site for the foreseable future,\nso that interested parties can see the history of this code,\nattributions, etc.\n\nIf I ever decide to take this offline I\u0027ll provide the full history at\nsome other suitable place.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ]
}
