)]}'
{
  "log": [
    {
      "commit": "20c2df83d25c6a95affe6157a4c9cac4cf5ffaac",
      "tree": "415c4453d2b17a50abe7a3e515177e1fa337bd67",
      "parents": [
        "64fb98fc40738ae1a98bcea9ca3145b89fb71524"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "committer": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Fri Jul 20 10:11:58 2007 +0900"
      },
      "message": "mm: Remove slab destructors from kmem_cache_create().\n\nSlab destructors were no longer supported after Christoph\u0027s\nc59def9f222d44bb7e2f0a559f2906191a0862d7 change. They\u0027ve been\nBUGs for both slab and slub, and slob never supported them\neither.\n\nThis rips out support for the dtor pointer from kmem_cache_create()\ncompletely and fixes up every single callsite in the kernel (there were\nabout 224, not including the slab allocator definitions themselves,\nor the documentation references).\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n"
    },
    {
      "commit": "ce8c2293be47999584908069e78bf6d94beadc53",
      "tree": "dfd6909e6866998d2103341b1e1af8c129d0cea8",
      "parents": [
        "41e9d344bf52c57ec16648d08618b61d3f1d4bdc",
        "ee6a99b539a50b4e9398938a0a6d37f8bf911550"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:23:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:23:21 2007 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (25 commits)\n  [TG3]: Fix msi issue with kexec/kdump.\n  [NET] XFRM: Fix whitespace errors.\n  [NET] TIPC: Fix whitespace errors.\n  [NET] SUNRPC: Fix whitespace errors.\n  [NET] SCTP: Fix whitespace errors.\n  [NET] RXRPC: Fix whitespace errors.\n  [NET] ROSE: Fix whitespace errors.\n  [NET] RFKILL: Fix whitespace errors.\n  [NET] PACKET: Fix whitespace errors.\n  [NET] NETROM: Fix whitespace errors.\n  [NET] NETFILTER: Fix whitespace errors.\n  [NET] IPV4: Fix whitespace errors.\n  [NET] DCCP: Fix whitespace errors.\n  [NET] CORE: Fix whitespace errors.\n  [NET] BLUETOOTH: Fix whitespace errors.\n  [NET] AX25: Fix whitespace errors.\n  [PATCH] mac80211: remove rtnl locking in ieee80211_sta.c\n  [PATCH] mac80211: fix GCC warning on 64bit platforms\n  [GENETLINK]: Dynamic multicast groups.\n  [NETLIKN]: Allow removing multicast groups.\n  ...\n"
    },
    {
      "commit": "9e367d859297b9377d65574f538cf52730e9eda8",
      "tree": "c7d4e7c3d1521810981d1623c5100a44600c603f",
      "parents": [
        "81eae375eceba481ca4c605d42913871f093f6d5"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Thu Jul 19 01:48:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:44 2007 -0700"
      },
      "message": "jprobes: remove JPROBE_ENTRY()\n\nAFAICT now that jprobe.entry is a void *, JPROBE_ENTRY doesn\u0027t do anything\nuseful - so remove it ..\n\nI\u0027ve left a do-nothing version so that out-of-tree jprobes code will still\ncompile without modifications.\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nCc: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nAcked-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23248005fbe5fa32a3f6d00cdec1ecfb115d28eb",
      "tree": "06ff4987adb7cdebe1edbd6fe11da0f32bd16fcd",
      "parents": [
        "40b77c943468236c6dfad3e7b94348fe70c70331"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jul 19 10:43:28 2007 +0900"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Thu Jul 19 10:43:28 2007 +0900"
      },
      "message": "[NET] DCCP: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "bb4dbf9e61d0801927e7df2569bb3dd8287ea301",
      "tree": "62d0878b6128fbed608bdee342e705fd371c78cd",
      "parents": [
        "c382bb9d32a55029fb13b118858e25908fab4617"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Jul 10 22:55:49 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jul 10 22:55:49 2007 -0700"
      },
      "message": "[IPV6]: Do not send RH0 anymore.\n\nBased on \u003cdraft-ietf-ipv6-deprecate-rh0-00.txt\u003e.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4fda25a2cd7a18e0ef9f29ba3dd6f6cd9b7ca43f",
      "tree": "ad9e55895315b49c7bcf43a949cb07c4e0c6a8ec",
      "parents": [
        "aa4291108f434a183207e645379414270118dccb"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jul 09 13:18:57 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:18:52 2007 -0700"
      },
      "message": "[DCCP]: Make struct dccp_li_cachep static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "49d66a70cf9fd94057aacd6055334299ab3a5eac",
      "tree": "2feed7f094e3b2a45b7d3a211c2a3b33c61cbfb1",
      "parents": [
        "8132da4d412ad51c34bad11133a8f0941e2a1972"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Jun 16 13:48:50 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:34 2007 -0700"
      },
      "message": "[CCID3]: Fix a bug in the send time processing\n\nccid3_hc_tx_send_packet currently returns 0 when the time difference between\ncurrent time and t_nom is less than 1000 microseconds.\n\nIn this case the packet is sent immediately; but, unlike other packets that can\nbe emitted on first attempt, it will not have its window counter updated and\nits options set as required. This is a bug.\n\nFix: Require the time difference to be at least 1000 microseconds. The\nalgorithm then converges: time differences \u003e 1000 microseconds trigger the\ntimer in dccp_write_xmit; after timer expiry this function is tried again; when\nthe time difference is less than 1000, the packet will have its options added\nand window counter updated as required.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "8132da4d412ad51c34bad11133a8f0941e2a1972",
      "tree": "9c8539609c1fce671d3b060cef98ad98e0c59fe6",
      "parents": [
        "1e180f726a58089d15637b5495fecbad8c50c833"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Jun 16 13:34:02 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:27 2007 -0700"
      },
      "message": "[CCID3]: Sending time: update to ktime_t\n\nThis updates the computation of t_nom and t_last_win_count to use the newer\ngettimeofday interface.\n\nCommitter note: used ktime_to_timeval to set the \u0027now\u0027 variable to t_ld in\n                ccid3hctx_no_feedback_timer\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "dd36a9aba44e4ddbac011de2cb14a70444487303",
      "tree": "6a218c6b7300c8b710ecc1ea2788cad6fe2f53b1",
      "parents": [
        "cc4d6a3a34ce3976d7d01d044f3093cddc2921c2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 28 18:56:44 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:24 2007 -0700"
      },
      "message": "loss_interval: make struct dccp_li_hist_entry private\n\nnet/dccp/ccids/lib/loss_interval.c is the only place where this struct is used.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "cc4d6a3a34ce3976d7d01d044f3093cddc2921c2",
      "tree": "ddf0a5d4aaac4661f3bb1fadd60082febc21b9ef",
      "parents": [
        "c70b729e662a1b3ee2ef5370c1e4c9bc3ddc239f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 28 18:53:08 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:23 2007 -0700"
      },
      "message": "loss_interval: Nuke dccp_li_hist\n\nIt had just a slab cache, so, for the sake of simplicity just make\ndccp_trfc_lib module init routine create the slab cache, no need for users of\nthe lib to create a private loss_interval object.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c70b729e662a1b3ee2ef5370c1e4c9bc3ddc239f",
      "tree": "eddbd3ddd84e5ebfc0513f8c4dbe23c9eabd8492",
      "parents": [
        "8c281780c6f867460c84bd78d9c3885c10f00ae1"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 28 18:25:12 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:22 2007 -0700"
      },
      "message": "loss_interval: Make dccp_li_hist_entry_{new,delete} private\n\nNot used outside the loss_interval code anymore.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "8c281780c6f867460c84bd78d9c3885c10f00ae1",
      "tree": "01e690f1fb96bb671dc2c730c2c5391a96931aa4",
      "parents": [
        "cc0a910b942d11069d35f52b2c0ed0e229e2fb46"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 28 18:21:53 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:21 2007 -0700"
      },
      "message": "loss_interval: unexport dccp_li_hist_interval_new\n\nNow its only used inside the loss_interval code.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "cc0a910b942d11069d35f52b2c0ed0e229e2fb46",
      "tree": "9d378b79a25b7c5f03ce9f713f00648781953dbd",
      "parents": [
        "878ac60023c4ba11a7fbf0b1dfe07b8472c0d6ce"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jun 14 17:41:28 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:20 2007 -0700"
      },
      "message": "[DCCP] loss_interval: Move ccid3_hc_rx_update_li to loss_interval\n\nRenaming it to dccp_li_update_li.\n\nAlso based on previous work by Ian McDonald.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "878ac60023c4ba11a7fbf0b1dfe07b8472c0d6ce",
      "tree": "91c32ebc926cc34906dbe2766da169d4302aff92",
      "parents": [
        "d83258a3da1d3c7ae7b75549c8bf7ed689562c62"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jun 14 12:24:46 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:19 2007 -0700"
      },
      "message": "[CCID3]: Pass ccid3_li_hist to ccid3_hc_rx_update_li\n\nNow ccid3_hc_rx_update_li is ready to be moved to\nnet/dccp/ccids/lib/loss_interval, it uses the same interface as the other\nfunctions there.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d83258a3da1d3c7ae7b75549c8bf7ed689562c62",
      "tree": "e19e448fd411c9006e96d6add09ed56d8c5a9e4e",
      "parents": [
        "6bc7efe8efa627077f8f65d01dbb762fc9356a2f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 28 18:04:14 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:18 2007 -0700"
      },
      "message": "Remove accesses to ccid3_hc_rx_sock in ccid3_hc_rx_{update,calc_first}_li\n\nThis is a preparatory patch for moving these loss interval functions from\nnet/dccp/ccids/ccid3.c to net/dccp/ccids/lib/loss_interval.c.\n\nBased on a patch by Ian McDonald.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "6bc7efe8efa627077f8f65d01dbb762fc9356a2f",
      "tree": "0e84e3602911a290e0d49bd5523cc2b09c479d0a",
      "parents": [
        "e961811fcde4202ae5c3c9ce81dcfc244e8959bb"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Mon May 28 16:37:45 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:06 2007 -0700"
      },
      "message": "loss_interval: Fix timeval initialisation\n\nWhen compiling with EXTRA_CFLAGS\u003d-W noticed that tstamp is not initialised\ncorrectly in dccp_li_calc_first_li.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\n"
    },
    {
      "commit": "e961811fcde4202ae5c3c9ce81dcfc244e8959bb",
      "tree": "8d289d7c5c4f0724e454170b16fb42889587d541",
      "parents": [
        "b2f41ff4139c0df8d06f352acc962a62fc07a0c3"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Mon May 28 16:32:26 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:05 2007 -0700"
      },
      "message": "Fix dccp_sum_coverage\n\nWhen compiling with EXTRA_CFLAGS\u003d-W notice that we have signed/unsigned issue\nin dccp.h.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\n"
    },
    {
      "commit": "b2f41ff4139c0df8d06f352acc962a62fc07a0c3",
      "tree": "6c099cbecccb37aafee2c0bbd2d6cfd0e1f3d5b1",
      "parents": [
        "07b5b17e157b7018d0ca40ca0d1581a23096fb45"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Mon May 28 12:23:29 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jul 10 22:15:04 2007 -0700"
      },
      "message": "ccid3: Update copyrights\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\n"
    },
    {
      "commit": "75202e76893c11ce7f8bcc9a07f994d71e3d5113",
      "tree": "71d9e0aaabb6b3904c477f8ee253484245e38d49",
      "parents": [
        "60468d5b5b6931b4d4d704e26b5f17a6e476e6f8"
      ],
      "author": {
        "name": "Bill Nottingham",
        "email": "notting@redhat.com",
        "time": "Thu May 31 21:33:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Jun 03 18:08:47 2007 -0700"
      },
      "message": "[NET]: Fix comparisons of unsigned \u003c 0.\n\nRecent gcc versions emit warnings when unsigned variables are\ncompared \u003c 0 or \u003e\u003d 0.\n\nSigned-off-by: Bill Nottingham \u003cnotting@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "14e50e57aedb2a89cf79b77782879769794cab7b",
      "tree": "46cbdab9c8007cea0821294c9d397214b38ea4c8",
      "parents": [
        "04efb8787e4d8a7b21a61aeb723de33154311256"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 24 18:17:54 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 24 18:17:54 2007 -0700"
      },
      "message": "[XFRM]: Allow packet drops during larval state resolution.\n\nThe current IPSEC rule resolution behavior we have does not work for a\nlot of people, even though technically it\u0027s an improvement from the\n-EAGAIN buisness we had before.\n\nRight now we\u0027ll block until the key manager resolves the route.  That\nworks for simple cases, but many folks would rather packets get\nsilently dropped until the key manager resolves the IPSEC rules.\n\nWe can\u0027t tell these folks to \"set the socket non-blocking\" because\nthey don\u0027t have control over the non-block setting of things like the\nsockets used to resolve DNS deep inside of the resolver libraries in\nlibc.\n\nWith that in mind I coded up the patch below with some help from\nHerbert Xu which provides packet-drop behavior during larval state\nresolution, controllable via sysctl and off by default.\n\nThis lays the framework to either:\n\n1) Make this default at some point or...\n\n2) Move this logic into xfrm{4,6}_policy.c and implement the\n   ARP-like resolution queue we\u0027ve all been dreaming of.\n   The idea would be to queue packets to the policy, then\n   once the larval state is resolved by the key manager we\n   re-resolve the route and push the packets out.  The\n   packets would timeout if the rule didn\u0027t get resolved\n   in a certain amount of time.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b07a95a5be77dc1291de12b216f930aee04eb4f",
      "tree": "16778348c496625d9374db9c2395aec3e514e152",
      "parents": [
        "cb283ead710c342d9856af8507e2a42bf5c6576c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed May 23 17:43:11 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 24 16:36:55 2007 -0700"
      },
      "message": "[DCCP]: Fix build warning when debugging is disabled.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3df25df354d0e9bae9b83be5a828b6756db9bcf4",
      "tree": "03df18d4270a9d4eec58c064de515f7283595b01",
      "parents": [
        "7e7a2d07b0faf13b2f7ad982c77ca30c9e9ee0e4"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@gmx.de",
        "time": "Wed May 23 14:46:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu May 24 16:36:46 2007 -0700"
      },
      "message": "[DCCP]: Use menuconfig objects.\n\nUse menuconfigs instead of menus, so the whole menu can be disabled at\nonce instead of going through all options.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@gmx.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ef8d0aeafda8388dd51f2671b7059192b1e5a5f",
      "tree": "47886cdc9f20fb601bdace40a037335ceaa404cb",
      "parents": [
        "1c8ea5aee0b16409295d96a5e8984bd902f06a77"
      ],
      "author": {
        "name": "Milind Arun Choudhary",
        "email": "milindchoudhary@gmail.com",
        "time": "Thu Apr 26 01:37:44 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 26 01:37:44 2007 -0700"
      },
      "message": "[NET]: SPIN_LOCK_UNLOCKED cleanup in drivers/atm, net\n\nSPIN_LOCK_UNLOCKED cleanup,use __SPIN_LOCK_UNLOCKED instead\n\nSigned-off-by: Milind Arun Choudhary \u003cmilindchoudhary@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f73f7097c986aab159491dcded7fc918e76e9ec3",
      "tree": "8064000a2ed8c4567e56e1c666c2464728305d3a",
      "parents": [
        "b2449fdc30ccac550344df5e60d38bb8427b109c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Apr 20 13:56:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:55 2007 -0700"
      },
      "message": "[DCCP]: Debug statements for Elapsed Time option\n\nThis prints the value of the parsed Elapsed Time when received via a\nTimestamp Echo option [RFC 4342, 13.3].\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@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b2449fdc30ccac550344df5e60d38bb8427b109c",
      "tree": "e0371a1474a6d28cbb2826c2401abf2a1a7fcbcf",
      "parents": [
        "cb8c181f288a1157bc717cc7a02412d4d1dc19bc"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Apr 20 13:02:55 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:54 2007 -0700"
      },
      "message": "[DCCP]: Fix bug in the calculation of very low sending rates\n\nThis fixes an error in the calculation of t_ipi when X converges towards\nvery low sending rates (between 1 and 64 bytes per second).\n\nAlthough this case may not sound likely, it can be reproduced by connecting,\nhitting enter (1 byte sent) and waiting for some time, during which the\nnofeedback timer halves the sending rate until finally it reaches the region\n1..64 bytes/sec. Computing X is handled correctly (tested separately); but by\ndividing X _before_ entering the calculation of t_ipi, X becomes zero as\na result.  This in turn triggers a BUG condition caught in scaled_div().\n\nFixed by replacing with equivalent statement and explicit typecast for good\nmeasure.\n\nCalculation verified and effect of patch tested - reduced never below 1 byte\nper 64 seconds afterwards, i.e. not allowing divide-by-zero.\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@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "30833ffead66e1f0052150a51db0b45151189ac1",
      "tree": "2fcd4907a8d6295455c686e54aa6d02fa9533934",
      "parents": [
        "89560b53b92a07c529e13a462aa7fd87a844f1f5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:31:56 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:27:04 2007 -0700"
      },
      "message": "[CCID3]: Use initial RTT sample from SYN exchange\n\nThe patch follows the following recommendation made in an erratum to RFC 4342:\n\n  \"Senders MAY additionally make use of other available RTT measurements,\n   including those from the initial Request-Response packet exchange.\"\n\nIt implements larger initial windows with regard to this inital RTT measurement,\nusing the mechanism suggested in draft-ietf-dccp-rfc3448bis, section 4.2.\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": "89560b53b92a07c529e13a462aa7fd87a844f1f5",
      "tree": "89409bee68da1ee44b7945315efecd779d7fe60a",
      "parents": [
        "7dfee1a9c07f80a82aa5fbad340146f2b5c794b4"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:27:17 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:27:02 2007 -0700"
      },
      "message": "[DCCP]: Sample RTT from SYN exchange\n\nFunction:\n"
    },
    {
      "commit": "7dfee1a9c07f80a82aa5fbad340146f2b5c794b4",
      "tree": "e59036f22f10b1fa8527537158a435d86f82f048",
      "parents": [
        "4712a792ee661921374c163eb6a4d06e33fd305f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:24:37 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:27:01 2007 -0700"
      },
      "message": "[CCID3]: Use function for RTT sampling\n\nThis replaces the existing occurrences of RTT sampling with\nthe use of the new function dccp_sample_rtt.\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": "4712a792ee661921374c163eb6a4d06e33fd305f",
      "tree": "0c5ecf7973a195bff36101904417bb7b90fd18aa",
      "parents": [
        "0c150efb280986db7958cf2a559b91d826241e59"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:23:18 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:27:00 2007 -0700"
      },
      "message": "[DCCP]: Provide function for RTT sampling\n\nA recurring problem, in particular in the CCID code, is that RTT samples\nfrom packets with timestamp echo and elapsed time options need to be taken.\n\nThis service is provided via a new function dccp_sample_rtt in this patch.\nFurthermore, to protect against `insane\u0027 RTT samples, the sampled value\nis bounded between 100 microseconds and 4 seconds - for which u32 is sufficient.\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": "0c150efb280986db7958cf2a559b91d826241e59",
      "tree": "f74291b4ea523ad2461192f680b892d2e19f2652",
      "parents": [
        "a21f9f96cd035b0d9aec32d80ea0152672fbed42"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:19:07 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:59 2007 -0700"
      },
      "message": "[CCID3]: Handle Idle and Application-Limited periods\n\nThis updates the code with regard to handling idle and application-limited\nperiods as specified in [RFC 4342, 5.1].\n\nBackground:\n"
    },
    {
      "commit": "a21f9f96cd035b0d9aec32d80ea0152672fbed42",
      "tree": "fa868d6bc48b46eae10ed864e74bb9f790579dfc",
      "parents": [
        "1761f7d7fea32c2290710f5c0afa0c3d93220593"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:12:10 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:58 2007 -0700"
      },
      "message": "[CCID3]: Wrap computation of RFC3390-initial rate into separate function\n\nThe CCID 3 and TFRC specs (RFC 4342, RFC 3448, draft-3448bis) make frequent\nreference to the computation of the RFC-3390 initial sending rate:\n\n  1. Initial sending rate when RTT is known (RFC 4342, p. 6)\n  2. Response to Idle/Application-Limited periods (RFC 4342, 5.1)\n\nThis warrants putting the code into its own function, for later code reuse.\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": "1761f7d7fea32c2290710f5c0afa0c3d93220593",
      "tree": "834c1eefb9e75ea708be860ec372b0554b550614",
      "parents": [
        "fddc2feb94c1f734dc27d44d166e97ab2e005ec1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:04:30 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:57 2007 -0700"
      },
      "message": "[CCID3]: Remove build warnings for 64bit\n\nThis clears the following sparc64 build warnings:\n 1) warning: format \"%ld\" expects type \"long int\", but argument 3 has type \"suseconds_t\"\n 2) warning: format \"%llu\" expects type \"long long unsigned int\", but argument 3 has type \"__u64\"\nFixed by using typecast to unsigned. This is argued to be safe, since the quantities, after\nde-scaling (factor 2^6) fit all in u32.\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": "fddc2feb94c1f734dc27d44d166e97ab2e005ec1",
      "tree": "6ae44bcb497d25bd988e3ae44bc745d02132d3a5",
      "parents": [
        "f2645101350c6db66f0a1e72648909cc411f2b38"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:02:10 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:56 2007 -0700"
      },
      "message": "[CCID3]: More to see in dccp_probe\n\nThis adds a few more fields of interest to /proc/net/dccpprobe, the following output ensues:\n\n1           2          3           4     5  6     7   8        9        10   11\nsec.usec   src:sport   dst:dport   size  s  rtt   p   X_calc   X_recv   X    t_ipi\n\nAlso made the formatting consistent.\n\nScripts that go with this can be downloaded from http://139.133.210.30/users/gerrit/dccp/dccp_probe/\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": "6626e3628fe42837f733d103e194c6b4473d8669",
      "tree": "a37b19400561134b2fc28498b39e453db61c35ca",
      "parents": [
        "ac12b0c49571fe4c3a2f4957ed494da316d558be"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 15:00:28 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:54 2007 -0700"
      },
      "message": "[DCCP]: More debug information for dccp_wait_for_ccid\n\nThis adds more detail in the wait_for_ccid packet scheduling loop.\nIn particular, it informs about (i) when delay is used and (ii) why\na packet is discarded.\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": "ac12b0c49571fe4c3a2f4957ed494da316d558be",
      "tree": "47f6b91bb2c36f954800ae795344288ee3755a9a",
      "parents": [
        "1266adee12d25385a25e1c57b1e3ff05a90bb4d7"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 14:59:23 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:53 2007 -0700"
      },
      "message": "[DCCP]: Always use debug-toggle parameters\n\nCurrently debugging output (when configured) is automatically enabled when\nDCCP modules are compiled into the kernel rather than built as loadable modules.\nThis is not necessary, since the module parameters in this case become kernel\ncommandline parameters, e.g. DCCP or CCID3 debug output can be enabled for a\nstatic build by appending the following at the boot prompt:\n\n\tdccp.dccp_debug\u003d1 \tdccp_ccid3.ccid3_debug\u003d1\n\nThis patch therefore does away with the more complicated way of always enabling\ndebug output for static builds\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": "1266adee12d25385a25e1c57b1e3ff05a90bb4d7",
      "tree": "eb42be8ede3ca9d5ac00076ebee20be5771c30ee",
      "parents": [
        "8699be7d240e37c91a84bdf32e79941d72bc7bd5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 14:56:11 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:52 2007 -0700"
      },
      "message": "[CCID3]: Remove race condition and update t_ipi when `s\u0027 changes\n\nThis:\n\n 1. removes a race condition in the access to the scheduled send time t_nom which\n    results from allowing asynchronous r/w access to t_nom without locks;\n\n 2. updates the inter-packet interval t_ipi \u003d s/X when `s\u0027 changes, following a\n    suggestion by Ian McDonald.\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": "8699be7d240e37c91a84bdf32e79941d72bc7bd5",
      "tree": "cad4d9eb3b408899b7476ce9abc7de93b167ce87",
      "parents": [
        "551dc5f7a11cfb66685bfd36cbbdb209c5a11d14"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Tue Mar 20 14:49:20 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:51 2007 -0700"
      },
      "message": "[CCID3]: More verbose debugging\n\nThis adds a few debugging statements to ccid3.c\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\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": "551dc5f7a11cfb66685bfd36cbbdb209c5a11d14",
      "tree": "54fe446ac294e4bbe8229bb5dc9921e84a468916",
      "parents": [
        "371fe7779cad6557a58df9a1b5543652e067400f"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Tue Mar 20 14:46:52 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:50 2007 -0700"
      },
      "message": "[CCID3]: Fix use of invalid loss intervals\n\nThis fixes a bug which uses an invalid comparison.\nThe bug resulted in the use of invalid loss intervals.\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nAcked-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": "371fe7779cad6557a58df9a1b5543652e067400f",
      "tree": "037be0b166906ff91f2b4a7c7d11a01180a0db61",
      "parents": [
        "9bf17475eb658a920125bd8f05edf9c57c2dd950"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 14:28:44 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:49 2007 -0700"
      },
      "message": "[CCID3]: Use MSS for larger initial windows\n\nThis improves the slow-start phase by using the MSS\n(as suggested in RFC 4342, sec. 5) instead of the packet size s.\nAlso figured out that __u32 is ample resource enough.\n\nAfter applying, I got the following in the logs:\n\n  ccid3_hc_tx_packet_recv: client(f7421700), s\u003d6, MSS\u003d1424, w_init\u003d4380, R_sample\u003d176us, X\u003d24886363\n\nHad the previous variant been used, w_init would have been as low as 24.\n\nCommitter note: removed unneeded cast to unsigned long long that was\n                causing a compiler warning on 64bit architectures.\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": "9bf17475eb658a920125bd8f05edf9c57c2dd950",
      "tree": "2e3e66c47ad4326771118397ed52d0231b503595",
      "parents": [
        "353b13e10a3f1a18c6b33858fb3337bcd2692eb5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 13:11:24 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:48 2007 -0700"
      },
      "message": "[CCID3]: Re-order CCID 3 source file\n\nNo code change at all.\nThis splits ccid3.c into a RX and a TX section, so that the file has an\norganisation similar to the other ones (e.g. packet_history.{h,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: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "353b13e10a3f1a18c6b33858fb3337bcd2692eb5",
      "tree": "de428797382777f58a30648a64296825f03cd8a5",
      "parents": [
        "8d13bf9a0bd4984756e234ce54299b92acefab99"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 13:10:15 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:47 2007 -0700"
      },
      "message": "[CCID3]: Remove redundant `len\u0027 test\n\nSince CCID3 avoids  sending 0-byte data packets (cf. ccid3_hc_tx_send_packet),\ntesting for zero-payload length, as performed by ccid3_hc_tx_update_s, is\nredundant - hence removed by this patch.\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": "8d13bf9a0bd4984756e234ce54299b92acefab99",
      "tree": "3a5fa39fec52b934d0d86afe93423cb9bb5ded20",
      "parents": [
        "b16be51b5e5d75cec71b18ebc75f15a4734c62ad"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 13:08:19 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:46 2007 -0700"
      },
      "message": "[DCCP]: Remove ambiguity in the way before48 is used\n\nThis removes two ambiguities in employing the new definition of before48,\nfollowing the analysis on http://www.mail-archive.com/dccp@vger.kernel.org/msg01295.html\n\n (1) Updating GSR when P.seqno \u003e\u003d S.SWL\n     With the old definition we did not update when P.seqno and S.SWL are 2^47 apart. To\n     ensure the same behaviour as with the old definition, this is replaced with the\n     equivalent condition dccp_delta_seqno(S.SWL, P.seqno) \u003e\u003d 0\n\n (2) Sending SYNC when P.seqno \u003e\u003d S.OSR\n     Here it is debatable whether the new definition causes an ambiguity: the case is\n     similar to (1); and to have consistency with the case (1), we use the equivalent\n     condition dccp_delta_seqno(S.OSR, P.seqno) \u003e\u003d 0\n\nDetailed Justification\n"
    },
    {
      "commit": "b16be51b5e5d75cec71b18ebc75f15a4734c62ad",
      "tree": "2e7cd0225a4d30895d0b188c97e563de149cbe72",
      "parents": [
        "d52de17b8cf36d43a9d6977e7861a9f415541c6b"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 13:03:47 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:45 2007 -0700"
      },
      "message": "[DCCP]: Fix for follows48\n\nThe follows48 relation identifies whether 48-bit sequence number\nx is the direct successor of y. Currently, it does not handle cases\nof the following type correctly:\n\n\tfollows48(0x(prefix)10000LL, 0x(prefix)0FFFFLL)\n\nwhere prefix is an arbitrary hex sequence of up to 7 digits.\n\nThis is fixed by reusing the new dccp_delta_seqno function.\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": "d52de17b8cf36d43a9d6977e7861a9f415541c6b",
      "tree": "9746b89deb8b48b043a2de4016145c97f45765ad",
      "parents": [
        "0aec51c86986f61de26dd04913667af544a8b8eb"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 13:00:26 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:44 2007 -0700"
      },
      "message": "[DCCP]: Make `before\u0027 relation unambiguous\n\nProblem:\n"
    },
    {
      "commit": "0aec51c86986f61de26dd04913667af544a8b8eb",
      "tree": "41c39d76acc58b8cebf7e36d69b7b528bb245289",
      "parents": [
        "6b811d43f6cc9eccdfc011a99f8571df2abc46d1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 12:45:59 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:43 2007 -0700"
      },
      "message": "[DCCP]: Make dccp_delta_seqno return signed numbers\n\nProblem:\n"
    },
    {
      "commit": "6b811d43f6cc9eccdfc011a99f8571df2abc46d1",
      "tree": "58e7f27415faf9ad6761bab6e51a7003139190f9",
      "parents": [
        "8b5be26831b973d8013e8b4c9860d9694310cdc6"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 20 12:26:51 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:42 2007 -0700"
      },
      "message": "[DCCP]: 48-bit sequence number arithmetic\n\nThis patch\n * organizes the sequence arithmetic functions into one corner of dccp.h\n * performs a small modification of dccp_set_seqno to make it more widely reusable\n   (now it is safe to use any number, since it performs modulo-2^48 assignment)\n * adds functions and generic macros for 48-bit sequence arithmetic:\n \t--48 bit complement\n \t--modulo-48 addition and modulo-48 subtraction\n\t--dccp_inc_seqno now a special case of add48\nConstants renamed following a suggestion by Arnaldo.\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": "88c7664f13bd1a36acb8566b93892a4c58759ac6",
      "tree": "18ead610bf54ef87f3832c61d64a4bad30d4f78e",
      "parents": [
        "4bedb45203eab92a87b4c863fe2d0cded633427f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:43:18 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce icmp_hdr(), remove skb-\u003eh.icmph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0660e03f6b18f19b6bbafe7583265a51b90daf36",
      "tree": "82cc819ead5ab7858ba211ee8719a3e6d2bb984f",
      "parents": [
        "d0a92be05ed4aea7d35c2b257e3f9173565fe4eb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 17:54:47 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:14 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ipv6_hdr(), remove skb-\u003enh.ipv6h\n\nNow the skb-\u003enh union has just one member, .raw, i.e. it is just like the\nskb-\u003emac union, strange, no? I\u0027m just leaving it like that till the transport\nlayer is done with, when we\u0027ll rename skb-\u003emac.raw to skb-\u003emac_header (or\n-\u003emac_header_offset?), ditto for -\u003e{h,nh}.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eddc9ec53be2ecdbf4efe0efd4a83052594f0ac0",
      "tree": "4a38ab4dbd9d61fdf5a5ea6ed61463e0b9e33ba7",
      "parents": [
        "e023dd643798c4f06c16466af90b4d250e4b8bd7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 20 22:47:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:10 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce ip_hdr(), remove skb-\u003enh.iph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d56f90a7c96da5187f0cdf07ee7434fe6aa78bbc",
      "tree": "3b9073cecfbb3b6a1e25ab2b5dd2a22a43aef238",
      "parents": [
        "bbe735e4247dba32568a305553b010081c8dea99"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 10 20:50:43 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:59 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_network_header()\n\nFor the places where we need a pointer to the network header, it is still legal\nto touch skb-\u003enh.raw directly if just adding to, subtracting from or setting it\nto another layer header.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "cb69cc52364690d7789940c480b3a9490784b680",
      "tree": "725cef0cfc7e43b0826490ccd99769baacf2977d",
      "parents": [
        "fe067e8ab5e0dc5ca3c54634924c628da92090b4"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Mar 07 19:33:52 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:03 2007 -0700"
      },
      "message": "[TCP/DCCP/RANDOM]: Remove unused exports.\n\nThis patch removes the following not or no longer used exports:\n- drivers/char/random.c: secure_tcp_sequence_number\n- net/dccp/options.c: sysctl_dccp_feat_sequence_window\n- net/netlink/af_netlink.c: netlink_set_err\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "39ebc0276bada8bb70e067cb6d0eb71839c0fb08",
      "tree": "a6afca93101b9142523d6814db12ec09d73e58ef",
      "parents": [
        "53aadcc90931dfa150f76ce9a5f9e8f3e43d57df"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Wed Mar 28 11:54:32 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 28 11:54:32 2007 -0700"
      },
      "message": "[DCCP] getsockopt: Fix DCCP_SOCKOPT_[SEND,RECV]_CSCOV\n\nWe were only checking if there was enough space to put the int, but\nleft len as specified by the (malicious) user, sigh, fix it by setting\nlen to sizeof(val) and transfering just one int worth of data, the one\nasked for.\n\nAlso check for negative len values.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c93a882ebe673b5e6da0a70fd433f7517e032d23",
      "tree": "94a18636932628ce0b0cbf8e17e93a0d5a6b82f9",
      "parents": [
        "20bd7dd4cabfd0d6b6b70b99e88df901480a9841"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Mar 24 21:01:31 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sun Mar 25 18:48:10 2007 -0700"
      },
      "message": "[DCCP]: make dccp_write_xmit_timer() static again\n\ndccp_write_xmit_timer() needlessly became global.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aabb601b0f08b909b650f1a7bfa1e8d9b5a8d999",
      "tree": "c3060d0005f6b035b43fe4e5855a1d514b43e589",
      "parents": [
        "c4e38f41e34ad853651d66227aae23e48457dce0"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Fri Mar 09 13:47:58 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Mar 09 13:47:58 2007 -0800"
      },
      "message": "[DCCP]: Initialise write_xmit_timer also on passive sockets\n\nThe TX CCID needs the write_xmit_timer for delaying packet sends. Previously\nthis timer was only activated on active (connecting) sockets.\n\nThis patch initialises the write_xmit_timer in sync with the other timers, i.e.\nthe timer will be ready on any socket. This is used by applications with a\nlistening socket which start to stream after receiving an initiation by the\nclient.  The write_xmit_timer is stopped when the application closes, as before.\n\nWas tested to work and to remove the timer bug reported on dccp@vger.\n\nAlso moved timer initialisation into timer.c (static). \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": "151a99317ee9efcfd3e642da62e1edf4f47fcb3e",
      "tree": "8abf1427c3e25fc7ec6d48c863a4a2cf33ddc004",
      "parents": [
        "286930797d74b2c9a5beae84836044f6a836235f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Wed Mar 07 12:53:48 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Mar 07 16:08:07 2007 -0800"
      },
      "message": "[DCCP]: Revert patch which disables bidirectional mode\n\nThis reverts an earlier patch which disabled bidirectional mode, meaning that\na listening (passive) socket was not allowed to write to the other (active)\nend of the connection.\n\nThis mode had been disabled when there were problems with CCID3, but it\nimposes a constraint on socket programming and thus hinders deployment.\n\nA change is included to ignore RX feedback received by the TX CCID3 module.\n\nMany thanks to Andre Noll for pointing out this issue.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "99c72ce091ec85868a0847e598eb7562dc0d8205",
      "tree": "77cd1c70f58d56c81f17b9ea575a9773fb7d3144",
      "parents": [
        "4d46861be6196d0f1614724590968d8da26af82a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 06 14:24:44 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 06 14:24:44 2007 -0800"
      },
      "message": "[DCCP]: Set RTO for newly created child socket\n\nThis mirrors a recent change in tcp_open_req_child, whereby the icsk_rto of the\nnewly created child socket was not set (but rather on the parent socket). Same\nfix for DCCP.\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": "4d46861be6196d0f1614724590968d8da26af82a",
      "tree": "d9c579064159f52edd5dbebed85214ae6a3468df",
      "parents": [
        "1e51f9513e6b021abcaefd7c76f9b5d682f83232"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Tue Mar 06 14:24:18 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 06 14:24:18 2007 -0800"
      },
      "message": "[DCCP]: Correctly split CCID half connections\n\nThis fixes a bug caused by a previous patch, which causes DCCP servers in\nLISTEN state to not receive packets.\n\nThis patch changes the logic so that\n * servers in either LISTEN or OPEN state get the RX half connection packets\n * clients in OPEN state get the TX half connection packets\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": "b08d5840d2c5a6ac0bce172f4c861974d718e34b",
      "tree": "8f9423bc255d312269065623fcb136fc661b8bc1",
      "parents": [
        "4498121ca3acbf928681b71261227d28dc29b6f6"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Feb 27 09:57:37 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Feb 28 09:42:14 2007 -0800"
      },
      "message": "[NET]: Fix kfree(skb)\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nAcked-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0b4d414714f0d2f922d39424b0c5c82ad900a381",
      "tree": "5079ec59a5622c9cacfe0fce484ba2c4626c406f",
      "parents": [
        "ae836810263509ff7a3c2c021754ce6f66b3fab6"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:34:09 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:59 2007 -0800"
      },
      "message": "[PATCH] sysctl: remove insert_at_head from register_sysctl\n\nThe semantic effect of insert_at_head is that it would allow new registered\nsysctl entries to override existing sysctl entries of the same name.  Which is\npain for caching and the proc interface never implemented.\n\nI have done an audit and discovered that none of the current users of\nregister_sysctl care as (excpet for directories) they do not register\nduplicate sysctl entries.\n\nSo this patch simply removes the support for overriding existing entries in\nthe sys_sysctl interface since no one uses it or cares and it makes future\nenhancments harder.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Mark Fasheh \u003cmark.fasheh@oracle.com\u003e\nCc: David Chinner \u003cdgc@sgi.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7d749fa0a4de0a5445a4f023023f9e702238653",
      "tree": "f9abe6b87300186a26c7df787ba77b9b1cb61c1d",
      "parents": [
        "d87abf42762ee3e77b118ea96517cf8c7d33abc1"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:33:29 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:55 2007 -0800"
      },
      "message": "[PATCH] sysctl: dccp: remove unnecessary insert_at_head flag\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@conectiva.com.br\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a32144e9d7b4e21341174b1a83b82a82353be86",
      "tree": "6f08560b341418fc9934f56f6162a95f5b5d8aec",
      "parents": [
        "00977a59b951207d38380c75f03a36829950265c"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon Feb 12 00:55:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:46 2007 -0800"
      },
      "message": "[PATCH] mark struct file_operations const 7\n\nMany struct file_operations in the kernel can be \"const\".  Marking them const\nmoves these to the .rodata section, which avoids false sharing with potential\ndirty data.  In addition it\u0027ll catch accidental writes at compile time to\nthese shared resources.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c9eaf17341834de00351bf79f16b2d879c8aea96",
      "tree": "d8b2005197444fa6b6bdf8e8c8fd6eaf2db9ecd7",
      "parents": [
        "4ec93edb14fe5fdee9fae6335f2cbba204627eac"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:38 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:27 2007 -0800"
      },
      "message": "[NET] DCCP: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dbca9b2750e3b1ee6f56a616160ccfc12e8b161f",
      "tree": "bf84c0acb5495fc95bc616d32b8af946f2e3bca9",
      "parents": [
        "eac3731bd04c7131478722a3c148b78774553116"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Feb 08 14:16:46 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 08 14:16:46 2007 -0800"
      },
      "message": "[NET]: change layout of ehash table\n\nehash table layout is currently this one :\n\nFirst half of this table is used by sockets not in TIME_WAIT state\nSecond half of it is used by sockets in TIME_WAIT state.\n\nThis is non optimal because of for a given hash or socket, the two chain heads \nare located in separate cache lines.\nMoreover the locks of the second half are never used.\n\nIf instead of this halving, we use two list heads in inet_ehash_bucket instead \nof only one, we probably can avoid one cache miss, and reduce ram usage, \nparticularly if sizeof(rwlock_t) is big (various CONFIG_DEBUG_SPINLOCK, \nCONFIG_DEBUG_LOCK_ALLOC settings). So we still halves the table but we keep \ntogether related chains to speedup lookups and socket state change.\n\nIn this patch I did not try to align struct inet_ehash_bucket, but a future \npatch could try to make this structure have a convenient size (a power of two \nor a multiple of L1_CACHE_SIZE).\nI guess rwlock will just vanish as soon as RCU is plugged into ehash :) , so \nmaybe we dont need to scratch our heads to align the bucket...\n\nNote : In case struct inet_ehash_bucket is not a power of two, we could \nprobably change alloc_large_system_hash() (in case it use __get_free_pages()) \nto free the unused space. It currently allocates a big zone, but the last \nquarter of it could be freed. Again, this should be a temporary \u0027problem\u0027.\n\nPatch tested on ipv4 tcp only, but should be OK for IPV6 and DCCP.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f08461ebf89e10f7db9042fb028359b810c3c81",
      "tree": "3a8bdeebfd307483d3a6ab094a770449112b4135",
      "parents": [
        "919afbd68863550665b328a78107bc2919c5e3f4"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 05 18:18:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:56 2007 -0800"
      },
      "message": "[DCCP]: Warning fixes.\n\nnet/dccp/ccids/ccid3.c: In function `ccid3_hc_rx_packet_recv\u0027:\nnet/dccp/ccids/ccid3.c:1007: warning: long int format, different type arg (arg 3)\nnet/dccp/ccids/ccid3.c:1007: warning: long int format, different type arg (arg 4)\n\nopaque types must be suitably cast for printing.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8eb9086f21c73b38b5ca27558db4c91d62d0e70b",
      "tree": "1fa2694f1e5eac966cc8db2fb8d5f3d684b09803",
      "parents": [
        "ba7808eac17360dda459f82222859b0e3879854b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 02:09:21 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Thu Feb 08 12:38:45 2007 -0800"
      },
      "message": "[IPV4/IPV6]: Always wait for IPSEC SA resolution in socket contexts.\n\nDo this even for non-blocking sockets.  This avoids the silly -EAGAIN\nthat applications can see now, even for non-blocking sockets in some\ncases (f.e. connect()).\n\nWith help from Venkat Tekkirala.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e89862f4c5b3c4ac9afcd8cb1365d2f1e16ddc3b",
      "tree": "f402fe7326021a371e11c2c59b7aaf1b12d300d3",
      "parents": [
        "d5e76b0a280f71b20bdd20d1c1b4d6812ceb8c3a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jan 26 01:04:55 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Jan 26 01:04:55 2007 -0800"
      },
      "message": "[TCP]: Restore SKB socket owner setting in tcp_transmit_skb().\n\nRevert 931731123a103cfb3f70ac4b7abfc71d94ba1f03\n\nWe can\u0027t elide the skb_set_owner_w() here because things like certain\nnetfilter targets (such as owner MATCH) need a socket to be set on the\nSKB for correct operation.\n\nThanks to Jan Engelhardt and other netfilter list members for\npointing this out.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "832e3ca62d6ee1893db05f5202c24ae5331e19ba",
      "tree": "c6cf0507bd9a4e48363748b0a2f2c89ad40ab6ab",
      "parents": [
        "e1b4b9f3986b80d5785d91dbd8d72cfaf9fd1117"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Tue Dec 12 00:47:59 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Dec 13 16:48:24 2006 -0800"
      },
      "message": "[DCCP] ccid3: return value in ccid3_hc_rx_calc_first_li\n\nIn a recent patch we introduced invalid return codes which will result in the\nopposite of what is intended (i.e. send more packets in face of peculiar\nnetwork conditions).\n\nThis fixes it by returning ~0 which means not calculated as per\ndccp_li_hist_calc_i_mean.\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "8109b02b5397ed52a32c116163a62a34f4768b26",
      "tree": "0dbeae8cc999d2f6b71807b942eda7ff686ba7d2",
      "parents": [
        "1fba78b6cba14bd37fdb12c5367f1e4d58ff2e0f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 10 16:01:18 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:00 2006 -0800"
      },
      "message": "[DCCP]: Whitespace cleanups\n\nThat accumulated over the last months hackaton, shame on me for not\nusing git-apply whitespace helping hand, will do that from now on.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "1fba78b6cba14bd37fdb12c5367f1e4d58ff2e0f",
      "tree": "dc606497372ac469f698fa2a31d956a67a62d739",
      "parents": [
        "9e8efc824098c241a1cde81f5558d222cb6f9369"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 10 15:39:29 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:59 2006 -0800"
      },
      "message": "[DCCP] ccid3: Fixup some type conversions related to rtts\n\nSpotted by David Miller when compiling on sparc64, I reproduced it here on\nparisc64, that are the only platforms to define __kernel_suseconds_t as an\n\u0027int\u0027, all the others, x86_64 and x86 included typedef it as a \u0027long\u0027, but from\nthe definition of suseconds_t it should just be an \u0027int\u0027 on platforms where it\nis \u003e\u003d 32bits, it would not require all the castings from suseconds_t to (int)\nwhen printking variables of this type, that are not needed on parisc64 and\nsparc64.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9e8efc824098c241a1cde81f5558d222cb6f9369",
      "tree": "443c107edcac509a93857184f1d2e00933369dcb",
      "parents": [
        "7af5af3013f84693a7af581e3c8b32f9db493cf5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:57 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:58 2006 -0800"
      },
      "message": "[DCCP] ccid3: BUG-FIX - conversion errors\n\nThis fixes conversion errors which arose by not properly type-casting\nfrom u32 to __u64. Fixed by explicitly casting each type which is not\n__u64, or by performing operation after assignment.\n\nThe patch further adds missing debug information to track the current\nvalue of X_recv.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "7af5af3013f84693a7af581e3c8b32f9db493cf5",
      "tree": "4434c3993e0a6da3cd5b5ade8db06c9491773ade",
      "parents": [
        "85dcb1f78039cc55ccddd9622657a338b718aafe"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:33 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:57 2006 -0800"
      },
      "message": "[DCCP] ccid3: Reorder packet history source file\n\nNo code change at all.\n\nThis reorders the source file to follow the same order as the corresponding\nheader file.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "85dcb1f78039cc55ccddd9622657a338b718aafe",
      "tree": "66cf39fbb6c147a013588142ba5488fcd8e666d9",
      "parents": [
        "a967241129f6dc1db92fee2c808f73a90f5f47a3"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:11 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:56 2006 -0800"
      },
      "message": "[DCCP] ccid3: Reorder packet history header file\n\nNo code change at all.\n\nTo make the header file easier to read, the following ordering is established\namong the declarations:\n\t* hist_new\n\t* hist_delete\n\t* hist_entry_new\n\t* hist_head\n\t* hist_find_entry\n\t* hist_add_entry\n\t* hist_entry_delete\n\t* hist_purge\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@mandriva.com\u003e\n"
    },
    {
      "commit": "a967241129f6dc1db92fee2c808f73a90f5f47a3",
      "tree": "7fb9aaedfcd47260b341050bb006729df5c6ec87",
      "parents": [
        "c5a1ae9a4cc4aef1505fa0aba079f834c3ee1af1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:14:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:55 2006 -0800"
      },
      "message": "[DCCP] ccid3: Make debug output consistent\n\nThis patch does not alter any algorithm, just the debug message format:\n\n * s#%s, sk\u003d%p#%s(%p)#g\n\n * when a statename is present, it now uses %s(%p, state\u003d%s)\n\n * when only function entry is debugged, it adds an `- entry\u0027\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@mandriva.com\u003e\n"
    },
    {
      "commit": "c5a1ae9a4cc4aef1505fa0aba079f834c3ee1af1",
      "tree": "ce26c29076ae01f762fd5b09becca79ac602a63b",
      "parents": [
        "e312d100f19fdfe1019512b07a9d15653f254abf"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:09:21 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:54 2006 -0800"
      },
      "message": "[DCCP] ccid3: Perform history operations only after packet has been sent\n\n This migrates all packet history operations into the routine\n ccid3_hc_tx_packet_sent, thereby removing synchronization problems\n that occur when, as before, the operations are spread over multiple\n routines.\n The following minor simplifications are also applied:\n  * several simplifications now follow from this change - several tests\n    are now no longer required\n  * removal of one unnecessary variable (dp)\n\nJustification:\n\n Currently packet history operations span two different routines,\n one of which is likely to pass through several iterations of sleeping\n and awakening.\n The first routine, ccid3_hc_tx_send_packet, allocates an entry and\n sets a few fields. The remaining fields are filled in when the second\n routine (which is not within a sleeping context), ccid3_hc_tx_packet_sent,\n is called. This has several strong drawbacks:\n  * it is not necessary to split history operations - all fields can be\n    filled in by the second routine\n  * the first routine is called multiple times, until a packet can be sent,\n    and sleeps meanwhile - this causes a lot of difficulties with regard to\n    keeping the list consistent\n  * since both routines do not have a producer-consumer like synchronization,\n    it is very difficult to maintain data across calls to these routines\n  * the fact that the routines are called in different contexts (sleeping, not\n    sleeping) adds further problems\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@mandriva.com\u003e\n"
    },
    {
      "commit": "e312d100f19fdfe1019512b07a9d15653f254abf",
      "tree": "96b3275b746b2c871ab3d2d0f6e1d683ea0ae030",
      "parents": [
        "9f8681db961de6d75e43844e9664f1f81e05e1b7"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:08:09 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:53 2006 -0800"
      },
      "message": "[DCCP] ccid3: TX history - remove unused field\n\nThis removes the `dccphtx_ccval\u0027 field since it is nowhere used in the code and\nin fact not necessary for the accounting.\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": "9f8681db961de6d75e43844e9664f1f81e05e1b7",
      "tree": "07679d0ea408127119bc8b2ce74b38031da204e5",
      "parents": [
        "de553c189e3faa0d0c38f366f73379b46587b80e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:07:37 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:52 2006 -0800"
      },
      "message": "[DCCP] ccid3: Shift window counter computation\n\n This puts the window counter computation [RFC 4342, 8.1] into a separate\n function which is called whenever a new packet is ready for immediate\n transmission in ccid3_hc_tx_send_packet.\n\nJustification:\n\n The window counter update was previously computed after the packet was sent. This has\n two drawbacks, both fixed by this patch:\n   1) re-compute another timestamp almost directly after the packet was sent (expensive),\n   2) the CCVal for the window counter is needed at the instant the packet is sent.\n\nFurther details:\n\n The initialisation of the window counter is left in the state NO_SENT, as before.\n The algorithm will do nothing if either RTT is initialised to 0 (which is ok) or if\n the RTT value remains below 4 microseconds (which is almost pathological).\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@mandriva.com\u003e\n"
    },
    {
      "commit": "de553c189e3faa0d0c38f366f73379b46587b80e",
      "tree": "0fbc7bd2c042518383ee07287812453176ae8b0d",
      "parents": [
        "fe0499ae95f5f636bda1f6e0bdba5b7b023ea827"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:06:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:51 2006 -0800"
      },
      "message": "[DCCP] ccid3: Sanity-check RTT samples\n\nCCID3 performance depends much on the accuracy of RTT samples.  If RTT\nsamples grow too large, performance can be catastrophically poor.\n\nTo limit the amount of possible damage in such cases, the patch\n * introduces an upper limit which identifies a maximum `sane\u0027 RTT value;\n * uses a macro to enforce this upper limit.\n\nUsing a macro was given preference, since it is necessary to identify the\ncalling function in the warning message. Since exceeding this threshold\nidentifies a critical condition, DCCP_CRIT is used and not DCCP_WARN.\n\nMany thanks to Ian McDonald for collaboration on this issue.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "fe0499ae95f5f636bda1f6e0bdba5b7b023ea827",
      "tree": "d944ebcdaa0b689de58e3c98adf3d3b707385493",
      "parents": [
        "65d6c2b42ecc0ca77bb3c0fe27fcbdc84fc7a79a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:06:01 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:50 2006 -0800"
      },
      "message": "[DCCP] ccid3: Initialise RTT values\n\nIn both the sender and the receiver it is possible that the stored\nRTT value is accessed before an actual RTT estimate has been computed.\n\nThis patch\n * initialises the sender RTT to 0\n     - the sender always accesses the RTT in ccid3_hc_tx_packet_sent\n     - the RTT is further needed for the window counter algorithm\n\n * replaces the receiver initialisation of 5msec with 0\n     - which has the same effect and removes an `XXX\u0027\n     - the RTT value is needed in ccid3_hc_rx_packet_recv as rtt_prev\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@mandriva.com\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": "f6282f4da5eb67e08eff94d73a1911c3a008846a",
      "tree": "e9d0afde4f959e374caa5b8eb4c3c9d2c588eb38",
      "parents": [
        "bf58a381e8106fe73247c753e3da58fcb5eabd2e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:05:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:48 2006 -0800"
      },
      "message": "[DCCP]: Warn when discarding packet due to internal errors\n\nThis adds a (debug) warning message which is triggered whenever a packet is\ndiscarded due to send failure.\n\nIt also adds a conditional, so that an interruption during dccp_wait_for_ccid\nis not treated as a `BUG\u0027: the rationale is that interruptions are external,\nwhereas bug warnings are concerned with the internals.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "bf58a381e8106fe73247c753e3da58fcb5eabd2e",
      "tree": "4f0539a3d96930bddc5291b136f4fa08c1af8e77",
      "parents": [
        "d63d8364cfe17fc9bb738f554f452595f76f21d2"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:04:43 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:47 2006 -0800"
      },
      "message": "[DCCP]: Only deliver to the CCID rx side in charge\n\nThis is an optimisation to reduce CPU load. The received feedback is now\nonly directed to the active CCID component, without requiring processing\nalso by the inactive one.\n\nAs a consequence, a similar test in ccid3.c is now redundant and is\nalso removed.\n\nJustification:\n\n Currently DCCP works as a unidirectional service, i.e. a listening server\n is not at the same time a connecting client.\n As far as I can see, several modifications are necessary until that\n becomes possible.\n At the present time, received feedback is both fed to the rx/tx CCID\n modules. In unidirectional service, only one of these is active at any\n one time.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "d63d8364cfe17fc9bb738f554f452595f76f21d2",
      "tree": "32bd2371deb9ddc8a7c7bd835f33c2290cc0e8bf",
      "parents": [
        "0f9e5b573f7249b0e04a03457b55081d1f60f2bf"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:04:16 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:46 2006 -0800"
      },
      "message": "[DCCP]: Simplify TFRC calculation\n\nIn migrating towards using the newer functions scaled_div/scaled_div32\nfor TFRC computations mapped from floating-point onto integer arithmetic,\nthis completes the last stage of modifications.\n\nIn particular, the overflow case for computing X_calc is circumvented by\n * breaking the computation into two stages\n * the first stage, res \u003d (s*1E6)/R, cannot overflow due to use of u64\n * in the second stage, res \u003d (res*1E6)/f, overflow on u32 is avoided due\n   to (i) returning UINT_MAX in this case (which is logically appropriate)\n   and (ii) issuing a warning message into the system log (since very likely\n   there is a problem somewhere else with the parameters)\n\nLastly, all such scaling operations are now exported into tfrc.h, since\nactually this form of scaled computation is specific to TFRC and not to CCID3.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "0f9e5b573f7249b0e04a03457b55081d1f60f2bf",
      "tree": "fa33e3252d5df520348bb22d2a14aeac0e6b2bfc",
      "parents": [
        "bfe24a6cc222d27e1491f850802fa6932232b8ef"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:03:51 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:45 2006 -0800"
      },
      "message": "[DCCP]: Debug timeval operations\n\nProblem:\n\n Most target types in the CCID3 code are u32, so subtle conversion errors\n can occur if signed time calculations yield negative results: the original\n values are lost in the conversion to unsigned, calculation errors go undetected.\n\n This patch therefore\n   * sets all critical time types from unsigned to suseconds_t\n   * avoids comparison between signed/unsigned via type-casting\n   * provides ample warning messages in case time calculations are negative\n\n These warning messages can be removed at a later stage when the code\n has undergone more testing.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "bfe24a6cc222d27e1491f850802fa6932232b8ef",
      "tree": "a1782cdb20b19ffb07e1e7ce1ab7aba34fddcecd",
      "parents": [
        "b9039a2a8df974d7702564318722434bb276a995"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:03:30 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:44 2006 -0800"
      },
      "message": "[DCCP] ccid3: Simplify calculation for reverse lookup of p\n\n This simplifies the calculation of a value p for a given fval when the\n first loss interval is computed (RFC 3448, 6.3.1). It makes use of the\n two new functions scaled_div/scaled_div32 to provide overflow protection.\n\n Additionally, protection against divide-by-zero is extended - in this\n case the function will return the maximally possible value of p\u003d100%.\n\nBackground:\n\n The maximum fval, f(100%), is approximately 244, i.e. the scaled value of fval\n should never exceed 244E6, which fits easily into u32. The problem is the scaling\n by 10^6, since additionally R(TT) is in microseconds.\n This is resolved by breaking the division into two stages: the first stage\n computes fval\u003d(s*10^6)/R, stores that into u64; the second stage computes\n fval \u003d (fval*10^6)/X_recv and complains if overflow is reached for u32.\n This case is safe since the TFRC reverse-lookup routine then returns p\u003d100%.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "b9039a2a8df974d7702564318722434bb276a995",
      "tree": "ee67d87ec5b6e0a7f3100f63c31050270593146d",
      "parents": [
        "1a21e49a8d60f588c1276f765198b14d5688a778"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:02:51 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:43 2006 -0800"
      },
      "message": "[DCCP] ccid3: Replace scaled division operations\n\nThis replaces the remaining uses of usecs_div with scaled_div32, which\ninternally uses 64bit division and produces a warning on overflow.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "1a21e49a8d60f588c1276f765198b14d5688a778",
      "tree": "4b8770be71047437f30da694649719948977b189",
      "parents": [
        "179ebc9f92da88e15ea86d7d27308c92712d8ee9"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:02:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:42 2006 -0800"
      },
      "message": "[DCCP] ccid3: Finer-grained resolution of sending rates\n\nThis patch\n * resolves a bug where packets smaller than 32/64 bytes resulted in sending rates of 0\n * supports all sending rates from 1/64 bytes/second up to 4Gbyte/second\n * simplifies the present overflow problems in calculations\n\nCurrent sending rate X and the cached value X_recv of the receiver-estimated\nsending rate are both scaled by 64 (2^6) in order to\n * cope with low sending rates (minimally 1 byte/second)\n * allow upgrading to use a packets-per-second implementation of CCID 3\n * avoid calculation errors due to integer arithmetic cut-off\n\nThe patch implements a revised strategy from\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg01040.html\n\nThe only difference with regard to that strategy is that t_ipi is already\nused in the calculation of the nofeedback timeout, which saves one division.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "179ebc9f92da88e15ea86d7d27308c92712d8ee9",
      "tree": "6b8a18fd9e5b3447b8b32560d258f92276c358b7",
      "parents": [
        "ff58629824c068e2a75402b5b83f12af0b36d394"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:01:22 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:41 2006 -0800"
      },
      "message": "[DCCP] ccid3: Fix two bugs in sending rate computation\n\nThis fixes\n 1) a bug in the recomputation of the sending rate by the nofeedback\n    timer when no feedback at all has so far been sent by the receiver:\n    min_t was used instead of max_t, which is wrong (cf. RFC 3448, p. 10);\n\n 2) an error in the computation of larger initial windows: instead of\n    min(... max()) (cf. RFC 4342, 5.), the code had used max(... max()).\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@mandriva.com\u003e\n"
    },
    {
      "commit": "ff58629824c068e2a75402b5b83f12af0b36d394",
      "tree": "0d8f4a64dbe4e52879cac33174df406adf77da44",
      "parents": [
        "45393a66a2c30fc8ed86e6c79a63a3cd5231c69f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:00:14 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:40 2006 -0800"
      },
      "message": "[DCCP] ccid3: Two optimisations for sending rate recomputation\n\nThis performs two optimisations for the recomputation of the sending rate.\n\n1) Currently the target sending rate X_calc is recalculated whenever\n\ta) the nofeedback timer expires, or\n\tb) a feedback packet is received.\n   In the (a) case, recomputing X_calc is redundant, since\n\n    * the parameters p and RTT do not change in between the\n      reception of feedback packets;\n\n    * the parameter X_recv is either modified from received\n      feedback or via the nofeedback timer;\n\n    * a test (`p \u003d\u003d 0\u0027) in the nofeedback timer avoids using\n      a stale/undefined value of X_calc if p was previously 0.\n\n2) The nofeedback timer now only recomputes a timestamp when p \u003d\u003d 0.\n   This is according to step (4) of [RFC 3448, 4.3] and avoids\n   unnecessarily determining a timestamp.\n\nA debug statement about not updating X is also removed - it helps very\nlittle in debugging and just clutters the logs.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "45393a66a2c30fc8ed86e6c79a63a3cd5231c69f",
      "tree": "628feedd3d6d1fbdb1728d57e4bb62e1fc61e5c4",
      "parents": [
        "5fce9a2da8a3b4ed088d9c0ac7c938a638044fdb"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Dec 09 23:59:14 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:39 2006 -0800"
      },
      "message": "[DCCP] ccid3: Check against too large p\n\nThis patch follows a suggestion by Ian McDonald and ensures that in\nthe current code the value of p can not exceed 100%.  Such a value is\nillegal and would consequently cause a bug condition in tfrc_calc_x().\n\nThe receiver case is also tested, and a warning message is 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@mandriva.com\u003e\n"
    },
    {
      "commit": "5cc3741d6cc9f07d8ddd9c45cb5088460ce3364f",
      "tree": "7f7f1e51e54e7f34025b60cf93e284de72740ba5",
      "parents": [
        "e37b8d931936f88e4b2af66304eb44e69510b86c"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Sat Dec 09 23:56:09 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:37 2006 -0800"
      },
      "message": "[DCCP]: Remove timeo from output.c\n\nIt simplifies waiting for the CCID module to signal that a packet\nis ready to be sent.  Other simplifications flow on from this such as\nremoving constants.\n\nAs a result of this EAGAIN is not returned any more by dccp_wait_for_ccid\n(which would otherwise lead to unnecessarily discarding the packet in\ndccp_write_xmit).\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\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": "54e6ecb23951b195d02433a741c7f7cb0b796c78",
      "tree": "c8885c49f37c8d383945b8af69d51597494ed62c",
      "parents": [
        "f7267c0c0721fd02ad3dc37c3d6dd24ccd81d4d6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Wed Dec 06 20:33:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:24 2006 -0800"
      },
      "message": "[PATCH] slab: remove SLAB_ATOMIC\n\nSLAB_ATOMIC is an alias of GFP_ATOMIC\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": "9db73724453a9350e1c22dbe732d427e2939a5c9",
      "tree": "15e3ead6413ae97398a54292acc199bee0864d42",
      "parents": [
        "4c1ac1b49122b805adfa4efc620592f68dccf5db",
        "e62438630ca37539c8cc1553710bbfaa3cf960a7"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 05 17:01:28 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Tue Dec 05 17:01:28 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/ata/libata-scsi.c\n\tinclude/linux/libata.h\n\nFuther merge of Linus\u0027s head and compilation fixups.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "4c1ac1b49122b805adfa4efc620592f68dccf5db",
      "tree": "87557f4bc2fd4fe65b7570489c2f610c45c0adcd",
      "parents": [
        "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
        "d916faace3efc0bf19fe9a615a1ab8fa1a24cd93"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@warthog.cambridge.redhat.com",
        "time": "Tue Dec 05 14:37:56 2006 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tdrivers/infiniband/core/iwcm.c\n\tdrivers/net/chelsio/cxgb2.c\n\tdrivers/net/wireless/bcm43xx/bcm43xx_main.c\n\tdrivers/net/wireless/prism54/islpci_eth.c\n\tdrivers/usb/core/hub.h\n\tdrivers/usb/input/hid-core.c\n\tnet/core/netpoll.c\n\nFix up merge failures with Linus\u0027s head and fix new compilation failures.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "2bbf29acd8f7adcf161de7e5d891b4095687a59f",
      "tree": "955b15fa3bcdee1f879949d8639c5e9d5b82e84e",
      "parents": [
        "44158306d756c88272c8faf243ca68897498e219"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:53:27 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:53:27 2006 -0200"
      },
      "message": "[DCCP] tfrc: Binary search for reverse TFRC lookup\n\nThis replaces the linear search algorithm for reverse lookup with\nbinary search.\n\nIt has the advantage of better scalability: O(log2(N)) instead of O(N).\nThis means that the average number of iterations is reduced from 250\n(linear search if each value appears equally likely) down to at most 9.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "44158306d756c88272c8faf243ca68897498e219",
      "tree": "b5406da158950a099336a67c507a0dd55c04fa25",
      "parents": [
        "006042d7e1a0aae35c9dd9eb8ec71fa379679adb"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:53:07 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:53:07 2006 -0200"
      },
      "message": "[DCCP] ccid3: Deprecate TFRC_SMALLEST_P\n\n This patch deprecates the existing use of an arbitrary value TFRC_SMALLEST_P\n for low-threshold values of p. This avoids masking low-resolution errors.\n Instead, the code now checks against real boundaries (implemented by preceding\n patch) and provides warnings whenever a real value falls below the threshold.\n\n If such messages are observed, it is a better solution to take this as an\n indication that the lookup table needs to be re-engineered.\n\nChangelog:\n----------\n This patch\n   * makes handling all TFRC resolution errors local to the TFRC library\n\n   * removes unnecessary test whether X_calc is \u0027infinity\u0027 due to p\u003d\u003d0 -- this\n     condition is already caught by tfrc_calc_x()\n\n   * removes setting ccid3hctx_p \u003d TFRC_SMALLEST_P in ccid3_hc_tx_packet_recv\n     since this is now done by the TFRC library\n\n   * updates BUG_ON test in ccid3_hc_tx_no_feedback_timer to take into account\n     that p now is either 0 (and then X_calc is irrelevant), or it is \u003e 0; since\n     the handling of TFRC_SMALLEST_P is now taken care of in the tfrc library\n\nJustification:\n--------------\n The TFRC code uses a lookup table which has a bounded resolution.\n The lowest possible value of the loss event rate `p\u0027 which can be\n resolved is currently 0.0001.  Substituting this lower threshold for\n p when p is less than 0.0001 results in a huge, exponentially-growing\n error.  The error can be computed by the following formula:\n\n    (f(0.0001) - f(p))/f(p) * 100      for p \u003c 0.0001\n\n Currently the solution is to use an (arbitrary) value\n     TFRC_SMALLEST_P  \u003d   40 * 1E-6   \u003d   0.00004\n and to consider all values below this value as `virtually zero\u0027.  Due to\n the exponentially growing resolution error, this is not a good idea, since\n it hides the fact that the table can not resolve practically occurring cases.\n Already at p \u003d\u003d TFRC_SMALLEST_P, the error is as high as 58.19%!\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@mandriva.com\u003e\n"
    },
    {
      "commit": "006042d7e1a0aae35c9dd9eb8ec71fa379679adb",
      "tree": "e0f7a4f351fbf147bd452ff45061245fd985f27d",
      "parents": [
        "8d0086adac0041de66b5f41b77eec0d8d239e16c"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:52:41 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:52:41 2006 -0200"
      },
      "message": "[DCCP] tfrc: Identify TFRC table limits and simplify code\n\nThis\n * adds documentation about the lowest resolution that is possible within\n   the bounds of the current lookup table\n * defines a constant TFRC_SMALLEST_P which defines this resolution\n * issues a warning if a given value of p is below resolution\n * combines two previously adjacent if-blocks of nearly identical\n   structure into one\n\nThis patch does not change the algorithm as such.\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@mandriva.com\u003e\n"
    },
    {
      "commit": "8d0086adac0041de66b5f41b77eec0d8d239e16c",
      "tree": "9830f9188a9ba57bf75c0fa7c2246866f8a8789a",
      "parents": [
        "90fb0e60dd9178dbca2e42c682c483cdb7ea9f2d"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:52:26 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:52:26 2006 -0200"
      },
      "message": "[DCCP] tfrc: Add protection against invalid parameters to TFRC routines\n\n 1) For the forward X_calc lookup, it\n    * protects effectively against RTT\u003d0 (this case is possible), by\n      returning the maximal lookup value instead of just setting it to 1\n    * reformulates the array-bounds exceeded condition: this only happens\n      if p is greater than 1E6 (due to the scaling)\n    * the case of negative indices can now with certainty be excluded,\n      since documentation shows that the formulas are within bounds\n    * additional protection against p \u003d 0 (would give divide-by-zero)\n\n 2) For the reverse lookup, it warns against\n    * protects against exceeding array bounds\n    * now returns 0 if f(p) \u003d 0, due to function definition\n    * warns about minimal resolution error and returns the smallest table\n      value instead of p\u003d0 [this would mask congestion conditions]\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@mandriva.com\u003e\n"
    },
    {
      "commit": "90fb0e60dd9178dbca2e42c682c483cdb7ea9f2d",
      "tree": "09e750ded7fb3b34a0b146ef96a03a9495a9c37f",
      "parents": [
        "50ab46c790a3408c441ba4c2faa9555cacc20028"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:52:01 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:52:01 2006 -0200"
      },
      "message": "[DCCP] tfrc: Fix small error in reverse lookup of p for given f(p)\n\nThis fixes the following small error in tfrc_calc_x_reverse_lookup.\n\n 1) The table is generated by the following equations:\n\tlookup[index][0] \u003d g((index+1) * 1000000/TFRC_CALC_X_ARRSIZE);\n\tlookup[index][1] \u003d g((index+1) * TFRC_CALC_X_SPLIT/TFRC_CALC_X_ARRSIZE);\n    where g(q) is 1E6 * f(q/1E6)\n\n 2) The reverse lookup assigns an entry in lookup[index][small]\n\n 3) This index needs to match the above, i.e.\n    * if small\u003d0 then\n\n      \t\tp  \u003d (index + 1) * 1000000/TFRC_CALC_X_ARRSIZE\n\n    * if small\u003d1 then\n\n\t\tp \u003d (index+1) * TFRC_CALC_X_SPLIT/TFRC_CALC_X_ARRSIZE\n\nThese are exactly the changes that the patch makes; previously the code did\nnot conform to the way the lookup table was generated (this difference resulted\nin a mean error of about 1.12%).\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@mandriva.com\u003e\n"
    },
    {
      "commit": "50ab46c790a3408c441ba4c2faa9555cacc20028",
      "tree": "c1d1a93375908ad66fb6599532351bfcb3785269",
      "parents": [
        "26af3072b035daadf34a99d02510f0ff98f41f90"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 03 14:51:29 2006 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 03 14:51:29 2006 -0200"
      },
      "message": "[DCCP] tfrc: Document boundaries and limits of the TFRC lookup table\n\nThis adds documentation for the TCP Reno throughput equation which is at\nthe heart of the TFRC sending rate / loss rate calculations.\n\nIt spells out precisely how the values were determined and what they mean.\nThe equations were derived through reverse engineering and found to be\nfully accurate (verified using test programs).\n\nThis patch does not change any code.\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"
    }
  ],
  "next": "26af3072b035daadf34a99d02510f0ff98f41f90"
}
