)]}'
{
  "log": [
    {
      "commit": "dfd25ffffc132c00070eed64200e8950da5d7e9d",
      "tree": "fbce07add57f0ab7a16792b4af461d2f9e265fb6",
      "parents": [
        "4e50391968849860dff1aacde358b4eb14aa5127"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sat Mar 10 09:20:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 11 15:52:12 2012 -0700"
      },
      "message": "tcp: fix syncookie regression\n\ncommit ea4fc0d619 (ipv4: Don\u0027t use rt-\u003ert_{src,dst} in ip_queue_xmit())\nadded a serious regression on synflood handling.\n\nSimon Kirby discovered a successful connection was delayed by 20 seconds\nbefore being responsive.\n\nIn my tests, I discovered that xmit frames were lost, and needed ~4\nretransmits and a socket dst rebuild before being really sent.\n\nIn case of syncookie initiated connection, we use a different path to\ninitialize the socket dst, and inet-\u003ecork.fl.u.ip4 is left cleared.\n\nAs ip_queue_xmit() now depends on inet flow being setup, fix this by\ncopying the temp flowi4 we use in cookie_v4_check().\n\nReported-by: Simon Kirby \u003csim@netnation.com\u003e\nBisected-by: Simon Kirby \u003csim@netnation.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nTested-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ab56222a32b9dbaae19c1d37f07b0ac4fc3c27ec",
      "tree": "ce5eff7879a1d80c419835171de13e52c24afdfb",
      "parents": [
        "08f4fc9da9a04d59f5c937e06e375158abb68206"
      ],
      "author": {
        "name": "Vijay Subramanian",
        "email": "subramanian.vijay@gmail.com",
        "time": "Tue Dec 20 13:23:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 21 01:03:23 2011 -0500"
      },
      "message": "tcp: Replace constants with #define macros\n\nto record the state of SACK/FACK and DSACK for better readability and maintenance.\n\nSigned-off-by: Vijay Subramanian \u003csubramanian.vijay@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "cf533ea53ebfae41be15b103d78e7ebec30b9969",
      "tree": "51ed3c69f4a15117fefe5cbd291a75010beb0f4b",
      "parents": [
        "f04565ddf52e401880f8ba51de0dff8ba51c99fd"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Fri Oct 21 05:22:42 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 21 05:22:42 2011 -0400"
      },
      "message": "tcp: add const qualifiers where possible\n\nAdding const qualifiers to pointers can ease code review, and spot some\nbugs. It might allow compiler to optimize code further.\n\nFor example, is it legal to temporary write a null cksum into tcphdr\nin tcp_md5_hash_header() ? I am afraid a sniffer could catch the\ntemporary null value...\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0e3d0689da401f7d1981c2777a714ba295ea5ff",
      "tree": "a8b2311c0cf7573c22d99c6917c08e77b225d637",
      "parents": [
        "56c07271307b4a20802005692b2b70dfe13d72e8"
      ],
      "author": {
        "name": "Mike Waychison",
        "email": "mikew@google.com",
        "time": "Wed Aug 10 21:59:57 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Aug 10 21:59:57 2011 -0700"
      },
      "message": "tcp: initialize variable ecn_ok in syncookies path\n\nUsing a gcc 4.4.3, warnings are emitted for a possibly uninitialized use\nof ecn_ok.\n\nThis can happen if cookie_check_timestamp() returns due to not having\nseen a timestamp.  Defaulting to ecn off seems like a reasonable thing\nto do in this case, so initialized ecn_ok to false.\n\nSigned-off-by: Mike Waychison \u003cmikew@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ad7c049f0f79c418e293b1b68cf10d68f54fcdb",
      "tree": "4b930b213f7a050afe9fae78432c1a4a6dce08a5",
      "parents": [
        "aee80b54b235d34d87b25dfbe32f0f0ffee1b544"
      ],
      "author": {
        "name": "Jerry Chu",
        "email": "hkchu@google.com",
        "time": "Wed Jun 08 11:08:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 08 17:05:30 2011 -0700"
      },
      "message": "tcp: RFC2988bis + taking RTT sample from 3WHS for the passive open side\n\nThis patch lowers the default initRTO from 3secs to 1sec per\nRFC2988bis. It falls back to 3secs if the SYN or SYN-ACK packet\nhas been retransmitted, AND the TCP timestamp option is not on.\n\nIt also adds support to take RTT sample during 3WHS on the passive\nopen side, just like its active open counterpart, and uses it, if\nvalid, to seed the initRTO for the data transmission phase.\n\nThe patch also resets ssthresh to its initial default at the\nbeginning of the data transmission phase, and reduces cwnd to 1 if\nthere has been MORE THAN ONE retransmission during 3WHS per RFC5681.\n\nSigned-off-by: H.K. Jerry Chu \u003chkchu@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f6d8bd051c391c1c0458a30b2a7abcd939329259",
      "tree": "1dc4daecdeb0b42c2c6b59d7d6b41e091c11db5f",
      "parents": [
        "0a14842f5a3c0e88a1e59fac5c3025db39721f74"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Apr 21 09:45:37 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 13:16:35 2011 -0700"
      },
      "message": "inet: add RCU protection to inet-\u003eopt\n\nWe lack proper synchronization to manipulate inet-\u003eopt ip_options\n\nProblem is ip_make_skb() calls ip_setup_cork() and\nip_setup_cork() possibly makes a copy of ipc-\u003eopt (struct ip_options),\nwithout any protection against another thread manipulating inet-\u003eopt.\n\nAnother thread can change inet-\u003eopt pointer and free old one under us.\n\nUse RCU to protect inet-\u003eopt (changed to inet-\u003einet_opt).\n\nInstead of handling atomic refcounts, just copy ip_options when\nnecessary, to avoid cache line dirtying.\n\nWe cant insert an rcu_head in struct ip_options since its included in\nskb-\u003ecb[], so this patch is large because I had to introduce a new\nip_options_rcu structure.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1bba6ffeeb44480ddbdda912cc85ad2cfd4725ae",
      "tree": "9627d8dfa27540a2a2b20c1b7c9d3c689bb0c992",
      "parents": [
        "ef164ae3563bf4d291b6f75ca2e120b17d606963"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 31 04:54:08 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 31 04:54:08 2011 -0700"
      },
      "message": "ipv4: Use flowi4_init_output() in cookie_v4_check()\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9cce96df5b76691712dba22e83ff5efe900361e1",
      "tree": "eecf99e64c6866af944e1e1644d87737392b2da2",
      "parents": [
        "f42454d632753d71ea1a2df09be7bbda32b6372d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 03:00:33 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:54 2011 -0800"
      },
      "message": "net: Put fl4_* macros to struct flowi4 and use them again.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9d6ec938019c6b16cb9ec96598ebe8f20de435fe",
      "tree": "9b850eb7fd48a6e5ffc15f47afd2e3edc93f5290",
      "parents": [
        "68a5e3dd0a0056d8b349f9eea3756adda53ec17a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 01:12:47 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:48 2011 -0800"
      },
      "message": "ipv4: Use flowi4 in public route lookup interfaces.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6281dcc94a96bd73017b2baa8fa83925405109ef",
      "tree": "8deee4d66d256d10ea25f66520eb96b1fade1545",
      "parents": [
        "08704bcbf022786532b5f188935ab6619906049f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:43:55 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:46 2011 -0800"
      },
      "message": "net: Make flowi ports AF dependent.\n\nCreate two sets of port member accessors, one set prefixed by fl4_*\nand the other prefixed by fl6_*\n\nThis will let us to create AF optimal flow instances.\n\nIt will work because every context in which we access the ports,\nwe have to be fully aware of which AF the flowi is anyways.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d28f42c1bd4bb2363d88df74d0128b4da135b4a",
      "tree": "cb2e652fe79a2bc307e871bc2d3fa51cc8051e45",
      "parents": [
        "ca116922afa8cc5ad46b00c0a637b1cde5ca478a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:29:39 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:44 2011 -0800"
      },
      "message": "net: Put flowi_* prefix on AF independent members of struct flowi\n\nI intend to turn struct flowi into a union of AF specific flowi\nstructs.  There will be a common structure that each variant includes\nfirst, much like struct sock_common.\n\nThis is the first step to move in that direction.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b23dd4fe42b455af5c6e20966b7d6959fa8352ea",
      "tree": "bf97323eae9a8d084170e573ff2c0c40bc72c3cd",
      "parents": [
        "452edd598f60522c11f7f88fdbab27eb36509d1a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "message": "ipv4: Make output route lookup return rtable directly.\n\nInstead of on the stack.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5811662b15db018c740c57d037523683fd3e6123",
      "tree": "f820610a6024799a26699f22dc9a4ef5dee07978",
      "parents": [
        "dd68ad2235b4625e0dc928b2b4c614d265f976d3"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Fri Nov 12 18:43:55 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Nov 17 12:27:45 2010 -0800"
      },
      "message": "net: use the macros defined for the members of flowi\n\nUse the macros defined for the members of flowi to clean the code up.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "172d69e63c7f1e8300d0e1c1bbd8eb0f630faa15",
      "tree": "c71118ddc86186e235a920b9529c457db5e9aae5",
      "parents": [
        "734f614bc1e7c6bf075d201f6bd9a555b8b4a984"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Mon Jun 21 11:48:45 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 26 22:00:03 2010 -0700"
      },
      "message": "syncookies: add support for ECN\n\nAllows use of ECN when syncookies are in effect by encoding ecn_ok\ninto the syn-ack tcp timestamp.\n\nWhile at it, remove a uneeded #ifdef CONFIG_SYN_COOKIES.\nWith CONFIG_SYN_COOKIES\u003dnm want_cookie is ifdef\u0027d to 0 and gcc\nremoves the \"if (0)\".\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "734f614bc1e7c6bf075d201f6bd9a555b8b4a984",
      "tree": "f5602e98d4088b1b667e286a1ead644122cd77e8",
      "parents": [
        "9587c6ddd452314e8ed5707ad832a507a030ef57"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Mon Jun 21 11:48:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 26 22:00:03 2010 -0700"
      },
      "message": "syncookies: do not store rcv_wscale in tcp timestamp\n\nAs pointed out by Fernando Gont there is no need to encode rcv_wscale\ninto the cookie.\n\nWe did not use the restored rcv_wscale anyway; it is recomputed\nvia tcp_select_initial_window().\n\nThus we can save 4 bits in the ts option space by removing rcv_wscale.\nIn case window scaling was not supported, we set the (invalid) wscale\nvalue 0xf.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8c76368174ed2359739f1b7b8a9c042b1ef839c4",
      "tree": "143aa28c9438b24154bc3d1e36b432a534eca50c",
      "parents": [
        "317fe0e6c5dc9448bcef41a2e31fecfd3dba7f55"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Wed Jun 16 14:42:15 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 16 14:42:15 2010 -0700"
      },
      "message": "syncookies: check decoded options against sysctl settings\n\nDiscard the ACK if we find options that do not match current sysctl\nsettings.\n\nPreviously it was possible to create a connection with sack, wscale,\netc. enabled even if the feature was disabled via sysctl.\n\nAlso remove an unneeded call to tcp_sack_reset() in\ncookie_check_timestamp: Both call sites (cookie_v4_check,\ncookie_v6_check) zero \"struct tcp_options_received\", hand it to\ntcp_parse_options() (which does not change tcp_opt-\u003enum_sacks/dsack)\nand then call cookie_check_timestamp().\n\nEven if num_sacks/dsacks were changed, the structure is allocated on\nthe stack and after cookie_check_timestamp returns only a few selected\nmembers are copied to the inet_request_sock.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d8d1f30b95a635dbd610dcc5eb641aca8f4768cf",
      "tree": "71424d82a96facd5fcf05cc769ef2ba52b584aeb",
      "parents": [
        "592fcb9dfafaa02dd0edc207bf5d3a0ee7a1f8df"
      ],
      "author": {
        "name": "Changli Gao",
        "email": "xiaosuo@gmail.com",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 10 23:31:35 2010 -0700"
      },
      "message": "net-next: remove useless union keyword\n\nremove useless union keyword in rtable, rt6_info and dn_route.\n\nSince there is only one member in a union, the union keyword isn\u0027t useful.\n\nSigned-off-by: Changli Gao \u003cxiaosuo@gmail.com\u003e\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eedc765ca4b19a41cf0b921a492ac08d640060d1",
      "tree": "95c566c6238cc953e1e336115d2daafe8bcb388f",
      "parents": [
        "e59d44df46edaafb6b637e98d046775524b31104",
        "024a07bacf8287a6ddfa83e9d5b951c5e8b4070e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Jun 06 17:42:02 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/sfc/net_driver.h\n\tdrivers/net/sfc/siena.c\n"
    },
    {
      "commit": "5918e2fb9035b35164002c3a268feaf70b7c04d5",
      "tree": "3a785e4b13971d9b9e9098a339ad005364949852",
      "parents": [
        "af9b4738574b46025de7ccbe75c7b24fd8914379"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Thu Jun 03 00:43:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 05 02:23:15 2010 -0700"
      },
      "message": "syncookies: update mss tables\n\n- ipv6 msstab: account for ipv6 header size\n- ipv4 msstab: add mss for Jumbograms.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "af9b4738574b46025de7ccbe75c7b24fd8914379",
      "tree": "6d05b82261ce76e6ecf00131c667292b62d16adf",
      "parents": [
        "2a1d4bd46047efff513600d7ff422bc344f540a6"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Thu Jun 03 00:43:44 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 05 02:23:14 2010 -0700"
      },
      "message": "syncookies: avoid unneeded tcp header flag double check\n\ncaller: if (!th-\u003erst \u0026\u0026 !th-\u003esyn \u0026\u0026 th-\u003eack)\ncallee: if (!th-\u003eack)\n\nmake the caller only check for !syn (common for 3whs), and move\nthe !rst / ack test to the callee.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c44649216522cd607a4027d2ebf4a8147d3fa94c",
      "tree": "e46e153f3f3166353d9818e6b719f1c06b60d4be",
      "parents": [
        "ca55158c6ecb7832a6ad80ac44a14d23bab8cdfc"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Thu Jun 03 05:45:47 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 04 15:56:03 2010 -0700"
      },
      "message": "tcp: use correct net ns in cookie_v4_check()\n\nIts better to make a route lookup in appropriate namespace.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "31d12926e37291970dd4f6e9940df3897766a81d",
      "tree": "7f20713b70fc2c9e03aa1f7fcf71ffa651c464fc",
      "parents": [
        "068a2de57ddf4f472e32e7af868613c574ad1d88"
      ],
      "author": {
        "name": "laurent chavey",
        "email": "chavey@google.com",
        "time": "Tue Dec 15 11:15:28 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 23 14:13:30 2009 -0800"
      },
      "message": "net: Add rtnetlink init_rcvwnd to set the TCP initial receive window\n\nAdd rtnetlink init_rcvwnd to set the TCP initial receive window size\nadvertised by passive and active TCP connections.\nThe current Linux TCP implementation limits the advertised TCP initial\nreceive window to the one prescribed by slow start. For short lived\nTCP connections used for transaction type of traffic (i.e. http\nrequests), bounding the advertised TCP initial receive window results\nin increased latency to complete the transaction.\nSupport for setting initial congestion window is already supported\nusing rtnetlink init_cwnd, but the feature is useless without the\nability to set a larger TCP initial receive window.\nThe rtnetlink init_rcvwnd allows increasing the TCP initial receive\nwindow, allowing TCP connection to advertise larger TCP receive window\nthan the ones bounded by slow start.\n\nSigned-off-by: Laurent Chavey \u003cchavey@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "bb5b7c11263dbbe78253cd05945a6bf8f55add8e",
      "tree": "7a639cbd6d6ad968ca22427f2b8697aadb37a907",
      "parents": [
        "166a0fd4c788ec7f10ca8194ec6d526afa12db75"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 15 20:56:42 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 15 20:56:42 2009 -0800"
      },
      "message": "tcp: Revert per-route SACK/DSACK/TIMESTAMP changes.\n\nIt creates a regression, triggering badness for SYN_RECV\nsockets, for example:\n\n[19148.022102] Badness at net/ipv4/inet_connection_sock.c:293\n[19148.022570] NIP: c02a0914 LR: c02a0904 CTR: 00000000\n[19148.023035] REGS: eeecbd30 TRAP: 0700   Not tainted  (2.6.32)\n[19148.023496] MSR: 00029032 \u003cEE,ME,CE,IR,DR\u003e  CR: 24002442  XER: 00000000\n[19148.024012] TASK \u003d eee9a820[1756] \u0027privoxy\u0027 THREAD: eeeca000\n\nThis is likely caused by the change in the \u0027estab\u0027 parameter\npassed to tcp_parse_options() when invoked by the functions\nin net/ipv4/tcp_minisocks.c\n\nBut even if that is fixed, the -\u003econn_request() changes made in\nthis patch series is fundamentally wrong.  They try to use the\nlistening socket\u0027s \u0027dst\u0027 to probe the route settings.  The\nlistening socket doesn\u0027t even have a route, and you can\u0027t\nget the right route (the child request one) until much later\nafter we setup all of the state, and it must be done by hand.\n\nThis stuff really isn\u0027t ready, so the best thing to do is a\nfull revert.  This reverts the following commits:\n\nf55017a93f1a74d50244b1254b9a2bd7ac9bbf7d\n022c3f7d82f0f1c68018696f2f027b87b9bb45c2\n1aba721eba1d84a2defce45b950272cee1e6c72a\ncda42ebd67ee5fdf09d7057b5a4584d36fe8a335\n345cda2fd695534be5a4494f1b59da9daed33663\ndc343475ed062e13fc260acccaab91d7d80fd5b2\n05eaade2782fb0c90d3034fd7a7d5a16266182bb\n6a2a2d6bf8581216e08be15fcb563cfd6c430e1e\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4957faade11b3a278c3b3cade3411ddc20afa791",
      "tree": "57f994bab69353baf5f554b89cf9107c3372ecce",
      "parents": [
        "bd0388ae77075026d6a9f9eb6026dfd1d52ce0e9"
      ],
      "author": {
        "name": "William Allen Simpson",
        "email": "william.allen.simpson@gmail.com",
        "time": "Wed Dec 02 18:25:27 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 02 22:07:26 2009 -0800"
      },
      "message": "TCPCT part 1g: Responder Cookie \u003d\u003e Initiator\n\nParse incoming TCP_COOKIE option(s).\n\nCalculate \u003cSYN,ACK\u003e TCP_COOKIE option.\n\nSend optional \u003cSYN,ACK\u003e data.\n\nThis is a significantly revised implementation of an earlier (year-old)\npatch that no longer applies cleanly, with permission of the original\nauthor (Adam Langley):\n\n    http://thread.gmane.org/gmane.linux.network/102586\n\nRequires:\n   TCPCT part 1a: add request_values parameter for sending SYNACK\n   TCPCT part 1b: generate Responder Cookie secret\n   TCPCT part 1c: sysctl_tcp_cookie_size, socket option TCP_COOKIE_TRANSACTIONS\n   TCPCT part 1d: define TCP cookie option, extend existing struct\u0027s\n   TCPCT part 1e: implement socket option TCP_COOKIE_TRANSACTIONS\n   TCPCT part 1f: Initiator Cookie \u003d\u003e Responder\n\nSigned-off-by: William.Allen.Simpson@gmail.com\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "022c3f7d82f0f1c68018696f2f027b87b9bb45c2",
      "tree": "ca46c372d815e46f488ec348ae427d34d1f6079e",
      "parents": [
        "f55017a93f1a74d50244b1254b9a2bd7ac9bbf7d"
      ],
      "author": {
        "name": "Gilad Ben-Yossef",
        "email": "gilad@codefidence.com",
        "time": "Wed Oct 28 04:15:22 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 01:28:41 2009 -0700"
      },
      "message": "Allow tcp_parse_options to consult dst entry\n\nWe need tcp_parse_options to be aware of dst_entry to\ntake into account per dst_entry TCP options settings\n\nSigned-off-by: Gilad Ben-Yossef \u003cgilad@codefidence.com\u003e\nSigend-off-by: Ori Finkelman \u003cori@comsleep.com\u003e\nSigend-off-by: Yony Amit \u003cyony@comsleep.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ffce908246c93b17304c313886d25cfa8aecd1d7",
      "tree": "8ffc95c5efa6602db4574357396454910a7efe36",
      "parents": [
        "996ccf49005662ee7fee38a45be5cb27bf370b1d"
      ],
      "author": {
        "name": "Atis Elsts",
        "email": "atis@mikrotik.com",
        "time": "Wed Oct 07 13:55:57 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 07 13:55:57 2009 -0700"
      },
      "message": "net: Add sk_mark route lookup support for IPv4 listening sockets\n\nAdd support for route lookup using sk_mark on IPv4 listening sockets.\n\nSigned-off-by: Atis Elsts \u003catis@mikrotik.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "245b2e70eabd797932adb263a65da0bab3711753",
      "tree": "30f0b790dadd2b70bf06e534abcf66a76e97b05a",
      "parents": [
        "b9bf3121af348d9255f1c917830fe8c2df52efcb"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:48 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:48 2009 +0900"
      },
      "message": "percpu: clean up percpu variable definitions\n\nPercpu variable definition is about to be updated such that all percpu\nsymbols including the static ones must be unique.  Update percpu\nvariable definitions accordingly.\n\n* as,cfq: rename ioc_count uniquely\n\n* cpufreq: rename cpu_dbs_info uniquely\n\n* xen: move nesting_count out of xen_evtchn_do_upcall() and rename it\n\n* mm: move ratelimits out of balance_dirty_pages_ratelimited_nr() and\n  rename it\n\n* ipv4,6: rename cookie_scratch uniquely\n\n* x86 perf_counter: rename prev_left to pmc_prev_left, irq_entry to\n  pmc_irq_entry and nmi_entry to pmc_nmi_entry\n\n* perf_counter: rename disable_count to perf_disable_count\n\n* ftrace: rename test_event_disable to ftrace_test_event_disable\n\n* kmemleak: rename test_pointer to kmemleak_test_pointer\n\n* mce: rename next_interval to mce_next_interval\n\n[ Impact: percpu usage cleanups, no duplicate static percpu var names ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: linux-mm \u003clinux-mm@kvack.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\n"
    },
    {
      "commit": "204fba4aa303ea4a7bb726a539bf4a5b9e3203d0",
      "tree": "899707e00035f1ec83077c16a7f559ecbcc36986",
      "parents": [
        "fe87f94f341a4b4097285b46f003059b26eb59bf"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:45 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:45 2009 +0900"
      },
      "message": "percpu: cleanup percpu array definitions\n\nCurrently, the following three different ways to define percpu arrays\nare in use.\n\n1. DEFINE_PER_CPU(elem_type[array_len], array_name);\n2. DEFINE_PER_CPU(elem_type, array_name[array_len]);\n3. DEFINE_PER_CPU(elem_type, array_name)[array_len];\n\nUnify to #1 which correctly separates the roles of the two parameters\nand thus allows more flexibility in the way percpu variables are\ndefined.\n\n[ Impact: cleanup ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: linux-mm@kvack.org\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a0f82f64e26929776c58a5c93c2ecb38e3d82815",
      "tree": "8c39812fc6fc8133cc28944e38b44c941d8fa3ce",
      "parents": [
        "7eebb0b28f755e297d355a205bb04945b256db6b"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Sun Apr 19 09:43:48 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 20 02:25:26 2009 -0700"
      },
      "message": "syncookies: remove last_synq_overflow from struct tcp_sock\n\nlast_synq_overflow eats 4 or 8 bytes in struct tcp_sock, even\nthough it is only used when a listening sockets syn queue\nis full.\n\nWe can (ab)use rx_opt.ts_recent_stamp to store the same information;\nit is not used otherwise as long as a socket is in listen state.\n\nMove linger2 around to avoid splitting struct mtu_probe\nacross cacheline boundary on 32 bit arches.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "284904aa79466a4736f4c775fdbe5c7407fa136c",
      "tree": "b2ab3842d58126ab7596f81c1f95c1678945ed26",
      "parents": [
        "bb798169d1bb860b07192cf9c75937fadc8610b4"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Fri Mar 27 17:10:28 2009 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sat Mar 28 15:01:36 2009 +1100"
      },
      "message": "lsm: Relocate the IPv4 security_inet_conn_request() hooks\n\nThe current placement of the security_inet_conn_request() hooks do not allow\nindividual LSMs to override the IP options of the connection\u0027s request_sock.\nThis is a problem as both SELinux and Smack have the ability to use labeled\nnetworking protocols which make use of IP options to carry security attributes\nand the inability to set the IP options at the start of the TCP handshake is\nproblematic.\n\nThis patch moves the IPv4 security_inet_conn_request() hooks past the code\nwhere the request_sock\u0027s IP options are set/reset so that the LSM can safely\nmanipulate the IP options as needed.  This patch intentionally does not change\nthe related IPv6 hooks as IPv6 based labeling protocols which use IPv6 options\nare not currently implemented, once they are we will have a better idea of\nthe correct placement for the IPv6 hooks.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "a3116ac5c216fc3c145906a46df9ce542ff7dcf2",
      "tree": "6b2b43b5bacac2b358566e4b7ca0adda45a3e52b",
      "parents": [
        "86b08d867d7de001ab224180ed7865fab93fd56e"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Wed Oct 01 07:46:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 07:46:49 2008 -0700"
      },
      "message": "tcp: Port redirection support for TCP\n\nCurrent TCP code relies on the local port of the listening socket\nbeing the same as the destination address of the incoming\nconnection. Port redirection used by many transparent proxying\ntechniques obviously breaks this, so we have to store the original\ndestination port address.\n\nThis patch extends struct inet_request_sock and stores the incoming\ndestination port value there. It also modifies the handshake code to\nuse that value as the source port when sending reply packets.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "86b08d867d7de001ab224180ed7865fab93fd56e",
      "tree": "fc081a9ec0d0107f951cc0270da2865e1e3413e2",
      "parents": [
        "88ef4a5a78e63420dd1dd770f1bd1dc198926b04"
      ],
      "author": {
        "name": "KOVACS Krisztian",
        "email": "hidden@sch.bme.hu",
        "time": "Wed Oct 01 07:44:42 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 01 07:44:42 2008 -0700"
      },
      "message": "ipv4: Make Netfilter\u0027s ip_route_me_harder() non-local address compatible\n\nNetfilter\u0027s ip_route_me_harder() tries to re-route packets either\ngenerated or re-routed by Netfilter. This patch changes\nip_route_me_harder() to handle packets from non-locally-bound sockets\nwith IP_TRANSPARENT set as local and to set the appropriate flowi\nflags when re-doing the routing lookup.\n\nSigned-off-by: KOVACS Krisztian \u003chidden@sch.bme.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "16df845f4566bc252f3e09db12f5c2f22cb44226",
      "tree": "c83f5b664b669ff26bbf5c9a44b9ccecfa53c506",
      "parents": [
        "ec34c702ca8b7d6f0aa54379c3b0d0ec10b8ff23"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Sat Jul 26 02:21:54 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jul 26 02:21:54 2008 -0700"
      },
      "message": "syncookies: Make sure ECN is disabled\n\necn_ok is not initialized when a connection is established by cookies.\nThe cookie syn-ack never sets ECN, so ecn_ok must be set to 0.\n\nSpotted using ns-3/network simulation cradle simulator and valgrind.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de0744af1fe2d0a3d428f6af0f2fe1f6179b1a9c",
      "tree": "68d02820b1aa13e8fa9743c0ece5930a13d5a205",
      "parents": [
        "4e6734447dbc7a0a85e09616821c0782d9fb1141"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jul 16 20:31:16 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 16 20:31:16 2008 -0700"
      },
      "message": "mib: add net to NET_INC_STATS_BH\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ae127d1b6c71f9240dd4245f240e6dd8fc98014",
      "tree": "b7aa27b3e0c655f4613fe2146cb57d7f69e421f6",
      "parents": [
        "875ec4333b99144e2589e900a0bcd2c25c757b27",
        "7775c9753b94fe429dc4323360d6502c95e0dd6e"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 13 20:52:39 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jun 13 20:52:39 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/smc911x.c\n"
    },
    {
      "commit": "0b040829952d84bf2a62526f0e24b624e0699447",
      "tree": "b2e836e7e64343f19b949e50099bbe2ea554ec30",
      "parents": [
        "573bf470e693f73a6ac437b17a64a10902ba54bf"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Jun 10 22:46:50 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 11 21:00:38 2008 -0700"
      },
      "message": "net: remove CVS keywords\n\nThis patch removes CVS keywords that weren\u0027t updated for a long time\nfrom comments.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ce4a7d0d48bbaed78ccbb0bafb9229651a40303a",
      "tree": "df8770ef69c71a0d6935154add3ff3f4bb8dbc3a",
      "parents": [
        "45d465bc237ab1e1ebb4c65b9b318830dafb7509"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jun 10 12:39:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 10 12:39:35 2008 -0700"
      },
      "message": "inet{6}_request_sock: Init -\u003eopt and -\u003epktopts in the constructor\n\nWei Yongjun noticed that we may call reqsk_free on request sock objects where\nthe opt fields may not be initialized, fix it by introducing inet_reqsk_alloc\nwhere we initialize -\u003eopt to NULL and set -\u003epktopts to NULL in\ninet6_reqsk_alloc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4dfc2817025965a2fc78a18c50f540736a6b5c24",
      "tree": "f8f2f76e660d9d5c7a0f39ed8a79cb6d6d181206",
      "parents": [
        "15be75cdb5db442d0e33d37b20832b88f3ccd383"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Thu Apr 10 03:12:40 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 03:12:40 2008 -0700"
      },
      "message": "[Syncookies]: Add support for TCP options via timestamps.\n\nAllow the use of SACK and window scaling when syncookies are used\nand the client supports tcp timestamps. Options are encoded into\nthe timestamp sent in the syn-ack and restored from the timestamp\necho when the ack is received.\n\nBased on earlier work by Glenn Griffin.\nThis patch avoids increasing the size of structs by encoding TCP\noptions into the least significant bits of the timestamp and\nby not using any \u0027timestamp offset\u0027.\n\nThe downside is that the timestamp sent in the packet after the synack\nwill increase by several seconds.\n\nchanges since v1:\n don\u0027t duplicate timestamp echo decoding function, put it into ipv4/syncookie.c\n and have ipv6/syncookies.c use it.\n Feedback from Glenn Griffin: fix line indented with spaces, kill redundant if ()\n\nReviewed-by: Hagen Paul Pfeifer \u003chagen@jauu.net\u003e\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n\n"
    },
    {
      "commit": "2051f11fb86b0056fec440fe7e9fa8370d60a5c6",
      "tree": "e93befbb8fb6590994b51aa213bf9596c0070bc1",
      "parents": [
        "310afe86af8ddd96a06b75aa61ef1af233f80e89"
      ],
      "author": {
        "name": "Florian Westphal",
        "email": "fw@strlen.de",
        "time": "Sun Mar 23 22:21:28 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 23 22:21:28 2008 -0700"
      },
      "message": "[TCP]: Shrink syncookie_secret by 8 byte.\n\nthe first u32 copied from syncookie_secret is overwritten by the\nminute-counter four lines below.  After adjusting the destination\naddress, the size of syncookie_secret can be reduced accordingly.\n\nAFAICS, the only other user of syncookie_secret[] is the ipv6\nsyncookie support.  Because ipv6 syncookies only grab 44 bytes from\nsyncookie_secret[], this shouldn\u0027t affect them in any way.\n\nWith fixes from Glenn Griffin.\n\nSigned-off-by: Florian Westphal \u003cfw@strlen.de\u003e\nAcked-by: Glenn Griffin \u003cggriffin.kernel@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c6aefafb7ec620911d46174eed514f9df639e5a4",
      "tree": "626e3d47a7bb31f586935c480bed09f342f2fbca",
      "parents": [
        "11baab7ac34723ad481e0f97fca733272ef364d4"
      ],
      "author": {
        "name": "Glenn Griffin",
        "email": "ggriffin.kernel@gmail.com",
        "time": "Thu Feb 07 21:49:26 2008 -0800"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 04 15:18:21 2008 +0900"
      },
      "message": "[TCP]: Add IPv6 support to TCP SYN cookies\n\nUpdated to incorporate Eric\u0027s suggestion of using a per cpu buffer\nrather than allocating on the stack.  Just a two line change, but will\nresend in it\u0027s entirety.\n\nSigned-off-by: Glenn Griffin \u003cggriffin.kernel@gmail.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "11baab7ac34723ad481e0f97fca733272ef364d4",
      "tree": "611ed2f14f6e3c9d36d748094e4c9c736caa699b",
      "parents": [
        "988b705077d8f922408913f4f521ae073256d4a1"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Feb 07 10:40:19 2008 +0100"
      },
      "committer": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Tue Mar 04 15:18:21 2008 +0900"
      },
      "message": "[TCP]: lower stack usage in cookie_hash() function\n\n400 bytes allocated on stack might be a litle bit too much. Using a\nper_cpu var is more friendly.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\n"
    },
    {
      "commit": "f206351a50ea86250fabea96b9af8d8f8fc02603",
      "tree": "014148d8b45db1995d98374ec3b30e635f243197",
      "parents": [
        "f1b050bf7a88910f9f00c9c8989c1bf5a67dd140"
      ],
      "author": {
        "name": "Denis V. Lunev",
        "email": "den@openvz.org",
        "time": "Tue Jan 22 22:07:34 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 15:11:07 2008 -0800"
      },
      "message": "[NETNS]: Add namespace parameter to ip_route_output_key.\n\nNeeded to propagate it down to the ip_route_output_flow.\n\nSigned-off-by: Denis V. Lunev \u003cden@openvz.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aa8223c7bb0b05183e1737881ed21827aa5b9e73",
      "tree": "05c9832326edfeb878472f15cf8133ed9f014cdf",
      "parents": [
        "ab6a5bb6b28a970104a34f0f6959b73cf61bdc72"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 10 21:04:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:26 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce tcp_hdr(), remove skb-\u003eh.th\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": "e905a9edab7f4f14f9213b52234e4a346c690911",
      "tree": "9e52a5f47eec47c5685c347ff7af22290a10305b",
      "parents": [
        "642656518b2e64fd59d9bbd15b6885cac5fe99b1"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:24:47 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:19:39 2007 -0800"
      },
      "message": "[NET] IPV4: Fix whitespace errors.\n\nSigned-off-by: YOSHIFUJI Hideaki \u003cyoshfuji@linux-ipv6.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "714e85be3557222bc25f69c252326207c900a7db",
      "tree": "cb59a6d0a94245dc8575507386af1be31dd7fad9",
      "parents": [
        "252e33467a3b016f20dd8df12269cef3b167f21e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Nov 14 20:51:49 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:22:50 2006 -0800"
      },
      "message": "[IPV6]: Assorted trivial endianness annotations.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4237c75c0a35535d7f9f2bfeeb4b4df1e068a0bf",
      "tree": "02adcb6fe6c346a8b99cf161ba5233ed1e572727",
      "parents": [
        "cb969f072b6d67770b559617f14e767f47e77ece"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@TrustedCS.com",
        "time": "Mon Jul 24 23:32:50 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:29 2006 -0700"
      },
      "message": "[MLSXFRM]: Auto-labeling of child sockets\n\nThis automatically labels the TCP, Unix stream, and dccp child sockets\nas well as openreqs to be at the same MLS level as the peer. This will\nresult in the selection of appropriately labeled IPSec Security\nAssociations.\n\nThis also uses the sock\u0027s sid (as opposed to the isec sid) in SELinux\nenforcement of secmark in rcv_skb and postroute_last hooks.\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "beb8d13bed80f8388f1a9a107d07ddd342e627e8",
      "tree": "19d5763b9b3b8ff3969997565e5ec0edd6e4bd33",
      "parents": [
        "4e2ba18eae7f370c7c3ed96eaca747cc9b39f917"
      ],
      "author": {
        "name": "Venkat Yekkirala",
        "email": "vyekkirala@TrustedCS.com",
        "time": "Fri Aug 04 23:12:42 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:53:27 2006 -0700"
      },
      "message": "[MLSXFRM]: Add flow labeling\n\nThis labels the flows that could utilize IPSec xfrms at the points the\nflows are defined so that IPSec policy and SAs at the right label can\nbe used.\n\nThe following protos are currently not handled, but they should\ncontinue to be able to use single-labeled IPSec like they currently\ndo.\n\nipmr\nip_gre\nipip\nigmp\nsit\nsctp\nip6_tunnel (IPv6 over IPv6 tunnel device)\ndecnet\n\nSigned-off-by: Venkat Yekkirala \u003cvyekkirala@TrustedCS.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8292a17a399ffb7c5c8b083db4ad994e090055f7",
      "tree": "1544436169ba1dc2eface34664a203c2c17a8d65",
      "parents": [
        "ca304b6104ffdd120bb6687a88a0625e58bc71cd"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Dec 13 23:15:52 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:10:38 2006 -0800"
      },
      "message": "[ICSK]: Rename struct tcp_func to struct inet_connection_sock_af_ops\n\nAnd move it to struct inet_connection_sock. DCCP will use it in the\nupcoming changesets.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "20380731bc2897f2952ae055420972ded4cd786e",
      "tree": "abd31e5ebfadcf4f9024634eec8b11855029e512",
      "parents": [
        "9deff7f2365958c5c5aa8cb5a0dd651c4dd83f8f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Tue Aug 16 02:18:02 2005 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:01:32 2005 -0700"
      },
      "message": "[NET]: Fix sparse warnings\n\nOf this type, mostly:\n\nCHECK   net/ipv6/netfilter.c\nnet/ipv6/netfilter.c:96:12: warning: symbol \u0027ipv6_netfilter_init\u0027 was not declared. Should it be static?\nnet/ipv6/netfilter.c:101:6: warning: symbol \u0027ipv6_netfilter_fini\u0027 was not declared. Should it be static?\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "463c84b97f24010a67cd871746d6a7e4c925a5f9",
      "tree": "48df67ede4ebb5d12b3c0ae55d72531574bd51a6",
      "parents": [
        "87d11ceb9deb7a3f13fdee6e89d9bb6be7d27a71"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Tue Aug 09 20:10:42 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:43:19 2005 -0700"
      },
      "message": "[NET]: Introduce inet_connection_sock\n\nThis creates struct inet_connection_sock, moving members out of struct\ntcp_sock that are shareable with other INET connection oriented\nprotocols, such as DCCP, that in my private tree already uses most of\nthese members.\n\nThe functions that operate on these members were renamed, using a\ninet_csk_ prefix while not being moved yet to a new file, so as to\nease the review of these changes.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60236fdd08b2169045a3bbfc5ffe1576e6c3c17b",
      "tree": "4541c682cc72daf560ec516e2b5868089a88b6ea",
      "parents": [
        "2e6599cb899ba4b133f42cbf9d2b1883d2dc583a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:47:21 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:47:21 2005 -0700"
      },
      "message": "[NET] Rename open_request to request_sock\n\nOk, this one just renames some stuff to have a better namespace and to\ndissassociate it from TCP:\n\nstruct open_request  -\u003e struct request_sock\ntcp_openreq_alloc    -\u003e reqsk_alloc\ntcp_openreq_free     -\u003e reqsk_free\ntcp_openreq_fastfree -\u003e __reqsk_free\n\nWith this most of the infrastructure closely resembles a struct\nsock methods subset.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e6599cb899ba4b133f42cbf9d2b1883d2dc583a",
      "tree": "b5d4fcca4d2a515fc3d3d20cefaaeebd8dbf661f",
      "parents": [
        "1944972d3bb651474a5021c9da8d0166ae19f1eb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@ghostprotocols.net",
        "time": "Sat Jun 18 22:46:52 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 18 22:46:52 2005 -0700"
      },
      "message": "[NET] Generalise TCP\u0027s struct open_request minisock infrastructure\n\nKept this first changeset minimal, without changing existing names to\nease peer review.\n\nBasicaly tcp_openreq_alloc now receives the or_calltable, that in turn\nhas two new members:\n\n-\u003eslab, that replaces tcp_openreq_cachep\n-\u003eobj_size, to inform the size of the openreq descendant for\n  a specific protocol\n\nThe protocol specific fields in struct open_request were moved to a\nclass hierarchy, with the things that are common to all connection\noriented PF_INET protocols in struct inet_request_sock, the TCP ones\nin tcp_request_sock, that is an inet_request_sock, that is an\nopen_request.\n\nI.e. this uses the same approach used for the struct sock class\nhierarchy, with sk_prot indicating if the protocol wants to use the\nopen_request infrastructure by filling in sk_prot-\u003ersk_prot with an\nor_calltable.\n\nResults? Performance is improved and TCP v4 now uses only 64 bytes per\nopen request minisock, down from 96 without this patch :-)\n\nNext changeset will rename some of the structs, fields and functions\nmentioned above, struct or_calltable is way unclear, better name it\nstruct request_sock_ops, s/struct open_request/struct request_sock/g,\netc.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
