)]}'
{
  "log": [
    {
      "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": "ae53b5bd77719fed58086c5be60ce4f22bffe1c6",
      "tree": "b48da8033f59117512a5486a779b0853a255dc7b",
      "parents": [
        "759af00ebef858015eb68876ac1f383bcb6a1774"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jan 22 14:53:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jan 22 14:53:23 2009 -0800"
      },
      "message": "sctp: Fix another socket race during accept/peeloff\n\nThere is a race between sctp_rcv() and sctp_accept() where we\nhave moved the association from the listening socket to the\naccepted socket, but sctp_rcv() processing cached the old\nsocket and continues to use it.\n\nThe easy solution is to check for the socket mismatch once we\u0027ve\ngrabed the socket lock.  If we hit a mis-match, that means\nthat were are currently holding the lock on the listening socket,\nbut the association is refrencing a newly accepted socket.  We need\nto drop the lock on the old socket and grab the lock on the new one.\n\nA more proper solution might be to create accepted sockets when\nthe new association is established, similar to TCP.  That would\neliminate the race for 1-to-1 style sockets, but it would still\nexisting for 1-to-many sockets where a user wished to peeloff an\nassociation.  For now, we\u0027ll live with this easy solution as\nit addresses the problem.\n\nReported-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nReported-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "91bd6b1e030266cf87d3f567b49f0fa60a7318ba",
      "tree": "d67e4365680e59a6eed1a13847f5fb9e016a7eed",
      "parents": [
        "dcc51417e5ee71bc1984825c23616030d57b83a4"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Oct 23 00:59:52 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 23 00:59:52 2008 -0700"
      },
      "message": "sctp: Drop ICMP packet too big message with MTU larger than current PMTU\n\nIf ICMP packet too big message is received with MTU larger than current\nPMTU, SCTP will still accept this ICMP message and sync the PMTU of assoc\nwith the wrong MTU.\n\nEndpoing A                 Endpoint B\n(ESTABLISHED)              (ESTABLISHED)\nICMP         ---------\u003e\n(packet too big, MTU too larger)\n                           sync PMTU\n\nThis patch fixed the problem by drop that ICMP message.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\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": "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": "dcfc23cac103b54dbc00a6f52f47656ad5c75844",
      "tree": "f9a61572791da6c37a50a2d17b73b5f89a6b5fc4",
      "parents": [
        "75c939bb4d6da790f758a2a3dcc7432f6d8778ee"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Mon Jul 14 23:03:00 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 14 23:05:29 2008 -0700"
      },
      "message": "mib: add struct net to ICMP_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": "7115e632f90952454ab6426e0d2151327162a30f",
      "tree": "73e075f91f62d980c6eab66b549f0ec381f75891",
      "parents": [
        "0344f1c66b544609e867bd24aa7bfa789dfa9830"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Jun 19 16:07:48 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 19 16:07:48 2008 -0700"
      },
      "message": "sctp: Validate Initiate Tag when handling ICMP message\n\nThis patch add to validate initiate tag and chunk type if verification\ntag is 0 when handling ICMP message.\n\nRFC 4960, Appendix C. ICMP Handling\n\nICMP6) An implementation MUST validate that the Verification Tag\ncontained in the ICMP message matches the Verification Tag of the peer.\nIf the Verification Tag is not 0 and does NOT match, discard the ICMP\nmessage.  If it is 0 and the ICMP message contains enough bytes to\nverify that the chunk type is an INIT chunk and that the Initiate Tag\nmatches the tag of the peer, continue with ICMP7.  If the ICMP message\nis too short or the chunk type or the Initiate Tag does not match,\nsilently discard the packet.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eab2e0b2ec150aec8887d0cf178f7c989296266f",
      "tree": "4baa4038b2761bf84aa643a3701845bd453b35b7",
      "parents": [
        "935a7f6e4d2f2c69a2d94cbda377684fffbdcb27"
      ],
      "author": {
        "name": "Gui Jianfeng",
        "email": "guijianfeng@cn.fujitsu.com",
        "time": "Thu Apr 10 02:00:23 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Apr 10 02:00:23 2008 -0700"
      },
      "message": "SCTP: Remove useless assignment from __sctp_rcv_lookup_endpoint\n\nSigned-off-by: Gui Jianfeng \u003cguijianfeng@cn.fujitsu.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "577f99c1d08cf9cbdafd4e858dd13ff04d855090",
      "tree": "0f726bbda9b18d311d4c95198bbd96cb7ac01db0",
      "parents": [
        "26c0f03f6b77c513cb7bc37b73a06819bdbb791b",
        "2f633928cbba8a5858bb39b11e7219a41b0fbef5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 18 00:37:55 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 18 00:37:55 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\n\tdrivers/net/wireless/rt2x00/rt2x00dev.c\n\tnet/8021q/vlan_dev.c\n"
    },
    {
      "commit": "bc92dd194d05e8334b210552fbc0ac5711d72ea9",
      "tree": "58fb30bceeec669f3e8723c131ded67f7f9a2c10",
      "parents": [
        "0382b9c35469be273ed10fa374496a924055a3c8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Mar 17 22:47:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 17 22:47:32 2008 -0700"
      },
      "message": "[SCTP]: fix misannotated __sctp_rcv_asconf_lookup()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\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": "df21857714398acb8b24a8bb5a6d2286dd9c59ef",
      "tree": "c0c2d5fbfb4a9b4b1a122a5957dd2c7e6cfe27e0",
      "parents": [
        "d6de3097592b7ae7f8e233a4dafb088e2aa8170f"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Dec 20 14:10:38 2007 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 28 14:59:22 2008 -0800"
      },
      "message": "[SCTP]: Update association lookup to look at ASCONF chunks as well\n\nADD-IP draft section 5.2 specifies that if an association can not\nbe found using the source and destination of the IP packet,\nthen, if the packet contains ASCONF chunks, the Address Parameter\nTLV should be used to lookup an association.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "d970dbf8455eb1b8cebd3cde6e18f73dd1b3ce38",
      "tree": "e7866d392c3654a379492ca78249231be47401a4",
      "parents": [
        "123ed979eaa8de0dd2422862d247469eda0bd645"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Nov 09 11:43:40 2007 -0500"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Nov 09 11:43:40 2007 -0500"
      },
      "message": "SCTP: Convert custom hash lists to use hlist.\n\nConvert the custom hash list traversals to use hlist functions.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "bbd0d59809f923ea2b540cbd781b32110e249f6e",
      "tree": "8a278cfa0e7bcc7b415e93baf6d1a93536efe17a",
      "parents": [
        "4cd57c8078fae0a4b1bf421191e94626d0cba92a"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Oct 03 17:51:34 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Oct 10 16:51:31 2007 -0700"
      },
      "message": "[SCTP]: Implement the receive and verification of AUTH chunk\n\nThis patch implements the receive path needed to process authenticated\nchunks.  Add ability to process the AUTH chunk and handle edge cases\nfor authenticated COOKIE-ECHO as well.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3c77f961b55b6060858c68a213d7f4470d7f3eb2",
      "tree": "551b912a8d26049a22685401bef93cb553bb8671",
      "parents": [
        "ece25dfa0991f65c4e1d26beb1c3c45bda4239b8"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Sep 17 15:14:28 2007 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Tue Sep 25 22:55:48 2007 -0700"
      },
      "message": "SCTP: Discard OOTB packetes with bundled INIT early.\n\nRFC 4460 and future RFC 4960 (2960-bis) specify that packets\nwith bundled INIT chunks need to be dropped.  We currenlty do\nthat only after processing any leading chunks.  For OOTB chunks,\nsince we already walk the entire packet, we should discard packets\nwith bundled INITs.\n\nThere are other chunks chunks that MUST NOT be bundled, but the spec\nis silent on theire treatment.  Thus, we\u0027ll leave their teatment\nalone for the moment.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nAcked-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\n"
    },
    {
      "commit": "046752104c7090e3679b09274f02d8fd2aa0b4b2",
      "tree": "01290170fb902ff8d21260ac643fe66f5bb981a3",
      "parents": [
        "fc34f6c617bf2a845d793af12b96bcc0afd472c4"
      ],
      "author": {
        "name": "sebastian@breakpoint.cc",
        "email": "sebastian@breakpoint.cc",
        "time": "Thu Jul 26 23:21:31 2007 +0200"
      },
      "committer": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Wed Aug 01 11:19:05 2007 -0400"
      },
      "message": "sctp: make locally used function static\n\nForward declarion is static, the function itself is not. Make it\nconsistent.\n\nSigned-off-by: Sebastian Siewior \u003csebastian@breakpoint.cc\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "8a4794914f9cf2681235ec2311e189fe307c28c7",
      "tree": "029530de3f65445050e7f4c3ad4cd0195b127fa4",
      "parents": [
        "c910b47e1811b3f8b184108c48de3d7af3e2999b"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jun 07 14:21:05 2007 -0400"
      },
      "committer": {
        "name": "Vladislav Yasevich",
        "email": "vxy@hera.kernel.org",
        "time": "Wed Jun 13 20:44:42 2007 +0000"
      },
      "message": "[SCTP] Flag a pmtu change request\n\nCurrently, if the socket is owned by the user, we drop the ICMP\nmessage.  As a result SCTP forgets that path MTU changed and\nnever adjusting it\u0027s estimate.  This causes all subsequent\npackets to be fragmented.  With this patch, we\u0027ll flag the association\nthat it needs to udpate it\u0027s estimate based on the already updated\nrouting information.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nAcked-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "c910b47e1811b3f8b184108c48de3d7af3e2999b",
      "tree": "76ca90239b074a13137217d3732f79fe83a2500b",
      "parents": [
        "fe979ac169970b3d12facd6565766735862395c5"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Thu Jun 07 13:47:03 2007 -0400"
      },
      "committer": {
        "name": "Vladislav Yasevich",
        "email": "vxy@hera.kernel.org",
        "time": "Wed Jun 13 20:44:42 2007 +0000"
      },
      "message": "[SCTP] Update pmtu handling to be similar to tcp\n\nIntroduce new function sctp_transport_update_pmtu that updates\nthe transports and destination caches view of the path mtu.\n\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nAcked-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "604763722c655c7e3f31ecf6f7b4dafcd26a7a15",
      "tree": "a5c07f0e22ac86e7ca7a8c80bd3f111116610edd",
      "parents": [
        "628592ccdbbb5bb751217cf02e2e7abb500d7ffe"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Apr 09 11:59:39 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:28:43 2007 -0700"
      },
      "message": "[NET]: Treat CHECKSUM_PARTIAL as CHECKSUM_UNNECESSARY\n\nWhen a transmitted packet is looped back directly, CHECKSUM_PARTIAL\nmaps to the semantics of CHECKSUM_UNNECESSARY.  Therefore we should\ntreat it as such in the stack.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "27a884dc3cb63b93c2b3b643f5b31eed5f8a4d26",
      "tree": "5a267e40f9b94014be38dad5de0a52b6628834e0",
      "parents": [
        "be8bd86321fa7f06359d866ef61fb4d2f3e9dce9"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 19 20:29:13 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:28 2007 -0700"
      },
      "message": "[SK_BUFF]: Convert skb-\u003etail to sk_buff_data_t\n\nSo that it is also an offset from skb-\u003ehead, reduces its size from 8 to 4 bytes\non 64bit architectures, allowing us to combine the 4 bytes hole left by the\nlayer headers conversion, reducing struct sk_buff size to 256 bytes, i.e. 4\n64byte cachelines, and since the sk_buff slab cache is SLAB_HWCACHE_ALIGN...\n:-)\n\nMany calculations that previously required that skb-\u003e{transport,network,\nmac}_header be first converted to a pointer now can be done directly, being\nmeaningful as offsets or pointers.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2e07fa9cd3bac1e28cfe3131ed86b053afb02fc9",
      "tree": "177ad0c2cbbd60c25e54b35802219634c047aa08",
      "parents": [
        "b0e380b1d8a8e0aca215df97702f99815f05c094"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 10 21:22:35 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:21 2007 -0700"
      },
      "message": "[SK_BUFF]: Use offsets for skb-\u003e{mac,network,transport}_header on 64bit architectures\n\nWith this we save 8 bytes per network packet, leaving a 4 bytes hole to be used\nin further shrinking work, likely with the offsetization of other pointers,\nsuch as -\u003e{data,tail,end}, at the cost of adds, that were minimized by the\nusual practice of setting skb-\u003e{mac,nh,n}.raw to a local variable that is then\naccessed multiple times in each function, it also is not more expensive than\nbefore with regards to most of the handling of such headers, like setting one\nof these headers to another (transport to network, etc), or subtracting, adding\nto/from it, comparing them, etc.\n\nNow we have this layout for sk_buff on a x86_64 machine:\n\n[acme@mica net-2.6.22]$ pahole vmlinux sk_buff\nstruct sk_buff {\n\tstruct sk_buff *       next;             /*   0   8 */\n\tstruct sk_buff *       prev;             /*   8   8 */\n\tstruct rb_node         rb;               /*  16  24 */\n\tstruct sock *          sk;               /*  40   8 */\n\tktime_t                tstamp;           /*  48   8 */\n\tstruct net_device *    dev;              /*  56   8 */\n\t/* --- cacheline 1 boundary (64 bytes) --- */\n\tstruct net_device *    input_dev;        /*  64   8 */\n\tsk_buff_data_t         transport_header; /*  72   4 */\n\tsk_buff_data_t         network_header;   /*  76   4 */\n\tsk_buff_data_t         mac_header;       /*  80   4 */\n\n\t/* XXX 4 bytes hole, try to pack */\n\n\tstruct dst_entry *     dst;              /*  88   8 */\n\tstruct sec_path *      sp;               /*  96   8 */\n\tchar                   cb[48];           /* 104  48 */\n\t/* cacheline 2 boundary (128 bytes) was 24 bytes ago*/\n\tunsigned int           len;              /* 152   4 */\n\tunsigned int           data_len;         /* 156   4 */\n\tunsigned int           mac_len;          /* 160   4 */\n\tunion {\n\t\t__wsum         csum;             /*       4 */\n\t\t__u32          csum_offset;      /*       4 */\n\t};                                       /* 164   4 */\n\t__u32                  priority;         /* 168   4 */\n\t__u8                   local_df:1;       /* 172   1 */\n\t__u8                   cloned:1;         /* 172   1 */\n\t__u8                   ip_summed:2;      /* 172   1 */\n\t__u8                   nohdr:1;          /* 172   1 */\n\t__u8                   nfctinfo:3;       /* 172   1 */\n\t__u8                   pkt_type:3;       /* 173   1 */\n\t__u8                   fclone:2;         /* 173   1 */\n\t__u8                   ipvs_property:1;  /* 173   1 */\n\n\t/* XXX 2 bits hole, try to pack */\n\n\t__be16                 protocol;         /* 174   2 */\n\tvoid    (*destructor)(struct sk_buff *); /* 176   8 */\n\tstruct nf_conntrack *  nfct;             /* 184   8 */\n\t/* --- cacheline 3 boundary (192 bytes) --- */\n\tstruct sk_buff *       nfct_reasm;       /* 192   8 */\n\tstruct nf_bridge_info *nf_bridge;        /* 200   8 */\n\t__u16                  tc_index;         /* 208   2 */\n\t__u16                  tc_verd;          /* 210   2 */\n\tdma_cookie_t           dma_cookie;       /* 212   4 */\n\t__u32                  secmark;          /* 216   4 */\n\t__u32                  mark;             /* 220   4 */\n\tunsigned int           truesize;         /* 224   4 */\n\tatomic_t               users;            /* 228   4 */\n\tunsigned char *        head;             /* 232   8 */\n\tunsigned char *        data;             /* 240   8 */\n\tunsigned char *        tail;             /* 248   8 */\n\t/* --- cacheline 4 boundary (256 bytes) --- */\n\tunsigned char *        end;              /* 256   8 */\n}; /* size: 264, cachelines: 5 */\n   /* sum members: 260, holes: 1, sum holes: 4 */\n   /* bit holes: 1, sum bit holes: 2 bits */\n   /* last cacheline: 8 bytes */\n\nOn 32 bits nothing changes, and pointers continue to be used with the compiler\nturning all this abstraction layer into dust. But there are some sk_buff\nvalidation tricks that are now possible, humm... :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0e380b1d8a8e0aca215df97702f99815f05c094",
      "tree": "95f402ca155f5211150178811669ebf0a88e8e00",
      "parents": [
        "cfe1fc7759fdacb0c650b575daed1692bf3eaece"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Apr 10 21:21:55 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:26:20 2007 -0700"
      },
      "message": "[SK_BUFF]: unions of just one member don\u0027t get anything done, kill them\n\nRenaming skb-\u003eh to skb-\u003etransport_header, skb-\u003enh to skb-\u003enetwork_header and\nskb-\u003emac to skb-\u003emac_header, to match the names of the associated helpers\n(skb[_[re]set]_{transport,network,mac}_header).\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a27ef749e7be3b06fb58df53d94eb97a21f18707",
      "tree": "8d9b4521b51393057988780a1297f7743005b5d2",
      "parents": [
        "bd82393ca23324d103b21aae43160728da6e6c9c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 17:17:10 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:30 2007 -0700"
      },
      "message": "[SCTP]: Eliminate some pointer attributions to the skb layer headers\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "88c7664f13bd1a36acb8566b93892a4c58759ac6",
      "tree": "18ead610bf54ef87f3832c61d64a4bad30d4f78e",
      "parents": [
        "4bedb45203eab92a87b4c863fe2d0cded633427f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 14:43:18 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:23 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce icmp_hdr(), remove skb-\u003eh.icmph\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c0fd387b00a6758550b5ca1aae4408374483fe7",
      "tree": "e6bd255fb77d476424345c7864f6ee14cb0d1ddc",
      "parents": [
        "967b05f64e27d04a4c8879addd0e1c52137e2c9e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Mar 13 13:59:32 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:19 2007 -0700"
      },
      "message": "[SCTP]: Introduce sctp_hdr()\n\nFor consistency with all the other skb-\u003eh.raw accessors.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ea2ae17d6443abddc79480dc9f7af8feacabddc4",
      "tree": "2d6f48a5e4a40f761b5b510af9aac1fca55004cb",
      "parents": [
        "badff6d01a8589a1c828b0bf118903ca38627f4e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 25 17:55:53 2007 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:25:16 2007 -0700"
      },
      "message": "[SK_BUFF]: Introduce skb_transport_offset()\n\nFor the quite common \u0027skb-\u003eh.raw - skb-\u003edata\u0027 sequence.\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": "31c7711b509d470ab1e175e7bb98ea66a82aa916",
      "tree": "0d6465c947d163bf7bf0803624533e6af964ef50",
      "parents": [
        "4209fb601c0a0e0a9d90c0008f350dd345c8b7de"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Mar 10 19:04:55 2007 -0300"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Wed Apr 25 22:24:50 2007 -0700"
      },
      "message": "[SK_BUFF]: Some more simple skb_reset_network_header conversions\n\nThis time of the type:\n\n skb-\u003enh.iph \u003d (struct iphdr *)skb-\u003edata;\n\nThat is completely equivalent to:\n\n skb-\u003enh.raw \u003d skb-\u003edata;\n\nWonder why people love casts... :-)\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\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": "6c7be55ca0c204473d07a030a03c49a7471b4508",
      "tree": "d1dd7c14a0b723523834ecc09199fbfe9e50139f",
      "parents": [
        "cd4ff034e3572679f7ff8f126469b3addd1a4fbc"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:11:50 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:50 2006 -0800"
      },
      "message": "[SCTP]: sctp_has_association() switched to net-endian.\n\nDitto for its only caller (sctp_endpoint_is_peeled_off)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd86d136f9feb72c52a5b07707affe80edbc8dda",
      "tree": "3ca8c38af8d87d76d2ad3fa239a7d9984f327bec",
      "parents": [
        "5ab7b859ab58e3479a5a66e383ecd6bc447f6c1d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:11:13 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:48 2006 -0800"
      },
      "message": "[SCTP]: Switch -\u003efrom_addr_param() to net-endian.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d55c41b115e74b30a3d1a61db806bd03bdd9dd6f",
      "tree": "24591dcdbcd8b3c84599b64e6c01bd5a16974473",
      "parents": [
        "9b1dfad011d409bc56476a81810342751645ee54"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:09:40 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:44 2006 -0800"
      },
      "message": "[SCTP]: Switch -\u003efrom_skb() to net-endian.\n\nAll instances switched, callers updated.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f235fca389f23cd6c9e0f466611bb2d6a05ae758",
      "tree": "7a08efd99e531d4b0d2db4e2ef188a116e0fbb44",
      "parents": [
        "e2fccedb0136205d02e97a41851503e2b96d2a17"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:09:01 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:42 2006 -0800"
      },
      "message": "[SCTP]: sctp_init_addrs() switched to net-endian.\n\nCaller adjusted.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e2fccedb0136205d02e97a41851503e2b96d2a17",
      "tree": "053ce92764dfac3e71d3a21786eff2b79a74cb72",
      "parents": [
        "1c7d1fc14974f44809b22521bd9796411d8ba440"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:08:41 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:41 2006 -0800"
      },
      "message": "[SCTP]: Switch sctp_assoc_is_match to net-endian.\n\nAlong with it, statics in input.c that end up calling it\n(__sctp_lookup_association, sctp_lookup_association,\n__sctp_rcv_init_lookup, __sctp_rcv_lookup).  Callers\nare adjusted.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1c7d1fc14974f44809b22521bd9796411d8ba440",
      "tree": "11e7c6f95ca995ccb7941adc5912ee82eb52b130",
      "parents": [
        "c9a08505ec0a0260fc94a823c014cc3970f72d25"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Nov 20 17:08:09 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Dec 02 21:26:40 2006 -0800"
      },
      "message": "[SCTP]: Switch sctp_endpoint_is_match() to net-endian.\n\nThe only caller (__sctp_rcv_lookup_endpoint()) also switched,\nits caller adjusted\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "de76e695a5ce19c121ba7e246b45f258be678a75",
      "tree": "6a1a715574371cf4b8b84ef1a4e84d3b14c6fd77",
      "parents": [
        "4f4443088b763ca4ac7521e9b4a881b52c294dec"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Mon Oct 30 18:55:11 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Oct 30 18:55:11 2006 -0800"
      },
      "message": "[SCTP]: Remove temporary associations from backlog and hash.\n\nEvery time SCTP creates a temporary association, the stack hashes it,\nputs it on a list of endpoint associations and increments the backlog.\nHowever, the lifetime of a temporary association is the processing time\nof a current packet and it\u0027s destroyed after that. In fact, we don\u0027t\nreally want anyone else finding this association. There is no reason to\ndo this extra work.\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": "28cd7752734563d5b0967b96a6bade7a1dc89c7f",
      "tree": "94f2f0bb7b4af2e4954c3694118db54f10c20e63",
      "parents": [
        "c20e3945c761502b9d5d73ef0ff5f1a84b3a717e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Oct 29 23:46:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Oct 30 15:24:39 2006 -0800"
      },
      "message": "[SCTP]: Always linearise packet on input\n\nI was looking at a RHEL5 bug report involving Xen and SCTP\n(https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id\u003d212550).\nIt turns out that SCTP wasn\u0027t written to handle skb fragments at\nall.  The absence of any calls to skb_may_pull is testament to\nthat.\n\nIt just so happens that Xen creates fragmented packets more often\nthan other scenarios (header \u0026 data split when going from domU to\ndom0).  That\u0027s what caused this bug to show up.\n\nUntil someone has the time sits down and audits the entire net/sctp\ndirectory, here is a conservative and safe solution that simply\nlinearises all packets on input.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f236218b7292bccb0f8754a0feb5d9e9a06fe5a2",
      "tree": "3d787eac398a370504d3dd051437dd33099b9d89",
      "parents": [
        "b56bab46f3220eb6b1f71c000faa44c6b13fb148"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 29 17:10:03 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 29 17:10:03 2006 -0700"
      },
      "message": "[SCTP]: Do not timestamp every SCTP packet.\n\nWe only need the timestamp on COOKIE-ECHO chunks, so instead of always\ntimestamping every SCTP packet, let common code timestamp if the socket\noption is set.  For COOKIE-ECHO, simply get the time of day if we don\u0027t\nhave a timestamp.  This introduces a small possibility that the cookie\nmay be considered expired, but it will be renegotiated.\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": "b56bab46f3220eb6b1f71c000faa44c6b13fb148",
      "tree": "ffd2fe5959e0174838bcb735669ea26398ad3ca8",
      "parents": [
        "cd49788563d3b9e2ec0b316fa57aef1c0cb3bd4b"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri Sep 29 17:09:34 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Sep 29 17:09:34 2006 -0700"
      },
      "message": "[SCTP]: Use correct mask when disabling PMTUD.\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": "fda9ef5d679b07c9d9097aaf6ef7f069d794a8f9",
      "tree": "6a265dc2038bc5568c5a499e6c8d4733650ed3f7",
      "parents": [
        "dc435e6dac1439340eaeceef84022c4e4749796d"
      ],
      "author": {
        "name": "Dmitry Mishin",
        "email": "dim@openvz.org",
        "time": "Thu Aug 31 15:28:39 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 15:18:47 2006 -0700"
      },
      "message": "[NET]: Fix sk-\u003esk_filter field access\n\nFunction sk_filter() is called from tcp_v{4,6}_rcv() functions with arg\nneedlock \u003d 0, while socket is not locked at that moment. In order to avoid\nthis and similar issues in the future, use rcu for sk-\u003esk_filter field read\nprotection.\n\nSigned-off-by: Dmitry Mishin \u003cdim@openvz.org\u003e\nSigned-off-by: Alexey Kuznetsov \u003ckuznet@ms2.inr.ac.ru\u003e\nSigned-off-by: Kirill Korotaev \u003cdev@openvz.org\u003e\n"
    },
    {
      "commit": "ac0b04627269ff16c3c7ab854a65fe6780c6e3e5",
      "tree": "421ea678ea12d1e193b3bbf27fb1410355ba9b47",
      "parents": [
        "72d3b2c970a2d5d2ccb1d1cab4fb76663c4f2e49"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Aug 22 00:15:33 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Sep 22 14:55:16 2006 -0700"
      },
      "message": "[SCTP]: Extend /proc/net/sctp/snmp to provide more statistics.\n\nThis patch adds more statistics info under /proc/net/sctp/snmp\nthat should be useful for debugging. The additional events that\nare counted now include timer expirations, retransmits, packet\nand data chunk discards.\n\nThe Data chunk discards include all the cases where a data chunk\nis discarded including high tsn, bad stream, dup tsn and the most\nuseful one(out of receive buffer/rwnd).\n\nAlso moved the SCTP MIB data structures from the generic include\ndirectories to include/sctp/sctp.h.\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": "5636bef7324f49e36f05ec8a5f6284e11b1bcca4",
      "tree": "b5e9e42560ba86ffbbd63a582df87844996b6d03",
      "parents": [
        "402d68c43326d2f0e7e2e9a9013cd4c098d9b87c"
      ],
      "author": {
        "name": "Vlad Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Sat Jun 17 22:55:35 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Jun 17 22:55:35 2006 -0700"
      },
      "message": "[SCTP]: Reject sctp packets with broadcast addresses.\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": "61c9fed41638249f8b6ca5345064eb1beb50179f",
      "tree": "8855a0e6cbee58a9d94e30396b7d0a1baa526900",
      "parents": [
        "8de8c8738086501bbe3057ed6f4b70dded657488"
      ],
      "author": {
        "name": "Vladislav Yasevich",
        "email": "vladislav.yasevich@hp.com",
        "time": "Fri May 19 11:01:18 2006 -0700"
      },
      "committer": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Fri May 19 11:01:18 2006 -0700"
      },
      "message": "[SCTP]: A better solution to fix the race between sctp_peeloff() and\nsctp_rcv().\n\nThe goal is to hold the ref on the association/endpoint throughout the\nstate-machine process.  We accomplish like this:\n\n  /* ref on the assoc/ep is taken during lookup */\n\n  if owned_by_user(sk)\n \tsctp_add_backlog(skb, sk);\n  else\n \tinqueue_push(skb, sk);\n\n  /* drop the ref on the assoc/ep */\n\nHowever, in sctp_add_backlog() we take the ref on assoc/ep and hold it\nwhile the skb is on the backlog queue.  This allows us to get rid of the\nsock_hold/sock_put in the lookup routines.\n\nNow sctp_backlog_rcv() needs to account for potential association move.\nIn the unlikely event that association moved, we need to retest if the\nnew socket is locked by user.  If we don\u0027t this, we may have two packets\nracing up the stack toward the same socket and we can\u0027t deal with it.\nIf the new socket is still locked, we\u0027ll just add the skb to its backlog\ncontinuing to hold the ref on the association.  This get\u0027s rid of the\nneed to move packets from one backlog to another and it also safe in\ncase new packets arrive on the same backlog queue.\n\nThe last step, is to lock the new socket when we are moving the\nassociation to it.  This is needed in case any new packets arrive on\nthe association when it moved.  We want these to go to the backlog since\nwe would like to avoid the race between this new packet and a packet\nthat may be sitting on the backlog queue of the old socket toward the\nsame association.\n\nSigned-off-by: Vladislav Yasevich \u003cvladislav.yasevich@hp.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "8de8c8738086501bbe3057ed6f4b70dded657488",
      "tree": "c8c5b4b5c3d3c35993368d0e462484cc62b006f4",
      "parents": [
        "ee433530d96a7b0af24ab616e5b51f1d89f9ae38"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Fri May 19 10:58:12 2006 -0700"
      },
      "committer": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Fri May 19 10:58:12 2006 -0700"
      },
      "message": "[SCTP]: Set sk_err so that poll wakes up after a non-blocking connect failure.\n\nAlso fix some other cases where sk_err is not set for 1-1 style sockets.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "2babf9daae4a3561f3264638a22ac7d0b14a6f52",
      "tree": "1fd884975fe0d8e9cf7e840a9eabf1be7429c130",
      "parents": [
        "9f514950bb907e98f280492a091aa1889b97304e"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Mar 25 01:25:29 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 25 01:25:29 2006 -0800"
      },
      "message": "[SCTP]: Fix up sctp_rcv return value\n\nI was working on the ipip/xfrm problem and as usual I get side-tracked by\nother problems.\n\nAs part of an attempt to change the IPv4 protocol handler calling\nconvention I found that SCTP violated the existing convention.\n\nIt\u0027s returning non-zero values after freeing the skb.  This is doubly bad\nas 1) the skb gets resubmitted; 2) the return value is interpreted as a\nprotocol number.\n\nThis patch changes those return values to zero.\n\nIPv6 doesn\u0027t suffer from this problem because it uses a positive return\nvalue as an indication for resubmission.  So the only effect of this patch\nthere is to increment the IPSTATS_MIB_INDELIVERS counter which IMHO is\nthe right thing to do.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a7d1f1b66c05ef4ebb58a34be7caad9af15546a4",
      "tree": "10395b7c00460c63576b06e7e252b9de60a2504a",
      "parents": [
        "c4d2444e992c4eda1d7fc3287e93ba58295bf6b9"
      ],
      "author": {
        "name": "Tsutomu Fujii",
        "email": "t-fujii@nb.jp.nec.com",
        "time": "Tue Jan 17 11:57:09 2006 -0800"
      },
      "committer": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jan 17 11:57:09 2006 -0800"
      },
      "message": "[SCTP]: Fix sctp_rcv_ootb() to handle the last chunk of a packet correctly.\n\nSigned-off-by: Tsutomu Fujii \u003ct-fujii@nb.jp.nec.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "c4d2444e992c4eda1d7fc3287e93ba58295bf6b9",
      "tree": "04f2096c141ede308356bd2d8277d4c291fae24d",
      "parents": [
        "313e7b4d2588539e388d31c1febd50503a0083fc"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jan 17 11:56:26 2006 -0800"
      },
      "committer": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jan 17 11:56:26 2006 -0800"
      },
      "message": "[SCTP]: Fix couple of races between sctp_peeloff() and sctp_rcv().\n\nValidate and update the sk in sctp_rcv() to avoid the race where an\nassoc/ep could move to a different socket after we get the sk, but before\nthe skb is added to the backlog.\n\nAlso migrate the skb\u0027s in backlog queue to new sk when doing a peeloff.\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\n"
    },
    {
      "commit": "7a48f923b8b27bfaa5f7b2a449a6fe268724ddd5",
      "tree": "005774759b9f0bba685adc9d9bccbe208a787c2f",
      "parents": [
        "2664b25051f7ab96b22b199aa2f5ef6a949a4296"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jan 17 11:51:28 2006 -0800"
      },
      "committer": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Tue Jan 17 11:51:28 2006 -0800"
      },
      "message": "[SCTP]: Fix potential race condition between sctp_close() and sctp_rcv().\n\nDo not release the reference to association/endpoint if an incoming skb is\nadded to backlog. Instead release it after the chunk is processed in\nsctp_backlog_rcv().\n\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\n"
    },
    {
      "commit": "b59c270104f03960069596722fea70340579244d",
      "tree": "5d038835626047899097b622695ead5c1eb1c499",
      "parents": [
        "5c901daaea3be0d900b3ae1fc9b5f64ff94e4f02"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Fri Jan 06 23:06:10 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jan 07 12:57:36 2006 -0800"
      },
      "message": "[NETFILTER]: Keep conntrack reference until IPsec policy checks are done\n\nKeep the conntrack reference until policy checks have been performed for\nIPsec NAT support. The reference needs to be dropped before a packet is\nqueued to avoid having the conntrack module unloadable.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\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": "049b3ff5a86d0187184a189d2e31b8654d58fe22",
      "tree": "aed83ae799e444c57d76597bad6e3b41957a828e",
      "parents": [
        "19c7e9eef503dc1ae926f3d26c56f88bee568d7b"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@tuxdriver.com",
        "time": "Fri Nov 11 16:08:24 2005 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Nov 11 16:08:24 2005 -0800"
      },
      "message": "[SCTP]: Include ulpevents in socket receive buffer accounting.\n\nAlso introduces a sysctl option to configure the receive buffer\naccounting policy to be either at socket or association level.\nDefault is all the associations on the same socket share the\nreceive buffer.\n\nSigned-off-by: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a61bbcf28a8cb0ba56f8193d512f7222e711a294",
      "tree": "33ae1976ab3b08aac516debb2742d2c6696d5436",
      "parents": [
        "25ed891019b84498c83903ecf53df7ce35e9cff6"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Sun Aug 14 17:24:31 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:58:24 2005 -0700"
      },
      "message": "[NET]: Store skb-\u003etimestamp as offset to a base timestamp\n\nReduces skb size by 8 bytes on 64-bit.\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d1ad1ff299dd908d07c5e5f27f88bbdb235eb7a5",
      "tree": "03f66679f4a153ec06fde913907f392503f4b5e5",
      "parents": [
        "ee71a29eb5e341fe977c5ad7a43782c29bd9cb9e"
      ],
      "author": {
        "name": "Sridhar Samudrala",
        "email": "sri@us.ibm.com",
        "time": "Mon Jul 18 13:44:10 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 18 13:44:10 2005 -0700"
      },
      "message": "[SCTP]: Fix potential null pointer dereference while handling an icmp error\n\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": "3f7a87d2fa9b42f7aade43914f060df68cc89cc7",
      "tree": "15162d2dd770428f98a0d39f8dc6063aba0ad1e6",
      "parents": [
        "8b22c249e7de453961e4d253b19fc2a0bdd65d53"
      ],
      "author": {
        "name": "Frank Filz",
        "email": "ffilzlnx@us.ibm.com",
        "time": "Mon Jun 20 13:14:57 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 20 13:14:57 2005 -0700"
      },
      "message": "[SCTP] sctp_connectx() API support\n\nImplements sctp_connectx() as defined in the SCTP sockets API draft by\ntunneling the request through a setsockopt().\n\nSigned-off-by: Frank Filz \u003cffilzlnx@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": "0fd9a65a76e883b7d16e72dde3f8bf20ebc1e82a",
      "tree": "431da2afc6344a078d16cd5b6b1e65fde9df29d1",
      "parents": [
        "4243cac1e76228f7ba916d5df9e75a219352160a"
      ],
      "author": {
        "name": "Neil Horman",
        "email": "nhorman@redhat.com",
        "time": "Mon Jun 13 15:11:24 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 13 15:11:24 2005 -0700"
      },
      "message": "[SCTP] Support SO_BINDTODEVICE socket option on incoming packets.\n\nSigned-off-by: Neil Horman \u003cnhorman@redhat.com\u003e\nSigned-off-by: Sridhar Samudrala \u003csri@us.ibm.com\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"
    }
  ]
}
