From owner-freebsd-net@freebsd.org Fri Apr 29 07:34:42 2016 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F0E7B20E4F for ; Fri, 29 Apr 2016 07:34:42 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: from reviews.nyi.freebsd.org (reviews.nyi.freebsd.org [IPv6:2610:1c1:1:607c::16:b]) by mx1.freebsd.org (Postfix) with ESMTP id 4E5CA1FAD for ; Fri, 29 Apr 2016 07:34:42 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: by reviews.nyi.freebsd.org (Postfix, from userid 1346) id 703B2CB5B; Fri, 29 Apr 2016 07:34:41 +0000 (UTC) Date: Fri, 29 Apr 2016 07:34:41 +0000 To: freebsd-net@freebsd.org From: "sepherosa_gmail.com (Sepherosa Ziehau)" Reply-to: D6148+325+ea9e78ec8d498ebd@reviews.freebsd.org Subject: [Differential] D6148: tcp/syncache: Add comment for syncache_respond Message-ID: X-Priority: 3 X-Phabricator-Sent-This-Message: Yes X-Mail-Transport-Agent: MetaMTA X-Auto-Response-Suppress: All X-Phabricator-Mail-Tags: , , , Thread-Topic: D6148: tcp/syncache: Add comment for syncache_respond X-Herald-Rules: <64> X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-To: X-Phabricator-Cc: Precedence: bulk Thread-Index: Y2FkNGI5OTYzNDYzYzgyNmZmMTk0MGY3OGYw MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_f358da633abeff90a6b0b3f25af87427" X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.21 List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 29 Apr 2016 07:34:42 -0000 --b1_f358da633abeff90a6b0b3f25af87427 Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: 8bit sepherosa_gmail.com created this revision. sepherosa_gmail.com added reviewers: network, adrian, rwatson, gnn, lstewart, glebius, delphij, mike-karels.net, jtl, hiren, sbruno, hselasky. sepherosa_gmail.com added a subscriber: freebsd-net-list. Herald added a reviewer: transport. REVISION SUMMARY Suggested by: hiren, hps REVISION DETAIL https://reviews.freebsd.org/D6148 AFFECTED FILES sys/netinet/tcp_syncache.c CHANGE DETAILS diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -1505,6 +1505,10 @@ return (rv); } +/* + * Send SYN|ACK to the peer. Either in response to the peer's SYN, + * i.e. m0 != NULL, or upon 3WHS ACK timeout, i.e. m0 == NULL. + */ static int syncache_respond(struct syncache *sc, struct syncache_head *sch, int locked, const struct mbuf *m0) @@ -1688,6 +1692,11 @@ M_SETFIB(m, sc->sc_inc.inc_fibnum); m->m_pkthdr.csum_data = offsetof(struct tcphdr, th_sum); + /* + * If we have peer's SYN and it has a flowid, then let's assign it to + * our SYN|ACK. ip6_output() and ip_output() will not assign flowid + * to SYN|ACK due to lack of inp here. + */ if (m0 != NULL && M_HASHTYPE_GET(m0) != M_HASHTYPE_NONE) { m->m_pkthdr.flowid = m0->m_pkthdr.flowid; M_HASHTYPE_SET(m, M_HASHTYPE_GET(m0)); EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: sepherosa_gmail.com, network, transport, adrian, rwatson, gnn, lstewart, glebius, delphij, mike-karels.net, jtl, hiren, sbruno, hselasky Cc: freebsd-net-list --b1_f358da633abeff90a6b0b3f25af87427 Content-Type: text/x-patch; charset=utf-8; name="D6148.15728.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D6148.15728.patch" ZGlmZiAtLWdpdCBhL3N5cy9uZXRpbmV0L3RjcF9zeW5jYWNoZS5jIGIvc3lzL25ldGluZXQvdGNw X3N5bmNhY2hlLmMKLS0tIGEvc3lzL25ldGluZXQvdGNwX3N5bmNhY2hlLmMKKysrIGIvc3lzL25l dGluZXQvdGNwX3N5bmNhY2hlLmMKQEAgLTE1MDUsNiArMTUwNSwxMCBAQAogCXJldHVybiAocnYp OwogfQogCisvKgorICogU2VuZCBTWU58QUNLIHRvIHRoZSBwZWVyLiAgRWl0aGVyIGluIHJlc3Bv bnNlIHRvIHRoZSBwZWVyJ3MgU1lOLAorICogaS5lLiBtMCAhPSBOVUxMLCBvciB1cG9uIDNXSFMg QUNLIHRpbWVvdXQsIGkuZS4gbTAgPT0gTlVMTC4KKyAqLwogc3RhdGljIGludAogc3luY2FjaGVf cmVzcG9uZChzdHJ1Y3Qgc3luY2FjaGUgKnNjLCBzdHJ1Y3Qgc3luY2FjaGVfaGVhZCAqc2NoLCBp bnQgbG9ja2VkLAogICAgIGNvbnN0IHN0cnVjdCBtYnVmICptMCkKQEAgLTE2ODgsNiArMTY5Miwx MSBAQAogCiAJTV9TRVRGSUIobSwgc2MtPnNjX2luYy5pbmNfZmlibnVtKTsKIAltLT5tX3BrdGhk ci5jc3VtX2RhdGEgPSBvZmZzZXRvZihzdHJ1Y3QgdGNwaGRyLCB0aF9zdW0pOworCS8qCisJICog SWYgd2UgaGF2ZSBwZWVyJ3MgU1lOIGFuZCBpdCBoYXMgYSBmbG93aWQsIHRoZW4gbGV0J3MgYXNz aWduIGl0IHRvCisJICogb3VyIFNZTnxBQ0suICBpcDZfb3V0cHV0KCkgYW5kIGlwX291dHB1dCgp IHdpbGwgbm90IGFzc2lnbiBmbG93aWQKKwkgKiB0byBTWU58QUNLIGR1ZSB0byBsYWNrIG9mIGlu cCBoZXJlLgorCSAqLwogCWlmIChtMCAhPSBOVUxMICYmIE1fSEFTSFRZUEVfR0VUKG0wKSAhPSBN X0hBU0hUWVBFX05PTkUpIHsKIAkJbS0+bV9wa3RoZHIuZmxvd2lkID0gbTAtPm1fcGt0aGRyLmZs b3dpZDsKIAkJTV9IQVNIVFlQRV9TRVQobSwgTV9IQVNIVFlQRV9HRVQobTApKTsKCg== --b1_f358da633abeff90a6b0b3f25af87427--