)]}'
{
  "log": [
    {
      "commit": "028940342a906db8da014a7603a0deddc2c323dd",
      "tree": "688dbc38a3e218f2493d311b1d70a67668837347",
      "parents": [
        "be3eed2e96340d3c7a4d1ea1d63e7bd6095d1e34",
        "0e93b4b304ae052ba1bc73f6d34a68556fe93429"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 16 22:17:37 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 16 22:17:37 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n"
    },
    {
      "commit": "e0268868ba064980488fc8c194db3d8e9fb2959c",
      "tree": "7b8bfb4cceb0a5d184a2fe651aab5aec59a216d3",
      "parents": [
        "c57b54684060c8aced64a5b78ff69ff289af97b9"
      ],
      "author": {
        "name": "Nicolas Dichtel",
        "email": "nicolas.dichtel@6wind.com",
        "time": "Fri May 04 05:24:54 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu May 10 23:15:47 2012 -0400"
      },
      "message": "sctp: check cached dst before using it\n\ndst_check() will take care of SA (and obsolete field), hence\nIPsec rekeying scenario is taken into account.\n\nSigned-off-by: Nicolas Dichtel \u003cnicolas.dichtel@6wind.com\u003e\nAcked-by: Vlad Yaseivch \u003cvyasevich@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "95c961747284a6b83a5e2d81240e214b0fa3464d",
      "tree": "c7be86a00db3605a48a03109fafcbe31039ca2e0",
      "parents": [
        "5e73ea1a31c3612aa6dfe44f864ca5b7b6a4cff9"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Sun Apr 15 05:58:06 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 15 12:44:40 2012 -0400"
      },
      "message": "net: cleanup unsigned to unsigned int\n\nUse of \"unsigned int\" is preferred to bare \"unsigned\" in net tree.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a76c0adf60f6ca5ff3481992e4ea0383776b24d2",
      "tree": "97d0fa429a11bf6a975778728e10fd44bbfad80f",
      "parents": [
        "e8303a3b2196272c3eb994d0fd1a189a958a2bdd"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@redhat.com",
        "time": "Mon Dec 19 04:11:40 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Dec 20 13:58:37 2011 -0500"
      },
      "message": "sctp: Do not account for sizeof(struct sk_buff) in estimated rwnd\n\nWhen checking whether a DATA chunk fits into the estimated rwnd a\nfull sizeof(struct sk_buff) is added to the needed chunk size. This\nquickly exhausts the available rwnd space and leads to packets being\nsent which are much below the PMTU limit. This can lead to much worse\nperformance.\n\nThe reason for this behaviour was to avoid putting too much memory\npressure on the receiver. The concept is not completely irational\nbecause a Linux receiver does in fact clone an skb for each DATA chunk\ndelivered. However, Linux also reserves half the available socket\nbuffer space for data structures therefore usage of it is already\naccounted for.\n\nWhen proposing to change this the last time it was noted that this\nbehaviour was introduced to solve a performance issue caused by rwnd\noverusage in combination with small DATA chunks.\n\nTrying to reproduce this I found that with the sk_buff overhead removed,\nthe performance would improve significantly unless socket buffer limits\nare increased.\n\nThe following numbers have been gathered using a patched iperf\nsupporting SCTP over a live 1 Gbit ethernet network. The -l option\nwas used to limit DATA chunk sizes. The numbers listed are based on\nthe average of 3 test runs each. Default values have been used for\nsk_(r|w)mem.\n\nChunk\nSize    Unpatched     No Overhead\n-------------------------------------\n   4    15.2 Kbit [!]   12.2 Mbit [!]\n   8    35.8 Kbit [!]   26.0 Mbit [!]\n  16    95.5 Kbit [!]   54.4 Mbit [!]\n  32   106.7 Mbit      102.3 Mbit\n  64   189.2 Mbit      188.3 Mbit\n 128   331.2 Mbit      334.8 Mbit\n 256   537.7 Mbit      536.0 Mbit\n 512   766.9 Mbit      766.6 Mbit\n1024   810.1 Mbit      808.6 Mbit\n\nSigned-off-by: Thomas Graf \u003ctgraf@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b73c43f884b1b26ef8e824a33f3924f92e493c11",
      "tree": "83b71863345ef94720c00b4d7aedc387d3eee8c7",
      "parents": [
        "51414d41084496aaefd06d7f19eb8206e8bfac2d"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Wed Jul 13 14:10:29 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 14 15:16:31 2011 -0700"
      },
      "message": "net: sctp: fix checksum marking for outgoing packets\n\nPackets to devices without NETIF_F_SCTP_CSUM (including NETIF_F_NO_CSUM)\nshould be properly checksummed because the packets can be diverted or\nrerouted after construction. This still leaves packets diverted from\nNETIF_F_SCTP_CSUM-enabled devices with broken checksums. Fixing this\nneeds implementing software offload fallback in networking core.\n\nFor users of sctp_checksum_disable, skb-\u003eip_summed should be left as\nCHECKSUM_NONE and not CHECKSUM_UNNECESSARY as per include/linux/skbuff.h.\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "e40051d134f7ee95c8c1f7a3471e84eafc9ab326",
      "tree": "88eb44e49a75721ae926665a2c42f08badac9d07",
      "parents": [
        "42099d7a3941d4aaf853caac92b3ae76149fc6e7",
        "2cc6d2bf3d6195fabcf0febc192c01f99519a8f3"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Sep 27 01:03:03 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/qlcnic/qlcnic_init.c\n\tnet/ipv4/ip_output.c\n"
    },
    {
      "commit": "4bdab43323b459900578b200a4b8cf9713ac8fab",
      "tree": "7a732994407ebb88698845ee36dbf98c062af49e",
      "parents": [
        "2507136f74f70a4869bd4f525d48715ae66db43d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Sep 15 10:00:26 2010 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 17 16:47:56 2010 -0700"
      },
      "message": "sctp: Do not reset the packet during sctp_packet_config().\n\nsctp_packet_config() is called when getting the packet ready\nfor appending of chunks.  The function should not touch the\ncurrent state, since it\u0027s possible to ping-pong between two\ntransports when sending, and that can result packet corruption\nfollowed by skb overlfow crash.\n\nReported-by: Thomas Dreibholz \u003cdreibh@iem.uni-due.de\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "145ce502e44b57c074c72cfdc855557e19026999",
      "tree": "fd663feae03f5c5f4a31ceecd6a61e790344b8b3",
      "parents": [
        "dee06e4702b5a64b9ca81e650d66223c5b3e7f14"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Aug 24 13:21:08 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Aug 26 14:11:48 2010 -0700"
      },
      "message": "net/sctp: Use pr_fmt and pr_\u003clevel\u003e\n\nChange SCTP_DEBUG_PRINTK and SCTP_DEBUG_PRINTK_IPADDR to\nuse do { print } while (0) guards.\nAdd SCTP_DEBUG_PRINTK_CONT to fix errors in log when\nlines were continued.\nAdd #define pr_fmt(fmt) KBUILD_MODNAME \": \" fmt\nAdd a missing newline in \"Failed bind hash alloc\"\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0e3aef8d09a8c11e3fb83cdcb24b5bc7421b3726",
      "tree": "62e19d24380a9a8308d0ef3f2186742944971a5c",
      "parents": [
        "bfa0d9843ac5feb9667990706b4524390fee4df9"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 22:41:10 2010 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 22:41:10 2010 -0400"
      },
      "message": "sctp: Tag messages that can be Nagle delayed at creation.\n\nWhen we create the sctp_datamsg and fragment the user data,\nwe know exactly if we are sending full segments or not and\nhow they might be bundled.  During this time, we can mark\nmessages a Nagle capable or not.  This makes the check at\ntransmit time much simpler.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "ae19c54866450f6c6f79223ca7d37965859a54e1",
      "tree": "4da39a450974841532148b15b15de182c8e40dac",
      "parents": [
        "d598b166ced20d9b9281ea3527c0e18405ddb803"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 22:41:09 2010 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Apr 30 22:41:09 2010 -0400"
      },
      "message": "sctp: remove \u0027resent\u0027 bit from the chunk\n\nThe \u0027resent\u0027 bit is used to make sure that we don\u0027t update\nrto estimate based on retransmitted chunks.  However, we already\nhave the \u0027rto_pending\u0027 bit that we test when need to update rto,\nso \u0027resent\u0027 bit is just extra.  Additionally, we currently have\na bug in that we always set a \u0027resent\u0027 bit and thus rto estimate\nis only updated by Heartbeats.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "d8dd15781dd621c5ceab79083f4c5112787863f5",
      "tree": "49ee8bfc01d2ded7130a0c17298ca7a9db998fa4",
      "parents": [
        "46d5a808558181e03a4760d2188cc9879445738a"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Mon Nov 23 15:54:00 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:54:00 2009 -0500"
      },
      "message": "sctp: Fix mis-ordering of user space data when multihoming in use\n\nRecently had a bug reported to me, in which the user was sending\npackets with a payload containing a sequence number.  The packets\nwere getting delivered in order according the chunk TSN values, but\nthe sequence values in the payload were arriving out of order.  At\nfirst I thought it must be an application error, but we eventually\nfound it to be a problem on the transmit side in the sctp stack.\n\nThe conditions for the error are that multihoming must be in use,\nand it helps if each transport has a different pmtu.  The problem\noccurs in sctp_outq_flush.  Basically we dequeue packets from the\ndata queue, and attempt to append them to the orrered packet for a\ngiven transport.  After we append a data chunk we add the trasport\nto the end of a list of transports to have their packets sent at\nthe end of sctp_outq_flush.  The problem occurs when a data chunks\nfills up a offered packet on a transport.  The function that does\nthe appending (sctp_packet_transmit_chunk), will try to call\nsctp_packet_transmit on the full packet, and then append the chunk\nto a new packet.  This call to sctp_packet_transmit, sends that\npacket ahead of the others that may be queued in the transport_list\nin sctp_outq_flush.  The result is that frames that were sent in one\norder from the user space sending application get re-ordered prior\nto tsn assignment in sctp_packet_transmit, resulting in mis-sequencing\nof data payloads, even though tsn ordering is correct.\n\nThe fix is to change where we assign a tsn.  By doing this earlier,\nwe are then free to place chunks in packets, whatever way we\nsee fit and the protocol will make sure to do all the appropriate\nre-ordering on receive as is needed.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nReported-by: William Reich \u003creich@ulticom.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "46d5a808558181e03a4760d2188cc9879445738a",
      "tree": "a51cc59d64042f61518d25ef4ecc71924f243084",
      "parents": [
        "a5b03ad2143c5bc9ae76533e8321fe66258b4f35"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:54:00 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:54:00 2009 -0500"
      },
      "message": "sctp: Update max.burst implementation\n\nCurrent implementation of max.burst ends up limiting new\ndata during cwnd decay period.  The decay is happening becuase\nthe connection is idle and we are allowed to fill the congestion\nwindow.  The point of max.burst is to limit micro-bursts in response\nto large acks.  This still happens, as max.burst is still applied\nto each transmit opportunity.  It will also apply if a very large\nsend is made (greater then allowed by burst).\n\nTested-by: Florian Niederbacher \u003cflorian.niederbacher@student.uibk.ac.at\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "245cba7e55929dc2b10b7d915bfba0168eeeed17",
      "tree": "768264e6c1666552ba30cf7849ef4a5c1549a6e5",
      "parents": [
        "a242b41dedfe0fd51ab1c906daa703c09b196744"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:53:58 2009 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Nov 23 15:53:58 2009 -0500"
      },
      "message": "sctp: Remove useless last_time_used variable\n\nThe transport last_time_used variable is rather useless.\nIt was only used when determining if CWND needs to be updated\ndue to idle transport.  However, idle transport detection was\nbased on a Heartbeat timer and last_time_used was not incremented\nwhen sending Heartbeats.  As a result the check for cwnd reduction\nwas always true.  We can get rid of the variable and just base\nour cwnd manipulation on the HB timer (like the code comment sais).\nWe also have to call into the cwnd manipulation function regardless\nof whether HBs are enabled or not.  That way we will detect idle\ntransports if the user has disabled Heartbeats.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "be2971438dec2e2d041af4701472a93a7dd03642",
      "tree": "9b69e184f1be9815f471f06a5456a68aef59578f",
      "parents": [
        "9237ccbc0b22b5aa5396463ba0b14dc5efe5b98c"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Fri Sep 04 14:34:06 2009 +0800"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:02 2009 -0400"
      },
      "message": "sctp: remove dup code in net/sctp/output.c\n\nUse sctp_packet_reset() instead of dup code.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "4007cc88ceec8892b74792f0a10983b140beae72",
      "tree": "6a1af00a4ca24155255c031fdcd05b7d6ead59ab",
      "parents": [
        "d521c08f4c16d27f193718da778503a6472501da"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "message": "sctp: Correctly track if AUTH has been bundled.\n\nWe currently track if AUTH has been bundled using the \u0027auth\u0027\npointer to the chunk.  However, AUTH is disallowed after DATA\nis already in the packet, so we need to instead use the\n\u0027has_auth\u0027 field.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "d521c08f4c16d27f193718da778503a6472501da",
      "tree": "44bc280f8711bf13942a192037cf5f96670053b7",
      "parents": [
        "31b02e1549406efa346534acad956a42bc3f28c4"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Wed Sep 02 13:05:33 2009 +0800"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:21:00 2009 -0400"
      },
      "message": "sctp: fix to reset packet information after packet transmit\n\nThe packet information does not reset after packet transmit, this\nmay cause some problems such as following DATA chunk be sent without\nAUTH chunk, even if the authentication of DATA chunk has been\nrequested by the peer.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "cb95ea32a457871f72752164de8d94fa20f4703c",
      "tree": "0a419cdc3fe5e7e2d5fa5036a40d93a4bb6aac42",
      "parents": [
        "b29e7907288554db9c987c36facfd0304ee8ff5a"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "message": "sctp: Don\u0027t do NAGLE delay on large writes that were fragmented small\n\nSCTP will delay the last part of a large write due to NAGLE, if that\npart is smaller then MTU.  Since we are doing large writes, we might\nas well send the last portion now instead of waiting untill the next\nlarge write happens.  The small portion will be sent as is regardless,\nso it\u0027s better to not delay it.\n\nThis is a result of much discussions with Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nand Doug Graham \u003cdgraham@nortel.com\u003e.  Many thanks go out to them.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "b29e7907288554db9c987c36facfd0304ee8ff5a",
      "tree": "5a20e7c0e59cfc986b20b915f5bd624850d56619",
      "parents": [
        "d4d6fb5787a6ef6e1dab731d617ebda6be73d561"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:59 2009 -0400"
      },
      "message": "sctp: Nagle delay should be based on path mtu\n\nThe decision to delay due to Nagle should be based on the path mtu\nand future packet size.  We currently incorrectly base it on\n\u0027frag_point\u0027 which is the SCTP DATA segment size, and also we do\nnot count DATA chunk header overhead in the computation.  This\nactuall allows situations where a user can set low \u0027frag_point\u0027,\nand then send small messages without delay.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "e83963b769a2c38b436f5dcf82309f5cbc2f6012",
      "tree": "682a21fa15fd49e22e11d4a64cfea6771b3b5d94",
      "parents": [
        "3e62abf92f34d75fe22352d8d102e3cd2755804d"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Aug 07 10:43:07 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:56 2009 -0400"
      },
      "message": "sctp: Generate SACKs when actually sending outbound DATA\n\nWe are now trying to bundle SACKs when we have outbound\nDATA to send.  However, there are situations where this\noutbound DATA will not be sent (due to congestion or \navailable window).  In such cases it\u0027s ok to wait for the\ntimer to expire.  This patch refactors the sending code\nso that betfore attempting to bundle the SACK we check\nto see if the DATA will actually be transmitted.\n\nBased on eirlier works for Doug Graham \u003cdgraham@nortel.com\u003e and\nWei Youngjun \u003cyjwei@cn.fujitsu.com\u003e.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "af87b823ca2b05257192e8d48dc686db6173d7b2",
      "tree": "da1756a3917bf1b737c4854bb7acc579c1c187d5",
      "parents": [
        "b4e8c6a7e6caa9c80edcbfb78fc50962b792d5f0"
      ],
      "author": {
        "name": "Doug Graham",
        "email": "dgraham@nortel.com",
        "time": "Wed Jul 29 12:05:57 2009 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 04 18:20:55 2009 -0400"
      },
      "message": "sctp: Fix piggybacked ACKs\n\nThis patch corrects the conditions under which a SACK will be piggybacked\non a DATA packet.  The previous condition was incorrect due to a\nmisinterpretation of RFC 4960 and/or RFC 2960.  Specifically, the\nfollowing paragraph from section 6.2 had not been implemented correctly:\n\n   Before an endpoint transmits a DATA chunk, if any received DATA\n   chunks have not been acknowledged (e.g., due to delayed ack), the\n   sender should create a SACK and bundle it with the outbound DATA\n   chunk, as long as the size of the final SCTP packet does not exceed\n   the current MTU.  See Section 6.2.\n\nWhen about to send a DATA chunk, the code now checks to see if the SACK\ntimer is running.  If it is, we know we have a SACK to send to the\npeer, so we append the SACK (assuming available space in the packet)\nand turn off the timer.  For a simple request-response scenario, this\nwill result in the SACK being bundled with the response, meaning the\nthe SACK is received quickly by the client, and also meaning that no\nseparate SACK packet needs to be sent by the server to acknowledge the\nrequest.  Prior to this patch, a separate SACK packet would have been\nsent by the server SCTP only after its delayed-ACK timer had expired\n(usually 200ms).  This is wasteful of bandwidth, and can also have a\nmajor negative impact on performance due the interaction of delayed ACKs\nwith the Nagle algorithm.\n\nSigned-off-by: Doug Graham \u003cdgraham@nortel.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "ff0ac74afb5b9916641723a78796d4ee7937c2ea",
      "tree": "8056226e0c4aaf07249de626b42d32c2a188cf8a",
      "parents": [
        "d51e9b0d94336db56a13fdc65bb30751e3ea33b7"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Sun Jun 28 22:49:37 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 29 19:41:53 2009 -0700"
      },
      "message": "sctp: xmit sctp packet always return no route error\n\nCommit \u0027net: skb-\u003edst accessors\u0027(adf30907d63893e4208dfe3f5c88ae12bc2f25d5)\nbroken the sctp protocol stack, the sctp packet can never be sent out after\nEric Dumazet\u0027s patch, which have typo in the sctp code.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Vlad Yasevich \u003cvladisalv.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "adf30907d63893e4208dfe3f5c88ae12bc2f25d5",
      "tree": "0f07542bb95de2ad537540868aba6cf87a86e17d",
      "parents": [
        "511c3f92ad5b6d9f8f6464be1b4f85f0422be91a"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Jun 02 05:19:30 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 03 02:51:04 2009 -0700"
      },
      "message": "net: skb-\u003edst accessors\n\nDefine three accessors to get/set dst attached to a skb\n\nstruct dst_entry *skb_dst(const struct sk_buff *skb)\n\nvoid skb_dst_set(struct sk_buff *skb, struct dst_entry *dst)\n\nvoid skb_dst_drop(struct sk_buff *skb)\nThis one should replace occurrences of :\ndst_release(skb-\u003edst)\nskb-\u003edst \u003d NULL;\n\nDelete skb-\u003edst field\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8dc92f7e2ecfd93f5c57da78594a7a5482e2c15e",
      "tree": "10ebbfa0dc4f0b175c95cf47f2ba013aa532676e",
      "parents": [
        "182ff8dfdb63e66ca81e4d3a4c746f8d578e5687"
      ],
      "author": {
        "name": "Jesse Brandeburg",
        "email": "jesse.brandeburg@intel.com",
        "time": "Mon Apr 27 22:35:52 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Apr 28 01:53:14 2009 -0700"
      },
      "message": "sctp: add feature bit for SCTP offload in hardware\n\nthis is the sctp code to enable hardware crc32c offload for\nadapters that support it.\n\nOriginally by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n\nmodified by Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\n\nSigned-off-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Jeff Kirsher \u003cjeffrey.t.kirsher@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8d2f9e81169b8120cf2b4872930ae491b17c27b8",
      "tree": "851d3cbb29052ae57f11eca4e6baa2b8dfbd3d38",
      "parents": [
        "09a3b1f8b1af7220fd7a3caf18e6841a7f5a6c6e"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sat Mar 21 13:41:09 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 21 13:41:09 2009 -0700"
      },
      "message": "sctp: Clean up TEST_FRAME hacks.\n\nRemove 2 TEST_FRAME hacks that are no longer needed.  These allowed\nsctp regression tests to compile before, but are no longer needed.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4458f04c02a46c679a90ef71f866a415c192deb4",
      "tree": "b08aa476ab4c525ab3cb33cea6114cb262cb2941",
      "parents": [
        "06e868066e3b5828383eb40ff4d1c0029100b0b5"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Feb 13 08:33:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 16 00:03:10 2009 -0800"
      },
      "message": "sctp: Clean up sctp checksumming code\n\nThe sctp crc32c checksum is always generated in little endian.\nSo, we clean up the code to treat it as little endian and remove\nall the __force casts.\n\nSuggested by Herbert Xu.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "06e868066e3b5828383eb40ff4d1c0029100b0b5",
      "tree": "5fb84de9aff8a0b5d225a4c1137000ef6cc00dd5",
      "parents": [
        "85e8d004ecbc51ead6ae926e15973b42cf07b36e"
      ],
      "author": {
        "name": "Lucas Nussbaum",
        "email": "lucas.nussbaum@ens-lyon.fr",
        "time": "Fri Feb 13 08:33:41 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Feb 16 00:03:09 2009 -0800"
      },
      "message": "sctp: Allow to disable SCTP checksums via module parameter\n\nThis is a new version of my patch, now using a module parameter instead\nof a sysctl, so that the option is harder to find. Please note that,\nonce the module is loaded, it is still possible to change the value of\nthe parameter in /sys/module/sctp/parameters/, which is useful if you\nwant to do performance comparisons without rebooting.\n\nComputation of SCTP checksums significantly affects the performance of\nSCTP. For example, using two dual-Opteron 246 connected using a Gbe\nnetwork, it was not possible to achieve more than ~730 Mbps, compared to\n941 Mbps after disabling SCTP checksums.\nUnfortunately, SCTP checksum offloading in NICs is not commonly\navailable (yet).\n\nBy default, checksums are still enabled, of course.\n\nSigned-off-by: Lucas Nussbaum \u003clucas.nussbaum@ens-lyon.fr\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "09640e6365c679b5642b1c41b6d7078f51689ddf",
      "tree": "a2b80c153bd23fe59db8c6994fda29923819fcea",
      "parents": [
        "ee437770c42088b9b653e8b3bf28a61fa647f84e"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Sun Feb 01 00:45:17 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 01 00:45:17 2009 -0800"
      },
      "message": "net: replace uses of __constant_{endian}\n\nBase versions handle constant folding now.\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "759af00ebef858015eb68876ac1f383bcb6a1774",
      "tree": "4a7b6d9ea1732f5f1e3f109faa0891d779b4522a",
      "parents": [
        "6574df9a89f9f7da3a4e5cee7633d430319d3350"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jan 22 14:53:01 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 22 14:53:01 2009 -0800"
      },
      "message": "sctp: Properly timestamp outgoing data chunks for rtx purposes\n\nRecent changes to the retransmit code exposed a long standing\nbug where it was possible for a chunk to be time stamped\nafter the retransmit timer was reset.  This caused a rare\nsituation where the retrnamist timer has expired, but\nnothing was marked for retrnasmission because all of\ntimesamps on data were less then 1 rto ago.  As result,\nthe timer was never restarted since nothing was retransmitted,\nand this resulted in a hung association that did couldn\u0027t\ncomplete the data transfer.  The solution is to timestamp\nthe chunk when it\u0027s added to the packet for transmission\npurposes.  After the packet is trsnmitted the rtx timer\nis restarted.  This guarantees that when the timer expires,\nthere will be data to retransmit.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c226ef9b83694311327f3ab0036c6de9c22e9daf",
      "tree": "04c81b4186fd79a1f1b129a8627da6a41ceb4c25",
      "parents": [
        "845b8eda4d783a7ce2670d482a716840a650389e"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Fri Jul 25 12:44:09 2008 -0400"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Oct 01 11:33:06 2008 -0400"
      },
      "message": "sctp: reduce memory footprint of sctp_chunk structure\n\nsctp_chunks should be put on a diet.  This is some of the low hanging\nfruit that we can strip out.  Changes all the __s8/__u8 flags to\nbitfields.  Saves 12 bytes per chunk.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "a3028b8ed1e1e9930bfa70ce4555fb7f9fad3dcc",
      "tree": "45f2e4fe7618dbf79f0a6ff74ddaa308ddc27277",
      "parents": [
        "93821778def10ec1e69aa3ac10adee975dad4ff3"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Sep 18 02:48:25 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 18 02:48:25 2008 -0700"
      },
      "message": "sctp: set the skb-\u003eip_summed correctly when sending over loopback.\n\nLoopback used to clobber the ip_summed filed which sctp then used\nto figure out if it needed to do checksumming or not.  Now that\nloopback doesn\u0027t do that any more, sctp needs to set the ip_summed\nfield correctly.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f880374c2fe37aad3fa62253a4bc125d7a933aad",
      "tree": "7ff62dfd04689f09c0c27b24340479fc92de5e0d",
      "parents": [
        "cfb266c0ee0ea0b7bfa8189e3a3a80344dec6112"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Aug 03 21:15:08 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 03 21:15:08 2008 -0700"
      },
      "message": "sctp: Drop ipfargok in sctp_xmit function\n\nThe ipfragok flag controls whether the packet may be fragmented\neither on the local host on beyond.  The latter is only valid on\nIPv4.\n\nIn fact, we never want to do the latter even on IPv4 when PMTU is\nenabled.  This is because even though we can\u0027t fragment packets\nwithin SCTP due to the prtocol\u0027s inherent faults, we can still\nfragment it at IP layer.  By setting the DF bit we will improve\nthe PMTU process.\n\nRFC 2960 only says that we SHOULD clear the DF bit in this case,\nso we\u0027re compliant even if we set the DF bit.  In fact RFC 4960\nno longer has this statement.\n\nOnce we make this change, we only need to control the local\nfragmentation.  There is already a bit in the skb which controls\nthat, local_df.  So this patch sets that instead of using the\nipfragok argument.\n\nThe only complication is that there isn\u0027t a struct sock object\nper transport, so for IPv4 we have to resort to changing the\npmtudisc field for every packet.  This should be safe though\nas the protocol is single-threaded.\n\nNote that after this patch we can remove ipfragok from the rest\nof the stack too.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "336d3262df71fcd2661180bb35d5ea41b4cbca58",
      "tree": "54078334c9c3706a003d4b54a8e9e9b23aa01cef",
      "parents": [
        "4e54064e0a13b7a7d4a481123c1783f770538e30"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Jul 18 23:07:09 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 18 23:07:09 2008 -0700"
      },
      "message": "sctp: remove unnecessary byteshifting, calculate directly in big-endian\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c73a6faffae0bfae70639113aecf06af666e714",
      "tree": "3d7910c4674b673b061f3168b140454b1950c346",
      "parents": [
        "5e38e270444f2629de7a706b5a9ca1b333d14517"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Jul 16 20:20:11 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 16 20:20:11 2008 -0700"
      },
      "message": "mib: add net to IP_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": "2e3216cd54b142ba605e87522e15f42e0c4e3996",
      "tree": "da4d7a6ff4811d9f38b81c70f08b221b575e1254",
      "parents": [
        "7115e632f90952454ab6426e0d2151327162a30f"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jun 19 16:08:18 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:08:18 2008 -0700"
      },
      "message": "sctp: Follow security requirement of responding with 1 packet\n\nRFC 4960, Section 11.4. Protection of Non-SCTP-Capable Hosts\n\nWhen an SCTP stack receives a packet containing multiple control or\nDATA chunks and the processing of the packet requires the sending of\nmultiple chunks in response, the sender of the response chunk(s) MUST\nNOT send more than one packet.  If bundling is supported, multiple\nresponse chunks that fit into a single packet MAY be bundled together\ninto one single response packet.  If bundling is not supported, then\nthe sender MUST NOT send more than one response chunk and MUST\ndiscard all other responses.  Note that this rule does NOT apply to a\nSACK chunk, since a SACK chunk is, in itself, a response to DATA and\na SACK does not require a response of more DATA.\n\nWe implement this by not servicing our outqueue until we reach the end\nof the packet.  This enables maximum bundling.  We also identify\n\u0027response\u0027 chunks and make sure that we only send 1 packet when sending\nsuch chunks.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b9031d9d87b24e24cd32ea15b5f4220a1e8da909",
      "tree": "9033b439bfead85c115f9952fc060424788e8759",
      "parents": [
        "8b750ce54bd8ab5f75d519ee450e1b0c5226ebe9"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Jun 04 12:40:15 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jun 04 12:40:15 2008 -0700"
      },
      "message": "sctp: Fix ECN markings for IPv6\n\nCommit e9df2e8fd8fbc95c57dbd1d33dada66c4627b44c (\"[IPV6]: Use\nappropriate sock tclass setting for routing lookup.\") also changed the\nway that ECN capable transports mark this capability in IPv6.  As a\nresult, SCTP was not marking ECN capablity because the traffic class\nwas never set.  This patch brings back the markings for IPv6 traffic.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0dc47877a3de00ceadea0005189656ae8dc52669",
      "tree": "7440a87385fe318cb42f0ae161be195f5e967d82",
      "parents": [
        "6387c4bed539539b05fa773cf2ff26529dc3074c"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 05 20:47:47 2008 -0800"
      },
      "message": "net: replace remaining __FUNCTION__ occurrences\n\n__FUNCTION__ is gcc-specific, use __func__\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "60c778b25972e095df8981dd41e99d161e8738f9",
      "tree": "546a16d6eca1acbf41ee2b772f12ba3f4ffa21e3",
      "parents": [
        "3113e88c3cb3c0a22920b621f8e4d1f2ccc07f1e"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Jan 11 09:57:09 2008 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Tue Feb 05 10:59:07 2008 -0500"
      },
      "message": "[SCTP]: Stop claiming that this is a \"reference implementation\"\n\nI was notified by Randy Stewart that lksctp claims to be\n\"the reference implementation\".  First of all, \"the\nrefrence implementation\" was the original implementation\nof SCTP in usersapce written ty Randy and a few others.\nSecond, after looking at the definiton of \u0027reference implementation\u0027,\nwe don\u0027t really meet the requirements.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "9ad0977fe10bd5d052a6db7738afe017367c2e32",
      "tree": "811087dfc2e70d7ef120815c7471c943ac193f6d",
      "parents": [
        "1bf40954cf232a043a49623cf251f787c1871e64"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sun Dec 16 14:06:41 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:58:20 2008 -0800"
      },
      "message": "[SCTP]: Use crc32c library for checksum calculations.\n\nThe crc32c library used an identical table and algorithm\nas SCTP.  Switch to using the library instead of carrying\nour own table.  Using crypto layer proved to have too\nmuch overhead compared to using the library directly.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4cd57c8078fae0a4b1bf421191e94626d0cba92a",
      "tree": "e17a54c65a7859b6283a341e0124d200da64ee3a",
      "parents": [
        "730fc3d05cd4ba4c9ce2de91f3d43349e95dbbf5"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sun Sep 16 19:32:45 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:31 2007 -0700"
      },
      "message": "[SCTP]: Enable the sending of the AUTH chunk.\n\nSCTP-AUTH, Section 6.2:\n\n   Endpoints MUST send all requested chunks authenticated where this has\n   been requested by the peer.  The other chunks MAY be sent\n   authenticated or not.  If endpoint pair shared keys are used, one of\n   them MUST be selected for authentication.\n\n   To send chunks in an authenticated way, the sender MUST include these\n   chunks after an AUTH chunk.  This means that a sender MUST bundle\n   chunks in order to authenticate them.\n\n   If the endpoint has no endpoint pair shared key for the peer, it MUST\n   use Shared Key Identifier 0 with an empty endpoint pair shared key.\n   If there are multiple endpoint shared keys the sender selects one and\n   uses the corresponding Shared Key Identifier\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a29a5bd4f5c3e8ba2e89688feab8b01c44f1654f",
      "tree": "2b98f0d572fee7dff79373c64f95a61f940db7e9",
      "parents": [
        "1f485649f52929d9937b346a920a522a7363e202"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sun Sep 16 19:31:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:30 2007 -0700"
      },
      "message": "[SCTP]: Implement SCTP-AUTH initializations.\n\nThe patch initializes AUTH related members of the generic SCTP\nstructures and provides a way to enable/disable auth extension.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3ff50b7997fe06cd5d276b229967bb52d6b3b6c1",
      "tree": "4f0f57123a945c3e6c39759456b6187bb78c4b1f",
      "parents": [
        "c462238d6a6d8ee855bda10f9fff442971540ed2"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Apr 20 17:09:22 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:29:24 2007 -0700"
      },
      "message": "[NET]: cleanup extra semicolons\n\nSpring cleaning time...\n\nThere seems to be a lot of places in the network code that have\nextra bogus semicolons after conditionals.  Most commonly is a\nbogus semicolon after: switch() { }\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@linux-foundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d808ad9ab8b1109239027c248c4652503b9d3029",
      "tree": "cdd09b4987a4efd687a0a138491d626f8b674de5",
      "parents": [
        "10297b99315e5e08fe623ba56da35db1fee69ba9"
      ],
      "author": {
        "name": "YOSHIFUJI Hideaki",
        "email": "yoshfuji@linux-ipv6.org",
        "time": "Fri Feb 09 23:25:18 2007 +0900"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Feb 10 23:20:11 2007 -0800"
      },
      "message": "[NET] SCTP: 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": "cd49788563d3b9e2ec0b316fa57aef1c0cb3bd4b",
      "tree": "a05455a25c805f5ec775f730ee7cab789948649d",
      "parents": [
        "208edef6a5b6c50363c77efcf34c4b4020681029"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Fri Sep 29 17:09:05 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 29 17:09:05 2006 -0700"
      },
      "message": "[SCTP]: Include sk_buff overhead while updating the peer\u0027s receive window.\n\nCurrently if the sender is sending small messages, it can cause a receiver\nto run out of receive buffer space even when the advertised receive window\nis still open and results in packet drops and retransmissions. Including\na overhead while updating the sender\u0027s view of peer receive window will\nreduce the chances of receive buffer space overshooting the receive window.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "503b55fd77d11381b1950d1651d3bc782c0cc2cd",
      "tree": "a960542bcc10b97218a601a94e56e579595c0a2c",
      "parents": [
        "4c9f5d5305a23851e67471b147e0d459a7166717"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Sat Jun 17 22:57:28 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 17 22:57:28 2006 -0700"
      },
      "message": "[SCTP]: Don\u0027t do CRC32C checksum over loopback.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27852c26baab8b95fc9a2b3e8a18770ecd553f10",
      "tree": "f07d3c696598ce6e7181ee30344bce899971e062",
      "parents": [
        "4641e7a334adf6856300a98e7296dfc886c446af"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Feb 02 16:57:31 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 02 16:57:31 2006 -0800"
      },
      "message": "[SCTP]: Fix \u0027fast retransmit\u0027 to send a TSN only once.\n\nSCTP used to \"fast retransmit\" a TSN every time we hit the number\nof missing reports for the TSN.  However the Implementers Guide\nspecifies that we should only \"fast retransmit\" a given TSN once.\nSubsequent retransmits should be timeouts only. Also change the\nnumber of missing reports to 3 as per the latest IG(similar to TCP).\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "52ccb8e90c0ace233b8b740f2fc5de0dbd706b27",
      "tree": "d2c06dd7b26e70c8dccf31971508005fdc82cbb2",
      "parents": [
        "fd9662555cc35f8bf9242cd7bba8b44ae168a68b"
      ],
      "author": {
        "name": "Frank Filz",
        "email": "ffilz@us.ibm.com",
        "time": "Thu Dec 22 11:36:46 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Jan 03 13:11:11 2006 -0800"
      },
      "message": "[SCTP]: Update SCTP_PEER_ADDR_PARAMS socket option to the latest api draft.\n\nThis patch adds support to set/get heartbeat interval, maximum number of\nretransmissions, pathmtu, sackdelay time for a particular transport/\nassociation/socket as per the latest SCTP sockets api draft11.\n\nSigned-off-by: Frank Filz \u003cffilz@us.ibm.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "79af02c2538d54ff0dcd3f43646f506207f2ee62",
      "tree": "0e77872e7ac3da31dd5d77f260a9ae391896869d",
      "parents": [
        "9c05989bb2264f0fa4fc95f81d2c4e6aa2eaa24d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 21:47:49 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Jul 08 21:47:49 2005 -0700"
      },
      "message": "[SCTP]: Use struct list_head for chunk lists, not sk_buff_head.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "594ccc14dfe4d61b476491758425a1c2ca4ec71b",
      "tree": "4fcf343d0bd39cbd233f169bbca59026c80d28f1",
      "parents": [
        "5e6bc34f86e450ff14c4817902d66aa9c786bc06"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Thu Apr 28 12:00:23 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 28 12:00:23 2005 -0700"
      },
      "message": "[SCTP] Replace incorrect use of dev_alloc_skb with alloc_skb in sctp_packet_transmit().\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\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"
    }
  ]
}
