Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp2857728pxv; Mon, 12 Jul 2021 03:44:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJydXZqeaKHQLFJQ/crsgIOxtVmg6Xi2LRKyMVb6mfSj+mO7tlM4hOKi27N0ykvWAL0lKfRH X-Received: by 2002:a17:906:26ce:: with SMTP id u14mr51232933ejc.187.1626086684672; Mon, 12 Jul 2021 03:44:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626086684; cv=none; d=google.com; s=arc-20160816; b=g8iei8Q3oU26q4gykSywVizsGByTGb2H/tFW/57i4S6Sfn/5S5yyhEJ6gfTR+XLGrl /yV/jYY+CBebts0ipj8QQH+Y64rD+u/tHfHGSA6pMAWbJ8W6F/xit0TLMQ3cDHP/ux1P XmqSLrJRoXE7xzrwr5UehwJqYT6fi0Cv3J4sw1P6RVbZEiFzFj5et9x/JX0b3e3syx0f X2R8Hiq0glaqc+IwvF26VR6uY1CL7aNH+/gyrwPbM6PXNjNtM0rTxzb8PedWxbYZ35ly qesXRDza2OYL+zPTTpPNnkH9jYOfiHnGOD7/jok5a8jqfEkTd0wEtvjtus3qTH1N2Mvi uhZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=xFc76HMVDr5mw3Q5FMZPKy03SWvSu0BN9DLSE6XxPyI=; b=NG8IAjgUDJVZ9wNf+2QF0DW+K90jqm4RwamS/rSqA5BJK5xyqcOwntzTAPcql8J/pT LBW6xnTMcfPCYt+sMRZo55gNIpt3kUgk7+vQ1aWMeTIPwpZObl1w5hWG4sV862X17udg LeDzTQXKougw1LFHQLQYzDc9/Wij2aAKpGXxXYtiV9I0uIbpZukJHlRhYAtwptj1Ihsg aQFICNaHnnv3gAlS5OnZ67iqMFap1C09TqNX7je03GMO5ATVzveuDuzQHcbRck/6DN4U 8EqLvVGCsGiUxjFiF/muRASBvHGpZ5I9uihkM8aY50tP5J0sUFRb+rjcOZoGcdVp37kH XiGg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=QH6usELY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e12si16250530ejk.703.2021.07.12.03.44.21; Mon, 12 Jul 2021 03:44:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=QH6usELY; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1345001AbhGLHsu (ORCPT + 99 others); Mon, 12 Jul 2021 03:48:50 -0400 Received: from mail.kernel.org ([198.145.29.99]:47058 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241506AbhGLHOk (ORCPT ); Mon, 12 Jul 2021 03:14:40 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A018D613EC; Mon, 12 Jul 2021 07:11:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626073888; bh=T1wAeuWT7+y5rbqoxQHr4a1GsyCW465NMBfjnELrFLY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QH6usELYEMT2xihUO82RjvVQqp9mw+obCQS/aQMBx9CxP6GLKUqq1z2v5YPrx3Bpl AnsiZZkFpzsHwV3a7iIEf5TB76rGm8NFo/UWzCBLTMH82kVu3+dNfbPSU+EB3Bj0SI NHOl9bL9wIOySrrxTmFeXV4nEI/IBOzLDiZlVGNs= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Xiumei Mu , Xin Long , Steffen Klassert , Sasha Levin Subject: [PATCH 5.12 391/700] xfrm: remove the fragment check for ipv6 beet mode Date: Mon, 12 Jul 2021 08:07:54 +0200 Message-Id: <20210712061017.979281447@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210712060924.797321836@linuxfoundation.org> References: <20210712060924.797321836@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Xin Long [ Upstream commit eebd49a4ffb420a991c606e54aa3c9f02857a334 ] In commit 68dc022d04eb ("xfrm: BEET mode doesn't support fragments for inner packets"), it tried to fix the issue that in TX side the packet is fragmented before the ESP encapping while in the RX side the fragments always get reassembled before decapping with ESP. This is not true for IPv6. IPv6 is different, and it's using exthdr to save fragment info, as well as the ESP info. Exthdrs are added in TX and processed in RX both in order. So in the above case, the ESP decapping will be done earlier than the fragment reassembling in TX side. Here just remove the fragment check for the IPv6 inner packets to recover the fragments support for BEET mode. Fixes: 68dc022d04eb ("xfrm: BEET mode doesn't support fragments for inner packets") Reported-by: Xiumei Mu Signed-off-by: Xin Long Signed-off-by: Steffen Klassert Signed-off-by: Sasha Levin --- net/xfrm/xfrm_output.c | 7 ------- 1 file changed, 7 deletions(-) diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c index e4cb0ff4dcf4..ac907b9d32d1 100644 --- a/net/xfrm/xfrm_output.c +++ b/net/xfrm/xfrm_output.c @@ -711,15 +711,8 @@ out: static int xfrm6_extract_output(struct xfrm_state *x, struct sk_buff *skb) { #if IS_ENABLED(CONFIG_IPV6) - unsigned int ptr = 0; int err; - if (x->outer_mode.encap == XFRM_MODE_BEET && - ipv6_find_hdr(skb, &ptr, NEXTHDR_FRAGMENT, NULL, NULL) >= 0) { - net_warn_ratelimited("BEET mode doesn't support inner IPv6 fragments\n"); - return -EAFNOSUPPORT; - } - err = xfrm6_tunnel_check_size(skb); if (err) return err; -- 2.30.2