From patchwork Fri Feb 28 23:47:38 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mat Martineau X-Patchwork-Id: 1246923 Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=linux.intel.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 48TmSG6C56z9sPk for ; Sat, 29 Feb 2020 10:47:58 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726859AbgB1Xr4 (ORCPT ); Fri, 28 Feb 2020 18:47:56 -0500 Received: from mga14.intel.com ([192.55.52.115]:3767 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726490AbgB1Xr4 (ORCPT ); Fri, 28 Feb 2020 18:47:56 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Feb 2020 15:47:55 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,497,1574150400"; d="scan'208";a="351031530" Received: from mjmartin-nuc02.mjmartin-nuc02 (HELO mjmartin-nuc02.sea.intel.com) ([10.251.18.184]) by fmsmga001.fm.intel.com with ESMTP; 28 Feb 2020 15:47:55 -0800 From: Mat Martineau To: netdev@vger.kernel.org Cc: Mat Martineau Subject: [PATCH net-next 0/3] mptcp: Improve DATA_FIN transmission Date: Fri, 28 Feb 2020 15:47:38 -0800 Message-Id: <20200228234741.57086-1-mathew.j.martineau@linux.intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org MPTCP's DATA_FIN flag is sent in a DSS option when closing the MPTCP-level connection. This patch series prepares for correct DATA_FIN handling across multiple subflows (where individual subflows may disconnect without closing the entire MPTCP connection) by changing the way the MPTCP-level socket requests a DATA_FIN on a subflow and propagates the necessary data for the TCP option. Mat Martineau (3): mptcp: Check connection state before attempting send mptcp: Use per-subflow storage for DATA_FIN sequence number mptcp: Only send DATA_FIN with final mapping net/mptcp/options.c | 16 ++++++++-------- net/mptcp/protocol.c | 32 +++++++++++++++++++++++++++----- net/mptcp/protocol.h | 2 ++ 3 files changed, 37 insertions(+), 13 deletions(-) base-commit: e955376277839db92774ec24d559ab42442b95fc