From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 002DCA0521; Tue, 3 Nov 2020 15:18:34 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 56A6ACAC4; Tue, 3 Nov 2020 15:18:00 +0100 (CET) Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by dpdk.org (Postfix) with ESMTP id C0A59CAA6 for ; Tue, 3 Nov 2020 15:17:58 +0100 (CET) Received: by mail-wr1-f66.google.com with SMTP id k10so17416341wrw.13 for ; Tue, 03 Nov 2020 06:17:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=Do57zpLi5szWNL4P7gJ0dmGZwnxnZRmSfW8QejKYsUY=; b=eEAL5m/c7MD/84Np0wyEux6iAML4UF/V6zYEtxXv47Tg3wVn90thi5V5PahV8UghCG hgcLxYF8cd+9/hW+U8TEV6SsekkDeVrxHVsuBeGF6q78FDkY7m0cDwc6m2VJgqL+LcMo OSP9NwE334Zi6X37IFS9pFXJdeueDgp6jtNzf/BJ2D7O4pMEjMOmV/y4PTP0q+OZO6XR kZuOvNjnC/vgI/ftepOD9ExbOv56tKEyD1GaDHxCCEzmEg3Hje4QXa1+ADoGzInRyFj+ 4sVJU8oD/Y4747euBbofauAW0kOMirPygo5pWAmWO1jjjJeO5Tx6to++jSgCx2Qw5j4g IJ4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=Do57zpLi5szWNL4P7gJ0dmGZwnxnZRmSfW8QejKYsUY=; b=EGyD/Oj54rsTiTxU0fJUa3y2ShR9uJZmZ/wJlzzZMbDONhXYfCZdWid5WoI8+9ntTB D3HcMfb3k8ruU2VjGdbFhiigI/E7ZqQ2IK1fU1p2WkOJSJIWrDgh4M4En3eUK+VN/0Sv 8G9xLwTRUAZWjDLplaDRm0C52yMGjOLZn/8D1N04RFR28+kfzkyiOlwJ9w17mVOozAt9 AisZbgdqd/bqS4Tov1doh8z4cxxka6ueFv4qW5oCgvHDHG8WxMgv3qW1E0cX5AKbs77Q jG5oVVHvIhUwfU9MBZ9CGv+HB86aq6aWd1FVm9MGacEvGaHiHlSIrTXg1r7WXpYhAkZp fOqQ== X-Gm-Message-State: AOAM532sTaZrCSUIk1wXPNKv2XQE9V7iId97zFFgA2Opvg1K1hIAxKXK zhpQk0XIG0+1GOYf50hVx4gC8w== X-Google-Smtp-Source: ABdhPJwqJzrpoVtYWW9r6d54pbVQjcg4zRVBN3ZWhc/457nZK0SqqpECNQOl6OhbAM3e+9o+FN3HNA== X-Received: by 2002:a05:6000:1046:: with SMTP id c6mr2113441wrx.315.1604413077536; Tue, 03 Nov 2020 06:17:57 -0800 (PST) Received: from 6wind.com (2a01cb0c0005a600345636f7e65ed1a0.ipv6.abo.wanadoo.fr. [2a01:cb0c:5:a600:3456:36f7:e65e:d1a0]) by smtp.gmail.com with ESMTPSA id l3sm3582852wmg.32.2020.11.03.06.17.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Nov 2020 06:17:56 -0800 (PST) Date: Tue, 3 Nov 2020 15:17:56 +0100 From: Olivier Matz To: Thomas Monjalon Cc: dev@dpdk.org, ferruh.yigit@intel.com, david.marchand@redhat.com, bruce.richardson@intel.com, andrew.rybchenko@oktetlabs.ru, jerinj@marvell.com, viacheslavo@nvidia.com Message-ID: <20201103141756.GF1898@platinum> References: <20201029092751.3837177-1-thomas@monjalon.net> <20201103140931.488700-1-thomas@monjalon.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201103140931.488700-1-thomas@monjalon.net> User-Agent: Mutt/1.10.1 (2018-07-13) Subject: Re: [dpdk-dev] [PATCH v5 00/16] remove mbuf timestamp X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, Nov 03, 2020 at 03:09:15PM +0100, Thomas Monjalon wrote: > The mbuf field timestamp was announced to be removed for three reasons: > - a dynamic field already exist, used for Tx only > - this field always used 8 bytes even if unneeded > - this field is in the first half (cacheline) of mbuf > > After this series, the dynamic field timestamp is used for both Rx and Tx > with separate dynamic flags to distinguish when the value is meaningful > without resetting the field during forwarding. > > As a consequence, 8 bytes can be re-allocated to dynamic fields > in the first half of mbuf structure. > It is still open to change more the mbuf layout. > > This mbuf layout change is important to allow adding more features > (consuming more dynamic fields) during the next year, > and can allow performance improvements with new usages in the first half. > > > v5: > - add a blank line between different kind of ARK variables > - move registration after octeontx2 VF config > - register also in otx2_nix_timesync_enable > > v4: > - use local variable in nfb > - fix flag initialization > - remove useless blank line > > v3: > - move ark variables declaration in a .h file > - improve cache locality for octeontx2 > - add comments about cache locality in commit logs > - add comment for unused flag offset 17 > - add timestamp register functions > - replace lookup with register in drivers and apps > - remove register in ethdev > > v2: > - remove optimization to register only once in ethdev > - fix error message in latencystats > - convert rxtx_callbacks macro to inline function > - increase dynamic fields space > - do not move pool field > > > Thomas Monjalon (16): > eventdev: remove software Rx timestamp > mbuf: add Rx timestamp flag and helpers > latency: switch Rx timestamp to dynamic mbuf field > net/ark: switch Rx timestamp to dynamic mbuf field > net/dpaa2: switch Rx timestamp to dynamic mbuf field > net/mlx5: fix dynamic mbuf offset lookup check > net/mlx5: switch Rx timestamp to dynamic mbuf field > net/nfb: switch Rx timestamp to dynamic mbuf field > net/octeontx2: switch Rx timestamp to dynamic mbuf field > net/pcap: switch Rx timestamp to dynamic mbuf field > app/testpmd: switch Rx timestamp to dynamic mbuf field > examples/rxtx_callbacks: switch timestamp to dynamic field > ethdev: add doxygen comment for Rx timestamp API > mbuf: remove deprecated timestamp field > mbuf: add Tx timestamp registration helper > ethdev: include mbuf registration in Tx timestamp API > > app/test-pmd/config.c | 38 ------------- > app/test-pmd/util.c | 38 ++++++++++++- > app/test/test_mbuf.c | 1 - > doc/guides/nics/mlx5.rst | 5 +- > .../prog_guide/event_ethernet_rx_adapter.rst | 6 +- > doc/guides/rel_notes/deprecation.rst | 4 -- > doc/guides/rel_notes/release_20_11.rst | 4 ++ > drivers/net/ark/ark_ethdev.c | 17 ++++++ > drivers/net/ark/ark_ethdev_rx.c | 7 ++- > drivers/net/ark/ark_ethdev_rx.h | 2 + > drivers/net/dpaa2/dpaa2_ethdev.c | 11 ++++ > drivers/net/dpaa2/dpaa2_ethdev.h | 2 + > drivers/net/dpaa2/dpaa2_rxtx.c | 25 ++++++--- > drivers/net/mlx5/mlx5_ethdev.c | 8 ++- > drivers/net/mlx5/mlx5_rxq.c | 8 +++ > drivers/net/mlx5/mlx5_rxtx.c | 8 +-- > drivers/net/mlx5/mlx5_rxtx.h | 19 +++++++ > drivers/net/mlx5/mlx5_rxtx_vec_altivec.h | 41 +++++++------- > drivers/net/mlx5/mlx5_rxtx_vec_neon.h | 43 ++++++++------- > drivers/net/mlx5/mlx5_rxtx_vec_sse.h | 35 ++++++------ > drivers/net/mlx5/mlx5_trigger.c | 2 +- > drivers/net/mlx5/mlx5_txq.c | 2 +- > drivers/net/nfb/nfb_rx.c | 15 ++++- > drivers/net/nfb/nfb_rx.h | 21 +++++-- > drivers/net/octeontx2/otx2_ethdev.c | 10 ++++ > drivers/net/octeontx2/otx2_ptp.c | 8 +++ > drivers/net/octeontx2/otx2_rx.h | 19 ++++++- > drivers/net/pcap/rte_eth_pcap.c | 20 ++++++- > examples/rxtx_callbacks/main.c | 16 +++++- > lib/librte_ethdev/rte_ethdev.h | 14 ++++- > .../rte_event_eth_rx_adapter.c | 11 ---- > .../rte_event_eth_rx_adapter.h | 6 +- > lib/librte_latencystats/rte_latencystats.c | 30 ++++++++-- > lib/librte_mbuf/rte_mbuf.c | 2 - > lib/librte_mbuf/rte_mbuf.h | 2 +- > lib/librte_mbuf/rte_mbuf_core.h | 12 +--- > lib/librte_mbuf/rte_mbuf_dyn.c | 51 +++++++++++++++++ > lib/librte_mbuf/rte_mbuf_dyn.h | 55 +++++++++++++++++-- > lib/librte_mbuf/version.map | 2 + > 39 files changed, 440 insertions(+), 180 deletions(-) > > -- > 2.28.0 > For the series: Acked-by: Olivier Matz