From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3B21D428D4; Wed, 5 Apr 2023 17:49:58 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id C513A41156; Wed, 5 Apr 2023 17:49:57 +0200 (CEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2074.outbound.protection.outlook.com [40.107.21.74]) by mails.dpdk.org (Postfix) with ESMTP id 43F7E41153 for ; Wed, 5 Apr 2023 17:49:56 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0GucFLvmWmMADfVzBRMGWKgzmxaRyQEPm2s/cjo5m+s=; b=uMCyhAFavWGgv/ymhbgBxpoj8ElpyB+7ZWy3rN5Hrw1MLxZ27WGbpsLypT6SYTUw0Hi34fPR+x4vzW68Ua1ws8vaEUEmPX7TRnjUmSQa9Oljjs3vW8VWJB/ZW+dxQtNbRMjiEqjVtrNtuf9eHmjBd57yQ7GVKruiLRzqmhqb4Fk= Received: from DB6P195CA0015.EURP195.PROD.OUTLOOK.COM (2603:10a6:4:cb::25) by GV2PR08MB9230.eurprd08.prod.outlook.com (2603:10a6:150:d9::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.33; Wed, 5 Apr 2023 15:49:54 +0000 Received: from DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:cb:cafe::96) by DB6P195CA0015.outlook.office365.com (2603:10a6:4:cb::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.37 via Frontend Transport; Wed, 5 Apr 2023 15:49:54 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DBAEUR03FT020.mail.protection.outlook.com (100.127.143.27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6277.30 via Frontend Transport; Wed, 5 Apr 2023 15:49:53 +0000 Received: ("Tessian outbound 5154e9d36775:v136"); Wed, 05 Apr 2023 15:49:53 +0000 X-CR-MTA-TID: 64aa7808 Received: from d3c069da2d9e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id D5A580E7-5E72-48E7-8644-CFE919EE98B2.1; Wed, 05 Apr 2023 15:49:47 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id d3c069da2d9e.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 05 Apr 2023 15:49:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=n7nvjOKVuD39noJKjH69BgGZIcDySnAWilWqZu3yYs9X4+QryR5DayJjncSJuAbthUzJLFKpBkK6XWXJ1FJmmC0U085RnK8LnsUvxuwMU5oKK1t2vHRLeH9XfUiTe1d4nILa5H7GGq18lhhpXnxuFmLhouU4I3kQ1HaV4zJeZUf0tPSxwKS8BTSTBJV4rgH5C+IMtXxexgLKnL7tFu+rcs3mBhQv7X++ty0IfmykkHrt+Xufns3zyzIbU4rpv3c6tbfC38jJOkgLy9XaBDGxhtZ7r1VM5UyRWKLQJ8NSBa7AmUeL+eMB5fJcBz54EFcPooaRA/mDeCJx+mG1isJqqw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0GucFLvmWmMADfVzBRMGWKgzmxaRyQEPm2s/cjo5m+s=; b=T6tDppuwNDVcxdUcF4B+tbHZdKdO1WXCcQKgAKgKXEVKnChGbUkisd7TVGczRE1UT5QoUGE7/n6A1vHESwLbY/ohPATyFbk+/myTehmyqiJpUfpOOfCEvApkRhdg+3hSbgIZY1qxGzBcr//plAHssDnH3yTxzSGc2bKKaHtsFZuKN8dVmmjEGVtvucE0oHTsJL0i95h8Mv6UQChNRXINu8js1ZRPLUkjADYBWfr952pqQNyVDs2jYj4aCpe/mUkJ+mlA9ReBdvwdlg7NjtYKrlTm28bDWq4rH6nhMic21oTu8kwTbrVBKM4d7kfxCxdAapSP2FUdjUuzyKmp3Oad5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0GucFLvmWmMADfVzBRMGWKgzmxaRyQEPm2s/cjo5m+s=; b=uMCyhAFavWGgv/ymhbgBxpoj8ElpyB+7ZWy3rN5Hrw1MLxZ27WGbpsLypT6SYTUw0Hi34fPR+x4vzW68Ua1ws8vaEUEmPX7TRnjUmSQa9Oljjs3vW8VWJB/ZW+dxQtNbRMjiEqjVtrNtuf9eHmjBd57yQ7GVKruiLRzqmhqb4Fk= Received: from DBAPR08MB5814.eurprd08.prod.outlook.com (2603:10a6:10:1b1::6) by VE1PR08MB5823.eurprd08.prod.outlook.com (2603:10a6:800:1a5::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6254.35; Wed, 5 Apr 2023 15:49:43 +0000 Received: from DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::11e6:9bd8:f4e9:7bbb]) by DBAPR08MB5814.eurprd08.prod.outlook.com ([fe80::11e6:9bd8:f4e9:7bbb%6]) with mapi id 15.20.6254.033; Wed, 5 Apr 2023 15:49:43 +0000 From: Honnappa Nagarahalli To: "Sexton, Rory" , "konstantin.v.ananyev@yandex.ru" CC: "dev@dpdk.org" , nd , nd Subject: RE: [RFC 0/1] ring: add callback infrastructire to ring library Thread-Topic: [RFC 0/1] ring: add callback infrastructire to ring library Thread-Index: AQHZXXvqlDrEbvyWVUWKEqZXZX5skK8b8mTAgADs8ICAABFNUA== Date: Wed, 5 Apr 2023 15:49:43 +0000 Message-ID: References: <20230323113743.4086730-1-rory.sexton@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 1055A8C48D5CE245B505A18A60C2D7EC.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: DBAPR08MB5814:EE_|VE1PR08MB5823:EE_|DBAEUR03FT020:EE_|GV2PR08MB9230:EE_ X-MS-Office365-Filtering-Correlation-Id: 422f6058-1d3e-459b-6cbe-08db35ed661f x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: gbHQpTbqd48PNEV0EGefayEMYoz8wqW3vH2dmpnrimBCRWImO5T8TYQ1DCoqkcPnio8OqSYK6L8UH1DgtrS0x9y92MzWyDw0ROFZKMEjSb599MfiCD4lLYEPZMh6sXd1DLP7aN060I3cOARrSTw9YcY5FDNcJfSeQZbcs2wYZWpFLfHAMMyGoEae43h+IPH8NfzPKBqCOfix1+yCz6hpwKtA2yRFm6zTbZF9TKFguedrdL7Ibk/EYUzk/UMR40FQTAYT3bfVmxdkLRV0zG/Tfw+pRTq8cfyYU3TWBapXe3T1VLl/SHzBgL9t4DMBsvkzvl47y/R1EO5hQQTuxKkssBqqmvuERFkhzJPKPHOf3QkcV2MTSS6sFmYD96MHX/Y2Y7ZQysF0EBWf6aKw1gMPr9iezyCPuK4lIlYQdRSXKs45BeNJ6VAhzilfw3ALoXR1eDm8OgzqsIUATFrAE6AMp8/59leBt8M12NlZEBvlE8rET26DaRbvoXPEImSNp3E1ys2OaiA36yxhvpHvr89Ka+2HBm0gbYamnKbAf8j2/PCgVcZ8O/L+fKVwA9gJdyhDsGMsLcCs/Mq8aPDdDy7fx2KkeYh74mYZ4xKt2kwrL3wS8mWTE7PKOgQuROrbcDEP4bPy482jBc2VFBziV2bxpw== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DBAPR08MB5814.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(376002)(396003)(366004)(346002)(136003)(39850400004)(451199021)(38070700005)(66556008)(54906003)(71200400001)(41300700001)(66476007)(66946007)(76116006)(64756008)(8676002)(110136005)(66446008)(7696005)(478600001)(316002)(86362001)(4326008)(9686003)(55016003)(53546011)(6506007)(186003)(38100700002)(83380400001)(122000001)(2906002)(33656002)(5660300002)(8936002)(52536014)(23180200003); DIR:OUT; SFP:1101; Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5823 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 971747ec-7c05-4c16-e82a-08db35ed5f9d X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jHjQAy6CmdDeGWwYR4RLrG5R3f+/BdfI6MrdQecNfRTtgqb4NhzuTKau5W9A4VvMjyzQp8zTya9pPkZKC4i9x3F/n44Ih6QgqiTzThKvqyrrgyhAxskhafsX5ErfBkqfWdgVDsZzEAadutONTES/XYS5zYtA7UCz1pgIIEi5ep5yWbOaDoKHHQJEjM4SUUW3mxDx0WgV1UgMMVEToMo4hHDnOAKcps92CYAP60L+KLq+Wln90WDSZtdCwG7H0k4yg51NL9rSwh3gTsxE2SE5HQNfUoKuJKbsgwIDn7ZcnwJP7+xFqduf/lfSlA13wt6/W22mvmg/89DMlmCpQwFf4wgdleBqcriT8/G4fq5GfM4w9KXYDMKtEwNsL26agyz2H7er4tGFC0G8ubZK1QNiCFcjasYcw0qk58aQMA+3Yh2WXuhnoLwSLbD8air3S6R8AreqwVWcBpAu/ruFqXXl/q+PeIVe8lMzpwFSWFNiWjrHlpc8AP/B/a/MP9fpvOGmyN9QCpuAMKYbR+YBleFwko0kvcYb0ABM5iDqJvOnAGTwdfOqlvK3i6BMI6wrl97+O73SsXXGPKK9yLvNh1XVlF1EJ9TgbItPuZcF+PI5MuUkAgFZipr5vp646/y82i8BPMG/c9yFEI8wLEqrRVQS7V56xulyAmyr+WIUJXIwyl23tdOmIGt+eUH9g6nCJDsExNwF4dh6IuG9QcxYw7PLMkNpKQDM4aW2y8tmHXLFezA= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230028)(4636009)(39860400002)(376002)(346002)(136003)(396003)(451199021)(46966006)(40470700004)(36840700001)(86362001)(82310400005)(33656002)(2906002)(7696005)(40480700001)(55016003)(47076005)(336012)(186003)(53546011)(9686003)(6506007)(83380400001)(26005)(316002)(8676002)(70586007)(70206006)(82740400003)(36860700001)(4326008)(478600001)(40460700003)(5660300002)(356005)(81166007)(54906003)(8936002)(110136005)(41300700001)(52536014)(23180200003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Apr 2023 15:49:53.9913 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 422f6058-1d3e-459b-6cbe-08db35ed661f X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DBAEUR03FT020.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB9230 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org >=20 > Hi Honnappa, >=20 > Responses inline. > I will continue with an initial implementation of this feature and captur= e > performance data as suggested. >=20 > Rgds, > Rory >=20 > > -----Original Message----- > > From: Honnappa Nagarahalli > > Sent: Wednesday, April 5, 2023 1:46 AM > > To: Sexton, Rory ; > > konstantin.v.ananyev@yandex.ru > > Cc: dev@dpdk.org; nd ; nd > > Subject: RE: [RFC 0/1] ring: add callback infrastructire to ring > > library > > > > Hi Roxy, Sincere apologies for spelling your name incorrectly. > > Thanks for the work, few questions inline. > > > > > -----Original Message----- > > > From: Rory Sexton > > > Sent: Thursday, March 23, 2023 6:38 AM > > > To: Honnappa Nagarahalli ; > > > konstantin.v.ananyev@yandex.ru > > > Cc: dev@dpdk.org; Rory Sexton > > > Subject: [RFC 0/1] ring: add callback infrastructire to ring library > > > > > > This is an RFC proposing the addition of a callback infrastructure > > > to the ring library, particularly in the ring dequeue functions, but > > > they could also be added to the enqueue functions if desired. > > > > > > Callbacks in the ring dequeue functions would be beneficial for a > > > number of reasons including but not limited to the following: > > > - would allow users to register specific functions to be called on de= queue > of a > > > ring avoiding the need to call the function within application code= on > several > > > threads reading from said ring. > > I do not completely understand the 'avoiding the need to call the funct= ion > within application code on several threads reading from said ring'. > Irrespective of where the feature is implemented (either in ring library = or the > application), the call back function will be called on all the threads th= at > receive from this queue. > I just mean the callback infrastructure would handle the call back functi= on > rather than developer needing to call their implemented function explicit= ly Thanks for clarifying >=20 > > >=20 > > > > > > > > The addition of callbacks wouldn't impact the reading of rings by > > > more than 1 cycle when no callbacks are registered. They could also > > > additionally be compiled in/out as desired to give more confidence > > > in maintaining performance when callbacks are not required. > > I would prefer to keep this feature on always as maintenance is easier.= But, I > think we should make that decision only after we have performance data. I= s it > possible to provide some performance data with this feature on but no > callbacks registered? > Agreed that keeping the feature always on would be easier long-term. > I can capture performance data with the feature on but no callbacks > registered. > We can base the final implementation with that data in mind. Ack