From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 1940CA04DD;
	Tue, 10 Nov 2020 19:08:38 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id ED8E83772;
	Tue, 10 Nov 2020 19:08:36 +0100 (CET)
Received: from mail-pg1-f193.google.com (mail-pg1-f193.google.com
 [209.85.215.193]) by dpdk.org (Postfix) with ESMTP id 1FC8C2B93
 for <dev@dpdk.org>; Tue, 10 Nov 2020 19:08:35 +0100 (CET)
Received: by mail-pg1-f193.google.com with SMTP id i26so10905531pgl.5
 for <dev@dpdk.org>; Tue, 10 Nov 2020 10:08:35 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=networkplumber-org.20150623.gappssmtp.com; s=20150623;
 h=date:from:to:cc:subject:message-id:in-reply-to:references
 :mime-version:content-transfer-encoding;
 bh=A9HvZab5JykjvWbe3Pp0CYfvRexRwVBB+DqhX9ieQlQ=;
 b=kxwMHpk/7Ksfy1kG0Xq5MPaABTIBC1ZfOeB6r1ZOenGR+KhI8k+qQJ5p9XakYSJntJ
 ioFc700Pwlas88S9PAyA3sTcpAutDfJ6+HT1jblGYoMg5rO2+/O7MT1mvoojMACUL5KQ
 onERqQY0lcvbfY/dXB9XtfaE01u/bQOsvJtnuQjD3oKhBxzfeyPX+GwAxypHs852P46Y
 KePVJqZozOIpL7vCpv/8wNwyLzOzkNRD5mQYWuJfxW8o/nUEtmrChffLC0D53nOqNkU7
 lgmOxaADcxQ2pLMXugsoLuAILckq/GwPg/S00A++XjWygEIo3sVPJG16GcCdpfetO+4V
 IkYQ==
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:in-reply-to
 :references:mime-version:content-transfer-encoding;
 bh=A9HvZab5JykjvWbe3Pp0CYfvRexRwVBB+DqhX9ieQlQ=;
 b=fQrMy0GBcWuQ1JzKSKAd6R0nAcVrZOS6v4NvuxGewpzRUhbKBbXuBL5OlU585EU7xq
 eTUMWp0hi4pz5QW2H6rKtjTqPBfPBCbzL9SCStVH+uK18CrdZp9ITyVKtYETuqirzF5a
 5gWYYH06L2ul0TVvcb+10pGWhPwQNHCg9YZt2Odb6S26f9T02KhVHrPhzn+44//LYl0Z
 VNC/CtzmBCE7RJqly/d0jFkk2HjdKwcd+xcdN7cp1IMDfwVpjphGxZVYX4SMNnDS9P+D
 GClvipmER/XYIoVAyQuJ4mQq+kt/K1bucoXHlzeU+35Do3VuLOpG6DCyoUevHSkxc9FF
 He+g==
X-Gm-Message-State: AOAM531gC9dbzpwkPxdU+7+cQZviKwsR1cuCG3By79RocNGlqND9FY5J
 oAYZbXtTyfleL+GI5YQe8lNHYA==
X-Google-Smtp-Source: ABdhPJxCja6Z9+3h+Hshg1NeDwG35dUbPzS+EGhvmzzHWYV/6tqgBkiJoPXuKMprK4Ma9sMT0gKVzw==
X-Received: by 2002:a63:ff10:: with SMTP id k16mr6579515pgi.328.1605031713296; 
 Tue, 10 Nov 2020 10:08:33 -0800 (PST)
