Received: by 2002:ac0:b08d:0:0:0:0:0 with SMTP id l13csp4918268imc; Mon, 25 Feb 2019 13:36:54 -0800 (PST) X-Google-Smtp-Source: AHgI3IZS2AX79DjMke/40ch8U+Kp8N4C85leBkynTgqgCA5HAseeVj/ynitnZBOg3vJVKKuM0enZ X-Received: by 2002:a17:902:20c3:: with SMTP id v3mr1841875plg.268.1551130614106; Mon, 25 Feb 2019 13:36:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1551130614; cv=none; d=google.com; s=arc-20160816; b=vsm1wmgcu81WzQgBa1tFq+EkK4m3bulR6zVWKc8odaeG2B81311kGUFeM3Qo74L20R y2n3n0IHXRj0IJt1EVjkHkeYwMwBnrsT0eEDIyoY8t3r6O2CjPqZfKbYYm26bx74cies ec25eVDwRgp77FNJgQEr7vygG5mJCdm4eSJ3Ir0lfEHpLrBjHhsbdvijesIlx+cV2Jgl 8hw7IkkGDJAbx0TEFVv0E+ZyYVRZTcg/r27g/PfiHyeSJWXwKDVxXHy53795ak7PkJPx oPYV3tJfiUy7d0MoOwOdoHk0RolHVHlC17QBJnuwjfUSwuYHzAIdnh2JLVvKCRy6aVcZ Ixwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=9g81vS3F/6zfJkmP/Pdse4mlDeuPIjD9V/KFCrV1auQ=; b=hi+RTexsQ2Ka8ISqH5G2w5dIeSdpDDwS1VpzGGs7aFB7W28hGPR61PCnlyE/zOtPPi A/1lAbXTLTcYoejUnX9jJ6IzUBEbXfGFD8BWhdbxuWAHb7NH+ZWghk45EGoEnnXEx4dr wiD5Wbuv6hdu/4omGau5jtXCO6IImj+OgRKB10F4DbbJeUfXmfuotGpLxYfF/CWmfcNp pPAG9wPiqrdMO3qQD+mqg7xA3B9zHOhmph6GSb0NvqBNHjziljHAV620MtRQmK/m6TeS vxZTUStzFMAOKjQBPj5VN8wqtluFL8+GnJ8+buc5aMswFY49Twfr/xvvXAN6Yw913YDE zp4g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=narVUusz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w190si9995434pgd.105.2019.02.25.13.36.39; Mon, 25 Feb 2019 13:36:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=narVUusz; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733131AbfBYVgM (ORCPT + 99 others); Mon, 25 Feb 2019 16:36:12 -0500 Received: from mail.kernel.org ([198.145.29.99]:42690 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733106AbfBYVgI (ORCPT ); Mon, 25 Feb 2019 16:36:08 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 80A58217F5; Mon, 25 Feb 2019 21:36:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1551130568; bh=TMzj3ELJpZJVfCkiYErPtRGYvG7WXfw3nPtV1BQL3XU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=narVUuszDXC2uTc/K05w61YkLGqL6sop3xYgSgJTwe3+dq9wtUhPufE8obChVFR8x NxREBiFp6lFsLXcu2QFzd4x9Ft6t0lLrAIXVOlEYGCtFNXDhN/w8Fm/6t8X/0vR5gv ZAKKVsjuilIaaQQid+aGS83CfoOFYUcIs7BflLkc= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Felix Fietkau , Johannes Berg Subject: [PATCH 4.20 162/183] mac80211: allocate tailroom for forwarded mesh packets Date: Mon, 25 Feb 2019 22:12:15 +0100 Message-Id: <20190225195122.371692719@linuxfoundation.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190225195054.748060397@linuxfoundation.org> References: <20190225195054.748060397@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.20-stable review patch. If anyone has any objections, please let me know. ------------------ From: Felix Fietkau commit 51d0af222f6fa43134c6187ab4f374630f6e0d96 upstream. Forwarded packets enter the tx path through ieee80211_add_pending_skb, which skips the ieee80211_skb_resize call. Fixes WARN_ON in ccmp_encrypt_skb and resulting packet loss. Cc: stable@vger.kernel.org Signed-off-by: Felix Fietkau Signed-off-by: Johannes Berg Signed-off-by: Greg Kroah-Hartman --- net/mac80211/rx.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c @@ -2640,6 +2640,7 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 struct ieee80211_sub_if_data *sdata = rx->sdata; struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; u16 ac, q, hdrlen; + int tailroom = 0; hdr = (struct ieee80211_hdr *) skb->data; hdrlen = ieee80211_hdrlen(hdr->frame_control); @@ -2726,8 +2727,12 @@ ieee80211_rx_h_mesh_fwding(struct ieee80 if (!ifmsh->mshcfg.dot11MeshForwarding) goto out; + if (sdata->crypto_tx_tailroom_needed_cnt) + tailroom = IEEE80211_ENCRYPT_TAILROOM; + fwd_skb = skb_copy_expand(skb, local->tx_headroom + - sdata->encrypt_headroom, 0, GFP_ATOMIC); + sdata->encrypt_headroom, + tailroom, GFP_ATOMIC); if (!fwd_skb) goto out;