From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80074.outbound.protection.outlook.com [40.107.8.74]) by dpdk.org (Postfix) with ESMTP id B30DE1B399 for ; Wed, 24 Apr 2019 12:12:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9eBx9S8NBXLiYkEK0/Hrgw/fwzmR7PAx9wmgPUhv0/o=; b=rY3xiYlmb2wff5Lqd4KG1iABpyXOXNuiKP2VYyUjNpUPLoWnymeRPEfu0au0LA5G2dkHSYqs+KEIVUx7vmCTpYnnw675annKv68MMAS9qrYVIbQoyeZXr2Yi7ZQULsFf2d8+S1SrKXw2ockkg1X0VA54+mWMPMHHbqSm6uP8/b4= Received: from AM0PR08MB4418.eurprd08.prod.outlook.com (20.179.35.207) by AM0PR08MB4242.eurprd08.prod.outlook.com (20.179.36.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1835.12; Wed, 24 Apr 2019 10:12:17 +0000 Received: from AM0PR08MB4418.eurprd08.prod.outlook.com ([fe80::21aa:85a4:d79:8f94]) by AM0PR08MB4418.eurprd08.prod.outlook.com ([fe80::21aa:85a4:d79:8f94%5]) with mapi id 15.20.1813.017; Wed, 24 Apr 2019 10:12:17 +0000 From: "Ruifeng Wang (Arm Technology China)" To: Honnappa Nagarahalli , "konstantin.ananyev@intel.com" , "stephen@networkplumber.org" , "paulmck@linux.ibm.com" , "marko.kovacevic@intel.com" , "dev@dpdk.org" CC: Honnappa Nagarahalli , "Gavin Hu (Arm Technology China)" , Dharmik Thakkar , Malvika Gupta , nd Thread-Topic: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation Thread-Index: AQHU+Y7Th+SsNtJeTUOHJF4AoiLi66ZLGGXA Date: Wed, 24 Apr 2019 10:12:17 +0000 Message-ID: References: <20181122033055.3431-1-honnappa.nagarahalli@arm.com> <20190423043130.18153-1-honnappa.nagarahalli@arm.com> <20190423043130.18153-4-honnappa.nagarahalli@arm.com> In-Reply-To: <20190423043130.18153-4-honnappa.nagarahalli@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ruifeng.Wang@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7c3d1d3b-ef14-4ada-d35f-08d6c89d54ca x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600141)(711020)(4605104)(4618075)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:AM0PR08MB4242; x-ms-traffictypediagnostic: AM0PR08MB4242: nodisclaimer: True x-microsoft-antispam-prvs: x-forefront-prvs: 00179089FD x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(366004)(136003)(346002)(396003)(39860400002)(199004)(189003)(13464003)(478600001)(52536014)(3846002)(14454004)(6116002)(72206003)(33656002)(55016002)(305945005)(9686003)(2906002)(74316002)(68736007)(7736002)(55236004)(5660300002)(316002)(53936002)(25786009)(6246003)(76176011)(102836004)(53546011)(6506007)(476003)(110136005)(11346002)(446003)(26005)(486006)(66066001)(54906003)(186003)(4326008)(99286004)(8676002)(97736004)(14444005)(256004)(8936002)(86362001)(81156014)(71190400001)(7696005)(229853002)(71200400001)(81166006)(2501003)(6436002)(64756008)(66446008)(66556008)(66476007)(73956011)(66946007)(2201001)(76116006); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB4242; H:AM0PR08MB4418.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: q23GqN/jkreFEyMVdvksHjV36qx+40A+XHab2TDmnqS5nXELOWxC8Bl/im2XxsDWyCClACSMzrSIclgSpWzEkmw7649UBqyW4OPHc7SNGhfLqyAiI8aCSBGxgvOt+Ox6FBDjL7LEKnu3YBhPbfbyCtuFtEf1stNA9pEEMkdzMCERMS48yqFazNkkslWHBdzo7xH+ItltD2XKB/ZHgqMYg9FEcGCykkvs9MGZwnk9YvthrOKLoEmGKazyGytlNLviICI5VyHFTEQbxhLHK01szCgqOKZK0wod4hUG/txjVITh28NRf4+c2D4Wqlwf+77bqF14eTl2drd/68JfI4HLl6QrBQUjrau4DfBJociYEkFxNZRwaw+e2r1CFPVnPnhb/BpWJhxMV7tCVVwiCEjv2+wEf8zpM7u+ilJ9MokOFaI= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7c3d1d3b-ef14-4ada-d35f-08d6c89d54ca X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Apr 2019 10:12:17.6702 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4242 Subject: Re: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation 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: , X-List-Received-Date: Wed, 24 Apr 2019 10:12:19 -0000 Hi Honnappa, > -----Original Message----- > From: dev On Behalf Of Honnappa Nagarahalli > Sent: Tuesday, April 23, 2019 12:32 > To: konstantin.ananyev@intel.com; stephen@networkplumber.org; > paulmck@linux.ibm.com; marko.kovacevic@intel.com; dev@dpdk.org > Cc: Honnappa Nagarahalli ; Gavin Hu (Arm > Technology China) ; Dharmik Thakkar > ; Malvika Gupta > Subject: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation >=20 *snip* > +Let us consider the following diagram: > + > +.. figure:: img/rcu_general_info.* > + > + > +As shown, reader thread 1 accesses data structures D1 and D2. When it > +is accessing D1, if the writer has to remove an element from D1, the > +writer cannot free the memory associated with that element immediately. > +The writer can return the memory to the allocator only after the reader > +stops referencing D1. In other words, reader thread RT1 has to enter a > +quiescent state. > + > +Similarly, since reader thread 2 is also accessing D1, writer has to > +wait till thread 2 enters quiescent state as well. > + > +However, the writer does not need to wait for reader thread 3 to enter > +quiescent state. Reader thread 3 was not accessing D1 when the delete > +operation happened. So, reader thread 1 will not have a reference to ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ thread 3 ? > +the deleted entry. > + *snip* From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id B2CE5A05D3 for ; Wed, 24 Apr 2019 12:12:21 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id BB1101B4E0; Wed, 24 Apr 2019 12:12:20 +0200 (CEST) Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-eopbgr80074.outbound.protection.outlook.com [40.107.8.74]) by dpdk.org (Postfix) with ESMTP id B30DE1B399 for ; Wed, 24 Apr 2019 12:12:19 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector1-arm-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9eBx9S8NBXLiYkEK0/Hrgw/fwzmR7PAx9wmgPUhv0/o=; b=rY3xiYlmb2wff5Lqd4KG1iABpyXOXNuiKP2VYyUjNpUPLoWnymeRPEfu0au0LA5G2dkHSYqs+KEIVUx7vmCTpYnnw675annKv68MMAS9qrYVIbQoyeZXr2Yi7ZQULsFf2d8+S1SrKXw2ockkg1X0VA54+mWMPMHHbqSm6uP8/b4= Received: from AM0PR08MB4418.eurprd08.prod.outlook.com (20.179.35.207) by AM0PR08MB4242.eurprd08.prod.outlook.com (20.179.36.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1835.12; Wed, 24 Apr 2019 10:12:17 +0000 Received: from AM0PR08MB4418.eurprd08.prod.outlook.com ([fe80::21aa:85a4:d79:8f94]) by AM0PR08MB4418.eurprd08.prod.outlook.com ([fe80::21aa:85a4:d79:8f94%5]) with mapi id 15.20.1813.017; Wed, 24 Apr 2019 10:12:17 +0000 From: "Ruifeng Wang (Arm Technology China)" To: Honnappa Nagarahalli , "konstantin.ananyev@intel.com" , "stephen@networkplumber.org" , "paulmck@linux.ibm.com" , "marko.kovacevic@intel.com" , "dev@dpdk.org" CC: Honnappa Nagarahalli , "Gavin Hu (Arm Technology China)" , Dharmik Thakkar , Malvika Gupta , nd Thread-Topic: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation Thread-Index: AQHU+Y7Th+SsNtJeTUOHJF4AoiLi66ZLGGXA Date: Wed, 24 Apr 2019 10:12:17 +0000 Message-ID: References: <20181122033055.3431-1-honnappa.nagarahalli@arm.com> <20190423043130.18153-1-honnappa.nagarahalli@arm.com> <20190423043130.18153-4-honnappa.nagarahalli@arm.com> In-Reply-To: <20190423043130.18153-4-honnappa.nagarahalli@arm.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Ruifeng.Wang@arm.com; x-originating-ip: [113.29.88.7] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7c3d1d3b-ef14-4ada-d35f-08d6c89d54ca x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600141)(711020)(4605104)(4618075)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:AM0PR08MB4242; x-ms-traffictypediagnostic: AM0PR08MB4242: nodisclaimer: True x-microsoft-antispam-prvs: x-forefront-prvs: 00179089FD x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(376002)(366004)(136003)(346002)(396003)(39860400002)(199004)(189003)(13464003)(478600001)(52536014)(3846002)(14454004)(6116002)(72206003)(33656002)(55016002)(305945005)(9686003)(2906002)(74316002)(68736007)(7736002)(55236004)(5660300002)(316002)(53936002)(25786009)(6246003)(76176011)(102836004)(53546011)(6506007)(476003)(110136005)(11346002)(446003)(26005)(486006)(66066001)(54906003)(186003)(4326008)(99286004)(8676002)(97736004)(14444005)(256004)(8936002)(86362001)(81156014)(71190400001)(7696005)(229853002)(71200400001)(81166006)(2501003)(6436002)(64756008)(66446008)(66556008)(66476007)(73956011)(66946007)(2201001)(76116006); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR08MB4242; H:AM0PR08MB4418.eurprd08.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: q23GqN/jkreFEyMVdvksHjV36qx+40A+XHab2TDmnqS5nXELOWxC8Bl/im2XxsDWyCClACSMzrSIclgSpWzEkmw7649UBqyW4OPHc7SNGhfLqyAiI8aCSBGxgvOt+Ox6FBDjL7LEKnu3YBhPbfbyCtuFtEf1stNA9pEEMkdzMCERMS48yqFazNkkslWHBdzo7xH+ItltD2XKB/ZHgqMYg9FEcGCykkvs9MGZwnk9YvthrOKLoEmGKazyGytlNLviICI5VyHFTEQbxhLHK01szCgqOKZK0wod4hUG/txjVITh28NRf4+c2D4Wqlwf+77bqF14eTl2drd/68JfI4HLl6QrBQUjrau4DfBJociYEkFxNZRwaw+e2r1CFPVnPnhb/BpWJhxMV7tCVVwiCEjv2+wEf8zpM7u+ilJ9MokOFaI= Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7c3d1d3b-ef14-4ada-d35f-08d6c89d54ca X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Apr 2019 10:12:17.6702 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR08MB4242 Subject: Re: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation 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" Message-ID: <20190424101217.yQ2-bS3LeJ5H-VIbP8kPEapZdgMd6vgqGWSgkacq5zE@z> Hi Honnappa, > -----Original Message----- > From: dev On Behalf Of Honnappa Nagarahalli > Sent: Tuesday, April 23, 2019 12:32 > To: konstantin.ananyev@intel.com; stephen@networkplumber.org; > paulmck@linux.ibm.com; marko.kovacevic@intel.com; dev@dpdk.org > Cc: Honnappa Nagarahalli ; Gavin Hu (Arm > Technology China) ; Dharmik Thakkar > ; Malvika Gupta > Subject: [dpdk-dev] [PATCH v7 3/3] doc/rcu: add lib_rcu documentation >=20 *snip* > +Let us consider the following diagram: > + > +.. figure:: img/rcu_general_info.* > + > + > +As shown, reader thread 1 accesses data structures D1 and D2. When it > +is accessing D1, if the writer has to remove an element from D1, the > +writer cannot free the memory associated with that element immediately. > +The writer can return the memory to the allocator only after the reader > +stops referencing D1. In other words, reader thread RT1 has to enter a > +quiescent state. > + > +Similarly, since reader thread 2 is also accessing D1, writer has to > +wait till thread 2 enters quiescent state as well. > + > +However, the writer does not need to wait for reader thread 3 to enter > +quiescent state. Reader thread 3 was not accessing D1 when the delete > +operation happened. So, reader thread 1 will not have a reference to ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ thread 3 ? > +the deleted entry. > + *snip*