Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp2981539imu; Sun, 9 Dec 2018 14:13:33 -0800 (PST) X-Google-Smtp-Source: AFSGD/U8pqCnhx4OQkY70SJ2Mt69xdPgNyON8LN/eWUgECxIUgF5ZTB2uO2qkmN5DjKFRlWn1bMO X-Received: by 2002:a65:58ca:: with SMTP id e10mr8065858pgu.99.1544393613883; Sun, 09 Dec 2018 14:13:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544393613; cv=none; d=google.com; s=arc-20160816; b=RnmL0OzZ/7pZe4JS4vIngG5fp7Kwj4lIptnAaoYZ4pLensX80TcSt6v9IlHr0z7Udk CuHx4Xlk7eQLdydbbBwE5bCO5aQ3cModFGWdI1Mj1TBSMRk9m5Uo6mtWAt2QSUBPFf75 x8kfQnPVF8VQV1kk/kWgH/RWMmVmeX1keT1zN+gGbGVuzr2B/o0RgFVdMVFMKaEk/THh pNRpg6FAISpVxEAGa3oTrbldruFgF2b/R29mwIY76ZKHocYJyUsMZAJivfWGTQFXnYdI Ou2CZ92mw7soxxbWLCoiAIYJKs8y3taOwYkL6GbEQ+bRj/MBFQyzaxYCKpBiWxtZU0A1 b4zg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:in-reply-to:subject:message-id:date:cc:to :from:mime-version:content-transfer-encoding:content-disposition; bh=+AxWCbNqvyc29z9tl58fwCaVDYFrzXoXeBhWrGzw/As=; b=Jm0H3EzyZBVPGDXUsoHKRT9CR3c9GJTRrfaJUTzf5hW3otxWZAT9siylPAmbOozp1F 5UyrISDHIYMFvLUYl5caB2w6KwNPdvXOerVW/rdYqy1qjyEkhIBJyLpjd+NE5Fsb6q8F T2HtPFpni6c1rnL/tlQ5wi3lpqkj8FczXDYNkzIPK7f1z+cIz30ZeiktDN3AkFa5sKFr ASBHH3YAKZ+izX2DVuQ0Yh2kZ0Bfp6CBvD1uCtbJwbbloy1JI/bp2RCV3QLcbJVuXnvh mvavhgEFhfS2oUi5Gp44sT87yr0lmpOMPeXxlFk5cC4GFf7H/4hBiwOJQQJ40yTQbsHL isVA== ARC-Authentication-Results: i=1; mx.google.com; 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 g6si8031794pgr.472.2018.12.09.14.13.18; Sun, 09 Dec 2018 14:13:33 -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; 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 S1728199AbeLIWLK (ORCPT + 99 others); Sun, 9 Dec 2018 17:11:10 -0500 Received: from shadbolt.e.decadent.org.uk ([88.96.1.126]:37638 "EHLO shadbolt.e.decadent.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727754AbeLIWLH (ORCPT ); Sun, 9 Dec 2018 17:11:07 -0500 Received: from pub.yeoldevic.com ([81.174.156.145] helo=deadeye) by shadbolt.decadent.org.uk with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1gW73I-0002ij-I7; Sun, 09 Dec 2018 21:55:52 +0000 Received: from ben by deadeye with local (Exim 4.91) (envelope-from ) id 1gW72c-0003Lm-7Q; Sun, 09 Dec 2018 21:55:10 +0000 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 From: Ben Hutchings To: linux-kernel@vger.kernel.org, stable@vger.kernel.org CC: akpm@linux-foundation.org, "Rabi Narayan Sahoo" , "Stefan Schmidt" , "Alexander Aring" , "David Palma" Date: Sun, 09 Dec 2018 21:50:33 +0000 Message-ID: X-Mailer: LinuxStableQueue (scripts by bwh) X-Patchwork-Hint: ignore Subject: [PATCH 3.16 107/328] net: mac802154: tx: expand tailroom if necessary In-Reply-To: X-SA-Exim-Connect-IP: 81.174.156.145 X-SA-Exim-Mail-From: ben@decadent.org.uk X-SA-Exim-Scanned: No (on shadbolt.decadent.org.uk); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 3.16.62-rc1 review patch. If anyone has any objections, please let me know. ------------------ From: Alexander Aring commit f9c52831133050c6b82aa8b6831c92da2bbf2a0b upstream. This patch is necessary if case of AF_PACKET or other socket interface which I am aware of it and didn't allocated the necessary room. Reported-by: David Palma Reported-by: Rabi Narayan Sahoo Signed-off-by: Alexander Aring Signed-off-by: Stefan Schmidt [bwh: Backported to 3.16: - Substitute literal number for IEEE802154_FCS_LEN - Adjust context] Signed-off-by: Ben Hutchings --- --- a/net/mac802154/tx.c +++ b/net/mac802154/tx.c @@ -96,8 +96,20 @@ netdev_tx_t mac802154_tx(struct mac80215 mac802154_monitors_rx(mac802154_to_priv(&priv->hw), skb); if (!(priv->hw.flags & IEEE802154_HW_OMIT_CKSUM)) { - u16 crc = crc_ccitt(0, skb->data, skb->len); + struct sk_buff *nskb; + u16 crc; + if (unlikely(skb_tailroom(skb) < 2)) { + nskb = skb_copy_expand(skb, 0, 2, GFP_ATOMIC); + if (likely(nskb)) { + consume_skb(skb); + skb = nskb; + } else { + goto err_tx; + } + } + + crc = crc_ccitt(0, skb->data, skb->len); put_unaligned_le16(crc, skb_put(skb, 2)); }