Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp2456408imj; Mon, 18 Feb 2019 06:22:04 -0800 (PST) X-Google-Smtp-Source: AHgI3IYxrPMySThrmjYuMjIHAK8+MIoQHJiGeDTY60B/lAJ2juHkAdUaBvOyn7ceqLt2Ax1nxE4o X-Received: by 2002:a63:db02:: with SMTP id e2mr19389604pgg.419.1550499724758; Mon, 18 Feb 2019 06:22:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550499724; cv=none; d=google.com; s=arc-20160816; b=BhkmTvOZFiZR5VsuWCkD397BszCz6PVhy6RmQQRoqeMNteUNekoGvw/dk8rLiZ3hoM hjzLkDrP6xp6vwy7sQktdpjCQDklzVCC4aX+z2+jXWShyfCYqsgMYKBYZV9KviwAy5tu IojfHyaKbPXR3d2NNCCZQChftCxhGLooh8EpGHdVbxZbYJVNmSA5z6ytilx0O/lcbsSh UqS9aRIPAhLjhZqaED6fm6gw0ERAICU/e8gaFFYSWltWhK5HgAZCqDjS2WlOkczIjwc5 z1pkVER2rXw5jr96vfjhemlRE4Zz8im6n29NNd4YUMuMXy21bUt3Ah0unJTeN4mmR6sq hK3Q== 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=4Af9+z12vExOQqje1jtUXbmDS4NTXFFt8UqYCf+XKq8=; b=LOpInsTghtQaQuPZT3VUaGnQDt6CI95py8cfNDB0VDk4ghIKZ6qTvmYb23uyBEsExE scteJyPH0qn7t3kEpmuoAtNS/a/Uz2Uglhe9AYx885q1/5K1CzNCpOHJNbmcniec7Dz7 BOUU+ukEArjBBpaYw8NBMKKVMWN97kitVmWczPd8r3+g8ueu8hG3ouQqFXPvEALnhSEu Qds5fSkdw/oGMNxk1AqpXMBiR6G9wGcU1/q538ArcElgJ6RXylmuVHBINmY9XCEqhnys BpMBwQ5vQ6m9J+EnI688HiswOYodq/vtj+ZVvTdAqjO7f6ihXfp8jcQ7nGXFVIk/yCP5 P7bg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=dz5wR2cM; 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 d37si14421643plb.140.2019.02.18.06.21.48; Mon, 18 Feb 2019 06:22:04 -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=dz5wR2cM; 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 S2390597AbfBROH2 (ORCPT + 99 others); Mon, 18 Feb 2019 09:07:28 -0500 Received: from mail.kernel.org ([198.145.29.99]:50574 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389177AbfBROHZ (ORCPT ); Mon, 18 Feb 2019 09:07:25 -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 C4B4A204FD; Mon, 18 Feb 2019 14:07:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1550498845; bh=GOIvIRpU0chVvV+RmTJzOfG37+kJrxH5TWmeDV7iBIE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dz5wR2cMfsn46Gz9FFmXhFdUVvfjJsqv7WRAroFUzvRoV9ClEGEqxQnJ4D0SML827 CYOLdfX5f0iUtXTdJpzVCsVt3EmYTNqOK0RfcQfjxaS6CBjbnlZlc6VVybJL9PCVvm 3A5lkzgIoOqQzNOg67CYV/8zNTIRctXC4bqXgpaI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Eric Dumazet , James Hughes , Matthew Garrett , "David S. Miller" , Linus Walleij Subject: [PATCH 4.4 140/143] ch9200: use skb_cow_head() to deal with cloned skbs Date: Mon, 18 Feb 2019 14:44:28 +0100 Message-Id: <20190218133534.087242246@linuxfoundation.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190218133529.099444112@linuxfoundation.org> References: <20190218133529.099444112@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.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Eric Dumazet commit 6bc6895bdd6744e0136eaa4a11fbdb20a7db4e40 upstream. We need to ensure there is enough headroom to push extra header, but we also need to check if we are allowed to change headers. skb_cow_head() is the proper helper to deal with this. Fixes: 4a476bd6d1d9 ("usbnet: New driver for QinHeng CH9200 devices") Signed-off-by: Eric Dumazet Cc: James Hughes Cc: Matthew Garrett Signed-off-by: David S. Miller Signed-off-by: Linus Walleij Signed-off-by: Greg Kroah-Hartman --- drivers/net/usb/ch9200.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) --- a/drivers/net/usb/ch9200.c +++ b/drivers/net/usb/ch9200.c @@ -255,14 +255,9 @@ static struct sk_buff *ch9200_tx_fixup(s tx_overhead = 0x40; len = skb->len; - if (skb_headroom(skb) < tx_overhead) { - struct sk_buff *skb2; - - skb2 = skb_copy_expand(skb, tx_overhead, 0, flags); + if (skb_cow_head(skb, tx_overhead)) { dev_kfree_skb_any(skb); - skb = skb2; - if (!skb) - return NULL; + return NULL; } __skb_push(skb, tx_overhead);