Received: from hermes.local (204-195-22-127.wavecable.com. [204.195.22.127])
 by smtp.gmail.com with ESMTPSA id v23sm3817683pjh.46.2020.11.10.10.08.32
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 10 Nov 2020 10:08:32 -0800 (PST)
Date: Tue, 10 Nov 2020 10:08:29 -0800
From: Stephen Hemminger <stephen@networkplumber.org>
To: Olivier Matz <olivier.matz@6wind.com>
Cc: Thomas Monjalon <thomas@monjalon.net>, dev@dpdk.org,
 david.marchand@redhat.com, ferruh.yigit@intel.com,
 mb@smartsharesystems.com, konstantin.ananyev@intel.com,
 andrew.rybchenko@oktetlabs.ru, viacheslavo@nvidia.com,
 ajit.khaparde@broadcom.com, jerinj@marvell.com, hemant.agrawal@nxp.com, Ray
 Kinsella <mdr@ashroe.eu>, Neil Horman <nhorman@tuxdriver.com>
Message-ID: <20201110100829.4c50e776@hermes.local>
In-Reply-To: <20201110162509.GN1898@platinum>
References: <20201107155306.463148-1-thomas@monjalon.net>
 <20201109212937.989954-1-thomas@monjalon.net>
 <20201109212937.989954-3-thomas@monjalon.net>
 <20201110162509.GN1898@platinum>
MIME-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Subject: Re: [dpdk-dev] [PATCH v2 2/2] mbuf: move pool pointer in first half
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

On Tue, 10 Nov 2020 17:25:09 +0100
Olivier Matz <olivier.matz@6wind.com> wrote:

> On Mon, Nov 09, 2020 at 10:29:37PM +0100, Thomas Monjalon wrote:
> > According to the Technical Board decision
> > (http://mails.dpdk.org/archives/dev/2020-November/191859.html),
> > the mempool pointer in the mbuf struct is moved
> > from the second to the first half.
> > It may increase performance in some cases
> > on systems having 64-byte cache line, i.e. mbuf split in two cache lines.
> > 
> > Due to this change, tx_offload is moved.
> > Hopefully no vector data path is impacted.
> > 
> > Moving this field gives more space to dynfield1
> > while dropping the temporary dynfield0.
> > 
> > This is how the mbuf layout looks like (pahole-style):
> > 
> > word  type                              name                byte  size
> >  0    void *                            buf_addr;         /*   0 +  8 */
> >  1    rte_iova_t                        buf_iova          /*   8 +  8 */
> >       /* --- RTE_MARKER64               rearm_data;                   */
> >  2    uint16_t                          data_off;         /*  16 +  2 */
> >       uint16_t                          refcnt;           /*  18 +  2 */
> >       uint16_t                          nb_segs;          /*  20 +  2 */
> >       uint16_t                          port;             /*  22 +  2 */
> >  3    uint64_t                          ol_flags;         /*  24 +  8 */
> >       /* --- RTE_MARKER                 rx_descriptor_fields1;        */
> >  4    uint32_t             union        packet_type;      /*  32 +  4 */
> >       uint32_t                          pkt_len;          /*  36 +  4 */
> >  5    uint16_t                          data_len;         /*  40 +  2 */
> >       uint16_t                          vlan_tci;         /*  42 +  2 */
> >  5.5  uint64_t             union        hash;             /*  44 +  8 */
> >  6.5  uint16_t                          vlan_tci_outer;   /*  52 +  2 */
> >       uint16_t                          buf_len;          /*  54 +  2 */
> >  7    struct rte_mempool *              pool;             /*  56 +  8 */
> >       /* --- RTE_MARKER                 cacheline1;                   */
> >  8    struct rte_mbuf *                 next;             /*  64 +  8 */
> >  9    uint64_t             union        tx_offload;       /*  72 +  8 */
> > 10    struct rte_mbuf_ext_shared_info * shinfo;           /*  80 +  8 */
> > 11    uint16_t                          priv_size;        /*  88 +  2 */
> >       uint16_t                          timesync;         /*  90 +  2 */
> > 11.5  uint32_t                          dynfield1[9];     /*  92 + 36 */
> > 16    /* --- END                                             128      */
> > 
> > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>  
> 
> Acked-by: Olivier Matz <olivier.matz@6wind.com>

Thanks this looks good.

Acked-by: Stephen Hemminger <stephen@networkplumber.org>