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 EEA97A04B7;
	Mon, 21 Sep 2020 11:03:57 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 6AAD91D936;
	Mon, 21 Sep 2020 11:03:51 +0200 (CEST)
Received: from alln-iport-2.cisco.com (alln-iport-2.cisco.com [173.37.142.89])
 by dpdk.org (Postfix) with ESMTP id 4EA491D60D
 for <dev@dpdk.org>; Mon, 21 Sep 2020 11:03:44 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
 d=cisco.com; i=@cisco.com; l=2549; q=dns/txt; s=iport;
 t=1600679025; x=1601888625;
 h=from:to:cc:subject:date:message-id:references:
 in-reply-to:content-transfer-encoding:mime-version;
 bh=KUqYhZAdis/uWlkhzey3VQnzuUblE5n7xJYVrGNccgc=;
 b=lEIvCoaJEyjUqGqf3+43TlgRvDq9I2YfSesxgifgHmcif2Q429jm1/vJ
 jQJ2i221sLHrQu1E4o4CGj0ASh/Rggw4ry9aTyoeEr01APcU7xJo5j9Hy
 JjQcTp/MSyFota5ufMaYSvXfi8Ss9m3JiGTaPs0Ml1s3zGP2XLfAbnnr8 c=;
IronPort-PHdr: =?us-ascii?q?9a23=3A2oqPNxKGbkL1Xgf1TdmcpTVXNCE6p7X5OBIU4Z?=
 =?us-ascii?q?M7irVIN76u5InmIFeGvK0/hUXMG47c7qEMh+nXtvXmXmoNqdaEvWsZeZNBHx?=
 =?us-ascii?q?kClY0NngMmDcLEbC+zLPPjYyEgWsgXUlhj8iKyK00TE8H7NBXep3So5msUHR?=
 =?us-ascii?q?PyfQN+OuXyHNvUiMK6n+C/8pHeeUNGnj24NLhzNx6x6w7Ws5ob?=
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0CYCQCxa2hf/5ldJa1fgQmDIVEHgUk?=
 =?us-ascii?q?vLAqHdgONdZh0glMDVQsBAQENAQEtAgQBAYRLAoIrAiQ4EwIDAQELAQEFAQE?=
 =?us-ascii?q?BAgEGBG2FXAyFcgEBAQECARIoBgEBNwELBAIBCBEEAQEfEDIdCAIEAQ0FCBq?=
 =?us-ascii?q?FUAMOIAEDqGQCgTmIYXSBNIMBAQEFhSwYghAJgTiCcYo7G4IAgVSCTT6EPwW?=
 =?us-ascii?q?DQ4ItpiiRCgoggkeabaEBknuffAIEAgQFAg4BAQWBayOBV3AVgyRQFwINkhC?=
 =?us-ascii?q?ILYIpdDcCBgoBAQMJfIxSAYEQAQE?=
X-IronPort-AV: E=Sophos;i="5.77,286,1596499200"; d="scan'208";a="565450072"
Received: from rcdn-core-2.cisco.com ([173.37.93.153])
 by alln-iport-2.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA;
 21 Sep 2020 09:03:43 +0000
Received: from XCH-ALN-005.cisco.com (xch-aln-005.cisco.com [173.36.7.15])
 by rcdn-core-2.cisco.com (8.15.2/8.15.2) with ESMTPS id 08L93gFh001737
 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL);
 Mon, 21 Sep 2020 09:03:43 GMT
Received: from xhs-aln-001.cisco.com (173.37.135.118) by XCH-ALN-005.cisco.com
 (173.36.7.15) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Mon, 21 Sep 2020 04:03:41 -0500
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-aln-001.cisco.com
 (173.37.135.118) with Microsoft SMTP Server (TLS) id 15.0.1497.2;
 Mon, 21 Sep 2020 04:03:40 -0500
