Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp1679713pxu; Sun, 6 Dec 2020 03:50:20 -0800 (PST) X-Google-Smtp-Source: ABdhPJwgpEJmRNXq9yA6wqs1eWAobORltdRjSQYY2wdMt+Nt3rL3hsa2rVx/dGi4vlUXCsKn61OE X-Received: by 2002:a17:907:2179:: with SMTP id rl25mr14571073ejb.470.1607255420351; Sun, 06 Dec 2020 03:50:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607255420; cv=none; d=google.com; s=arc-20160816; b=swul9JSbxffpEhmhXA0yoDCfvZkXNQl67jUZ5IIgKlPtryHQFq9YSY/XVohOI3prPq bxpy4xuJG9aCy8K6w5HnaLMNI5qPT+RdohRcLrNa8XlFJyq23gq0vOF5r8wEYwh1J9nM avsuJdQXNI7Ix4ZoTdoaiiz7WsKgJ21FBXtq32OHz02RMhu6L8YytoBLbnCiDOz0WhKT 10HDkNoptYhPnSqoi+adcU7i+emDdf/pGjW5Jztc8fuqH8nbqvB1KbhL6prcTS17CxRD TpK/DsdqIr3AWRY3j0/9OnbOz5sLkMOlsujUjNF/XsbC2NbOXOAgUuks1W9PspSqTxPj OwHg== 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; bh=MI7Qi+EYzlrbLHqsqA1FOo1GbnSqtU9Ex5v7fqAMW6o=; b=UYmeELwWCCxR3iWifCVqHyoS3hOXS7SmfsoYwTDZ9oEBQ1lYQOO1Z892A2p8CaACaX 2+VfYHZ3XEmir5gjjrgDkvJ3dOld6Y+sBjr5jgleVva2INSY3EYJLb3cuz4rkFF1RelQ hEOkIRxRuY8AwXtLzveHc/+EzC9ip1nDyonrSFFaxO5n/iBZGScTWfJdfVD84pu1NLKk SPEuLwaIdsKOeIMkIkrwpgKDcHlkNIacFvU/5IFseHYLYVljlWmRMqB4nO9hk08qKK7C umT6vvyRBxFtHrWLYLNxa05fKFWqU0s79MJcn/a9XFuCd35Yg+C6hlzm+8aD4BjuXRY+ FQGw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (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 b22si2107199ejk.400.2020.12.06.03.49.57; Sun, 06 Dec 2020 03:50:20 -0800 (PST) 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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728398AbgLFLqo (ORCPT + 99 others); Sun, 6 Dec 2020 06:46:44 -0500 Received: from mail.kernel.org ([198.145.29.99]:44720 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729401AbgLFLor (ORCPT ); Sun, 6 Dec 2020 06:44:47 -0500 From: Greg Kroah-Hartman Authentication-Results: mail.kernel.org; dkim=permerror (bad message/signature format) To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Yangbo Lu , Camelia Groza , Jakub Kicinski Subject: [PATCH 5.9 26/46] dpaa_eth: copy timestamp fields to new skb in A-050385 workaround Date: Sun, 6 Dec 2020 12:17:34 +0100 Message-Id: <20201206111557.720589520@linuxfoundation.org> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20201206111556.455533723@linuxfoundation.org> References: <20201206111556.455533723@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: Yangbo Lu [ Upstream commit 07500a6085806d97039ebcba8d9b8b29129f0106 ] The timestamp fields should be copied to new skb too in A-050385 workaround for later TX timestamping handling. Fixes: 3c68b8fffb48 ("dpaa_eth: FMan erratum A050385 workaround") Signed-off-by: Yangbo Lu Acked-by: Camelia Groza Link: https://lore.kernel.org/r/20201201075258.1875-1-yangbo.lu@nxp.com Signed-off-by: Jakub Kicinski Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) --- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c @@ -2120,6 +2120,15 @@ workaround: skb_copy_header(new_skb, skb); new_skb->dev = skb->dev; + /* Copy relevant timestamp info from the old skb to the new */ + if (priv->tx_tstamp) { + skb_shinfo(new_skb)->tx_flags = skb_shinfo(skb)->tx_flags; + skb_shinfo(new_skb)->hwtstamps = skb_shinfo(skb)->hwtstamps; + skb_shinfo(new_skb)->tskey = skb_shinfo(skb)->tskey; + if (skb->sk) + skb_set_owner_w(new_skb, skb->sk); + } + /* We move the headroom when we align it so we have to reset the * network and transport header offsets relative to the new data * pointer. The checksum offload relies on these offsets. @@ -2127,7 +2136,6 @@ workaround: skb_set_network_header(new_skb, skb_network_offset(skb)); skb_set_transport_header(new_skb, skb_transport_offset(skb)); - /* TODO: does timestamping need the result in the old skb? */ dev_kfree_skb(skb); *s = new_skb;