From owner-freebsd-net@freebsd.org Thu Aug 4 09:26:16 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 1B8ADBADE11 for ; Thu, 4 Aug 2016 09:26:16 +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 D635D17AD for ; Thu, 4 Aug 2016 09:26:15 +0000 (UTC) (envelope-from daemon-user@freebsd.org) Received: by reviews.nyi.freebsd.org (Postfix, from userid 1346) id 4F5C7E467; Thu, 4 Aug 2016 09:26:15 +0000 (UTC) Date: Thu, 4 Aug 2016 09:26:15 +0000 To: freebsd-net@freebsd.org From: "sepherosa_gmail.com (Sepherosa Ziehau)" Reply-to: D7415+325+6ee7a792a2d68e99@reviews.freebsd.org Subject: [Differential] D7415: tcp/lro: If timestamps mismatch or it's a FIN, force flush. 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: D7415: tcp/lro: If timestamps mismatch or it's a FIN, force flush. 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-Cc: Precedence: bulk In-Reply-To: References: Thread-Index: NzYyZWZjYzdkNzk4OWQzYmY5NTlkNDcxZWJhIFejCjc= MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_b3b8064c155f5f5ec9704d8b57ce9e8c" X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.22 List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 04 Aug 2016 09:26:16 -0000 --b1_b3b8064c155f5f5ec9704d8b57ce9e8c Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: base64 c2VwaGVyb3NhX2dtYWlsLmNvbSB1cGRhdGVkIHRoaXMgcmV2aXNpb24gdG8gRGlmZiAxOTAzMi4K c2VwaGVyb3NhX2dtYWlsLmNvbSBhZGRlZCBhIGNvbW1lbnQuCgoKICBEb24ndCBjcmVhdGUgZW50 cnkgZm9yIHNlZ21lbnRzIGNhbnQgYmUgZnVydGhlciBhZ2dyZWdhdGVkL2RlbGF5ZWQuICBOb3Rp Y2VkLWJ5OiBocHMKCkNIQU5HRVMgU0lOQ0UgTEFTVCBVUERBVEUKICBodHRwczovL3Jldmlld3Mu ZnJlZWJzZC5vcmcvRDc0MTU/dnM9MTkwMzEmaWQ9MTkwMzIKClJFVklTSU9OIERFVEFJTAogIGh0 dHBzOi8vcmV2aWV3cy5mcmVlYnNkLm9yZy9ENzQxNQoKQUZGRUNURUQgRklMRVMKICBzeXMvbmV0 aW5ldC90Y3BfbHJvLmMKCkVNQUlMIFBSRUZFUkVOQ0VTCiAgaHR0cHM6Ly9yZXZpZXdzLmZyZWVi c2Qub3JnL3NldHRpbmdzL3BhbmVsL2VtYWlscHJlZmVyZW5jZXMvCgpUbzogc2VwaGVyb3NhX2dt YWlsLmNvbSwgcnJzLCBnYWxsYXRpbiwgaHNlbGFza3ksIG5wLCBnbGViaXVzLCBoaXJlbiwgYnos ICN0cmFuc3BvcnQKQ2M6IGZyZWVic2QtbmV0LWxpc3QK --b1_b3b8064c155f5f5ec9704d8b57ce9e8c Content-Type: text/x-patch; charset=utf-8; name="D7415.19032.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D7415.19032.patch" ZGlmZiAtLWdpdCBhL3N5cy9uZXRpbmV0L3RjcF9scm8uYyBiL3N5cy9uZXRpbmV0L3RjcF9scm8u YwotLS0gYS9zeXMvbmV0aW5ldC90Y3BfbHJvLmMKKysrIGIvc3lzL25ldGluZXQvdGNwX2xyby5j CkBAIC02MDMsNiArNjAzLDcgQEAKIAlpbnQgZXJyb3IsIGlwX2xlbiwgbDsKIAl1aW50MTZfdCBl aF90eXBlLCB0Y3BfZGF0YV9sZW47CiAJc3RydWN0IGxyb19oZWFkICpidWNrZXQ7CisJaW50IGZv cmNlX2ZsdXNoID0gMDsKIAogCS8qIFdlIGV4cGVjdCBhIGNvbnRpZ3VvdXMgaGVhZGVyIFtlaCwg aXAsIHRjcF0uICovCiAKQEAgLTY2OSw4ICs2NzAsMTUgQEAKIAkgKiBDaGVjayBUQ1AgaGVhZGVy IGNvbnN0cmFpbnRzLgogCSAqLwogCS8qIEVuc3VyZSBubyBiaXRzIHNldCBiZXNpZGVzIEFDSyBv ciBQU0guICovCi0JaWYgKCh0aC0+dGhfZmxhZ3MgJiB+KFRIX0FDSyB8IFRIX1BVU0gpKSAhPSAw KQotCQlyZXR1cm4gKFRDUF9MUk9fQ0FOTk9UKTsKKwlpZiAoKHRoLT50aF9mbGFncyAmIH4oVEhf QUNLIHwgVEhfUFVTSCkpICE9IDApIHsKKwkJaWYgKHRoLT50aF9mbGFncyAmIFRIX1NZTikKKwkJ CXJldHVybiAoVENQX0xST19DQU5OT1QpOworCQkvKgorCQkgKiBNYWtlIHN1cmUgdGhhdCBwcmV2 aW91c2x5IHNlZW4gc2VnZW1lbnRzL0FDS3MgYXJlIGRlbGl2ZXJlZAorCQkgKiBiZWZvcmUgdGhp cyBzZWdlbWVudCwgZS5nLiBGSU4uCisJCSAqLworCQlmb3JjZV9mbHVzaCA9IDE7CisJfQogCiAJ LyogWFhYLUJaIFdlIGxvc2UgYSBBQ0t8UFVTSCBmbGFnIGNvbmNhdGVuYXRpbmcgbXVsdGlwbGUg c2VnbWVudHMuICovCiAJLyogWFhYLUJaIElkZWFsbHkgd2UnZCBmbHVzaCBvbiBQVVNIPyAqLwpA QCAtNjg2LDggKzY5NCwxMyBAQAogCXRzX3B0ciA9ICh1aW50MzJfdCAqKSh0aCArIDEpOwogCWlm IChsICE9IDAgJiYgKF9fcHJlZGljdF9mYWxzZShsICE9IFRDUE9MRU5fVFNUQU1QX0FQUEEpIHx8 CiAJICAgICgqdHNfcHRyICE9IG50b2hsKFRDUE9QVF9OT1A8PDI0fFRDUE9QVF9OT1A8PDE2fAot CSAgICBUQ1BPUFRfVElNRVNUQU1QPDw4fFRDUE9MRU5fVElNRVNUQU1QKSkpKQotCQlyZXR1cm4g KFRDUF9MUk9fQ0FOTk9UKTsKKwkgICAgVENQT1BUX1RJTUVTVEFNUDw8OHxUQ1BPTEVOX1RJTUVT VEFNUCkpKSkgeworCQkvKgorCQkgKiBNYWtlIHN1cmUgdGhhdCBwcmV2aW91c2x5IHNlZW4gc2Vn ZW1lbnRzL0FDS3MgYXJlIGRlbGl2ZXJlZAorCQkgKiBiZWZvcmUgdGhpcyBzZWdlbWVudC4KKwkJ ICovCisJCWZvcmNlX2ZsdXNoID0gMTsKKwl9CiAKIAkvKiBJZiB0aGUgZHJpdmVyIGRpZCBub3Qg cGFzcyBpbiB0aGUgY2hlY2tzdW0sIHNldCBpdCBub3cuICovCiAJaWYgKGNzdW0gPT0gMHgwMDAw KQpAQCAtNzU0LDYgKzc2NywxMyBAQAogI2VuZGlmCiAJCX0KIAorCQlpZiAoZm9yY2VfZmx1c2gp IHsKKwkJCS8qIFRpbWVzdGFtcHMgbWlzbWF0Y2g7IHRoaXMgaXMgYSBGSU4sIGV0YyAqLworCQkJ dGNwX2xyb19hY3RpdmVfcmVtb3ZlKGxlKTsKKwkJCXRjcF9scm9fZmx1c2gobGMsIGxlKTsKKwkJ CXJldHVybiAoVENQX0xST19DQU5OT1QpOworCQl9CisKIAkJLyogRmx1c2ggbm93IGlmIGFwcGVu ZGluZyB3aWxsIHJlc3VsdCBpbiBvdmVyZmxvdy4gKi8KIAkJaWYgKGxlLT5wX2xlbiA+IChsYy0+ bHJvX2xlbmd0aF9saW0gLSB0Y3BfZGF0YV9sZW4pKSB7CiAJCQl0Y3BfbHJvX2FjdGl2ZV9yZW1v dmUobGUpOwpAQCAtODMwLDYgKzg1MCwxNCBAQAogCQlyZXR1cm4gKDApOwogCX0KIAorCWlmIChm b3JjZV9mbHVzaCkgeworCQkvKgorCQkgKiBOb3RoaW5nIHRvIGZsdXNoLCBidXQgdGhpcyBzZWdt ZW50IGNhbiBub3QgYmUgZnVydGhlcgorCQkgKiBhZ2dyZWdhdGVkL2RlbGF5ZWQuCisJCSAqLwor CQlyZXR1cm4gKFRDUF9MUk9fQ0FOTk9UKTsKKwl9CisKIAkvKiBUcnkgdG8gZmluZCBhbiBlbXB0 eSBzbG90LiAqLwogCWlmIChMSVNUX0VNUFRZKCZsYy0+bHJvX2ZyZWUpKQogCQlyZXR1cm4gKFRD UF9MUk9fTk9fRU5UUklFUyk7Cgo= --b1_b3b8064c155f5f5ec9704d8b57ce9e8c--