Received: from NAM11-CO1-obe.outbound.protection.outlook.com (64.101.32.56) by
 xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server
 (TLS) id
 15.0.1497.2 via Frontend Transport; Mon, 21 Sep 2020 05:03:41 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=Qmcs4R7LRNvwudCpZLa7COirFzuQkukY9nvGLwK7qg9kBY7Ml55/fQ5YdMnSAQFfhfjNBdGIm+t3n9HJwBqf8Ctij1hzBnEpoKsnykaltVM06YFvF39IYuTkbnfEj4B88iu6ntEehhl5znHvHFdzlCo8UGAVmSrQ1LBkGAAMnyQakxK5v4A8AsyqdAoexiZyOs9Hyd0Qp9ePIRGtsv1g+SS1ByfHmVtpLk1+/vw8lodBSJ3UVWxN41ZSrKV2pq82cayAx1H8a7JGjyJjYMMgEfKHvfgS9dkkURbcIdn85gAX++xvQdogF2jk28lwdjwmgQQRj4VdiC5dhPRAkt1zCg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=64B9a5JLRnX0VPaBUr9IrEPmNhkNH859J601lsg6/Jw=;
 b=cuwpJWwcNqY8i09Ps5B+CF4py3E8IBMm+7mrZz4/H8uRuOqXI61aGVTZn3f05Cbnjw9DKSUR8KBNRPu45iDtxYBUgiEFKLCqzJT9nHqmJ6dxD5Kr8AdcFeDAxt/u5pA3eGUWnN+3EmqReJvFyQbqTDxfw8yatleRGDRftFhucqRAxIhaWeRsv2qTpO9fUY9AxqOCvuINyPJrwMUi2zDCGQQvfBfQnglXBDICVr6yJFD6rl22/QxfvtXGuiY4wWtIXLNGkx1/CvrkOPhPp1+L8CizHnh1LFAFfrOIIEzUBwHTBeItrZbthaK/UWRS3krxT/rRhN8eowFFwnCBPhqQ1A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com;
 dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; 
 s=selector2-cisco-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=64B9a5JLRnX0VPaBUr9IrEPmNhkNH859J601lsg6/Jw=;
 b=dmD9TJwdomf0/6zopq3xrLSFC3uwuxQOKwEZNk73CBPIFlTj2poB+2TRwDPYWqaGutfhOrznrJMt6NwPz1YteEGqoSTw3ZJdP+u3ltVvIaC6k2NiOKgOSexrUdpPbEkPBrmB1g/VVWAnxD0VW1BTiQvi4v8fGYgWgepFgbuRGKU=
Received: from BYAPR11MB3574.namprd11.prod.outlook.com (2603:10b6:a03:b1::27)
 by BYAPR11MB3639.namprd11.prod.outlook.com (2603:10b6:a03:f6::20)
 with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.11; Mon, 21 Sep
 2020 09:03:40 +0000
Received: from BYAPR11MB3574.namprd11.prod.outlook.com
 ([fe80::4867:90f:9395:d432]) by BYAPR11MB3574.namprd11.prod.outlook.com
 ([fe80::4867:90f:9395:d432%5]) with mapi id 15.20.3391.024; Mon, 21 Sep 2020
 09:03:40 +0000
From: "Jakub Grajciar -X (jgrajcia - PANTHEON TECH SRO at Cisco)"
 <jgrajcia@cisco.com>
To: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>, Phil Yang
 <Phil.Yang@arm.com>, "dev@dpdk.org" <dev@dpdk.org>
CC: Ruifeng Wang <Ruifeng.Wang@arm.com>, nd <nd@arm.com>, nd <nd@arm.com>
Thread-Topic: [PATCH] net/memif: relax barrier for zero copy path
Thread-Index: AQHWh/3EnG2VG7V/bUCs7pX4TLuPnKlvC/CAgAPLw9A=
Date: Mon, 21 Sep 2020 09:03:38 +0000
Message-ID: <BYAPR11MB357473BBBD50761A5A2CB14ADF3A0@BYAPR11MB3574.namprd11.prod.outlook.com>
References: <1599802699-20876-1-git-send-email-phil.yang@arm.com>
 <DBAPR08MB58147786175DFB215241EF2B983F0@DBAPR08MB5814.eurprd08.prod.outlook.com>
In-Reply-To: <DBAPR08MB58147786175DFB215241EF2B983F0@DBAPR08MB5814.eurprd08.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
authentication-results: arm.com; dkim=none (message not signed)
 header.d=none;arm.com; dmarc=none action=none header.from=cisco.com;
x-originating-ip: [81.89.53.154]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: e74d08a0-3fc3-4339-b3ae-08d85e0d3bb1
x-ms-traffictypediagnostic: BYAPR11MB3639:
x-microsoft-antispam-prvs: <BYAPR11MB36396310A47D1A1BF90A3B9BDF3A0@BYAPR11MB3639.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:7691;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: N3GLVxkVtabnhrHFId8kQLA2ZMbRR1EW2tO8pu6eXBhOegZbV2nUxy+M29Qv4xkFukdsqUWzU4U2nUrF86QIdRyIymXl/KE1/zDMZdr3iOvQQVA/jWqNJiG6UXefgJ03txIa6gCV860FxbvCnASOlFwom+nak/cqLks/ixwh7pIZ2MH5fR1Yhjkqe3sMEfCiD+otCXnuzXwV4ZDy0e3ILdA58LaB4JLyc8SxgM7/+rUlkAw+PsSBYMUEivQKzmJ2D8W6YGqt7a2VNzfkzNx859xkSgR/m/0gaJGR9laAYaJCTwk/KGOzB6Xs9HNDsSMOPjq2G7zViN5EdlTGNl5WUA==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:BYAPR11MB3574.namprd11.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(39860400002)(136003)(376002)(346002)(366004)(396003)(64756008)(66446008)(26005)(6506007)(66476007)(66946007)(110136005)(478600001)(66556008)(4326008)(71200400001)(53546011)(76116006)(2906002)(186003)(54906003)(8936002)(316002)(86362001)(7696005)(9686003)(5660300002)(8676002)(33656002)(52536014)(83380400001)(55016002);
 DIR:OUT; SFP:1101; 
x-ms-exchange-antispam-messagedata: LifaLE0cLWWqoHDLkB3XY0bG22un9vM29extjuOg5+oz8GWfjbXWx466UHS4wGZOqu4Wfj4wRpxI8x9PtSUlpbGzvGZo/izCHgYm2tBG7nI5dGAn9FSeb8pXngku30KQHKB9qRLQhdatkdk9iPscKL/zydU2AYInGhPaYyH4q7Ok6sphBBx417DbTDE03p10GPlVcmOqbDE73WTALOTGA4frOvwfDiDKzhBYyEOhkIDQc0QNkp/5dMeqHnGPsfhsbw987B45JQnEIwhQ/LMu7xAQNScEVbQR/36jMuR5MrZmtqZJLg8xGU6sKopJ2z1pBydZ/e1eaDV8/lUlLx7f+3Znpnh6Sv73hfpDcAoGdeylF6lF0U7FA9ygja68ohpMH6/w3xTz/jFgHAiSkI1o5nupN3AXPFJNl5t2TD8cwX2YpuH8K9Kr+nX9YQDf1HALjp576XGryJYKfngBWiI+gj3eTcHNaFvhlwEY632cvHjEyvPqsctLRy/1jSOZ8kuqlAJ+dKDGGIoSD5iCtsvOKDc2Jcrt9hnLcH3S+fETkD1HPpKKiiCNj6EqTTEw3mUwiHEKjKxtwxWKA12T0d63vzRyiUEo1g3XQtbIRw3XSAE8grAeK6qO5OrzjXNK21OsLGNPPCcFRoxW6dRYsPTY7Q==
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3574.namprd11.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e74d08a0-3fc3-4339-b3ae-08d85e0d3bb1
X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Sep 2020 09:03:40.0343 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: h0KG3wYpB2MZQKtbZHc4I2O2Ivu/2/s7abVOk1skXLhyfIoJiwmn1mFH6pLRJP20hPmyk2Ro5VfZxFz9NoWLdQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3639
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.36.7.15, xch-aln-005.cisco.com
X-Outbound-Node: rcdn-core-2.cisco.com
Subject: Re: [dpdk-dev] [PATCH] net/memif: relax barrier for zero copy path
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>

Hi Honnappa,

Inline comments...

> -----Original Message-----
> From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
> Sent: Saturday, September 19, 2020 12:49 AM
> To: Phil Yang <Phil.Yang@arm.com>; Jakub Grajciar -X (jgrajcia - PANTHEON
> TECH SRO at Cisco) <jgrajcia@cisco.com>; dev@dpdk.org
> Cc: Ruifeng Wang <Ruifeng.Wang@arm.com>; nd <nd@arm.com>; Honnappa
> Nagarahalli <Honnappa.Nagarahalli@arm.com>; nd <nd@arm.com>
> Subject: RE: [PATCH] net/memif: relax barrier for zero copy path
>=20
> Hi Jakub,
> 	I am trying to review this patch. I am having difficulty in understandin=
g
> the implementation for the queue/ring, appreciate if you could help me
> understand the logic.

'ring' refers to a ring buffer holding packet descriptors. These descriptor=
s hold metadata about the packet (packet buffer address, length, etc..).
'queues' are a representation of rings and buffers  (+ some metadata). In m=
ore detail, one ring (S2M) and packet buffers allocated for this ring would=
 be represented as 'tx queue' for the slave and 'rx queue' for the master.

>=20
> 1) The S2M queues - are used to send packets from slave to master. My
> understanding is that, the slave thread would call 'eth_memif_tx_zc' and =
the
> master thread would call 'eth_memif_rx_zc'. Is this correct?
> 2) The M2S queues - are used to send packets from master to slave. Here t=
he
> slave thread would call 'eth_memif_rx_zc' and the master thread would cal=
l
> 'eth_memif_tx_zc'. Is this correct?

This is inded correct.

>=20
> Thank you,
> Honnappa
>=20
> > -----Original Message-----
> > From: Phil Yang <phil.yang@arm.com>
> > Sent: Friday, September 11, 2020 12:38 AM
> > To: jgrajcia@cisco.com; dev@dpdk.org
> > Cc: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>; Ruifeng Wang
> > <Ruifeng.Wang@arm.com>; nd <nd@arm.com>
> > Subject: [PATCH] net/memif: relax barrier for zero copy path
> >
> > Using 'rte_mb' to synchronize the shared ring head/tail between
> > producer and consumer will stall the pipeline and damage performance
> > on the weak memory model platforms, such like aarch64.
> >
> > Relax the expensive barrier with c11 atomic with explicit memory
> > ordering can improve 3.6% performance on throughput.

My question here is: `rte_mb` is supposed to make sure that head/tail point=
er are not updated before the packets are written into shared memory. Does =
the atomic ensures that the packets are written into shared memory before h=
ead/tail pointers are updated?