From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <Jerin.JacobKollanukkaran@cavium.com>
Received: from NAM03-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam03on0053.outbound.protection.outlook.com [104.47.40.53])
 by dpdk.org (Postfix) with ESMTP id A8D1E1B392
 for <dev@dpdk.org>; Tue,  3 Oct 2017 16:37:36 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=ga/49lM6SDD2rz+hmIoSXL3H8DDKbjJUmDtu0TsnpP4=;
 b=enCdC4lri+gHJY2qDwaeboZK/P9ej6x1Au8NMDlMgZIFXoi2wo9CpXHOU2GU4nNOQnp4ztGJoXfuSzW3psHV1caa9ToKZbIojTkK10Q2bBNuEplmu/IT9kUEOJXJiEJFa9XtnbcuBM4hCabfiOBQqA982kPOKi15yKeT/stlF9I=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Jerin.JacobKollanukkaran@cavium.com; 
Received: from jerin (111.93.218.67) by
 BN3PR07MB2513.namprd07.prod.outlook.com (10.167.4.138) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
 15.20.77.7; Tue, 3 Oct 2017 14:37:30 +0000
Date: Tue, 3 Oct 2017 20:07:24 +0530
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
Cc: dev@dpdk.org, bruce.richardson@intel.com, harry.van.haaren@intel.com,
 hemant.agrawal@nxp.com, gage.ads@intel.com, nipun.gupta@nxp.com,
 narender.vangati@intel.com, nikhil.rao@intel.com,
 pbhagavatula@caviumnetworks.com, rsanford@akamai.com
Message-ID: <20171003143723.GB10493@jerin>
References: <20170817161104.24293-1-jerin.jacob@caviumnetworks.com>
 <1506093431-57588-1-git-send-email-erik.g.carrillo@intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <1506093431-57588-1-git-send-email-erik.g.carrillo@intel.com>
User-Agent: Mutt/1.9.1 (2017-09-22)
X-Originating-IP: [111.93.218.67]
X-ClientProxiedBy: CY4PR2201CA0023.namprd22.prod.outlook.com (10.171.208.161)
 To BN3PR07MB2513.namprd07.prod.outlook.com (10.167.4.138)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: acf8ba8f-31da-4337-e309-08d50a6c492b
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
 RULEID:(22001)(2017030254152)(2017052603199)(201703131423075)(201703031133081)(201702281549075);
 SRVR:BN3PR07MB2513; 
X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2513;
 3:SBVIKYWpHfOnon57BrBgjsfIG6gq1bk0QdfEpUiWESGufr8IP/upYVyL2EWP+iNWKB+0ohIKSoHtdWnu1zQl0BLZVXKCZlEalAQv/CDN+W/4lFzetmbUVCTwgRyv3BbGWI8QEX29xEIFWiPerQipwSyL+0zoPy6RGDhNm+kapKfEwsltaTbDwi8Vvs7onMBdKWKzuTruDssMMrOGHd0k136rJVHfHfN0vjBZeSR+j13OJRCFV99ID2Wrtti4Xefh;
 25:yn+qsayDLpOAukq2dxhM9ZFESKMj1Gje94Z45EmgmDEBoofx3oARSci9u2C7HqcoACut7XAp/y69LdgNnmV5z94yhDekEQBxLM+IbBPYzv+sKk0BZ5sUrxgfHjjSo+mCrylgSx4/WGH6U4ualqyEPxNGPgzOBn21lVMVtJhcglILb6QEC47g7mbjORc93jJWTQK8eWIcBCJ1jehoZxpZdtSRbqJv5AJFiRICjBs8kuhSPXyCpNVR8V0eFB19eHt2VYqXvrAOlYQyJ86hqST08DSSowoXwJ4QdTEBcNPS7cQFVaMdiN/k88gaRl2MimkNWKQbThnNio1IzROxcsYHRw==;
 31:Tkfm0e8e786xMklZRCC2wvkKb6rgcNP9Rrt5DO3pSasNqmGvhy6JgNZr9xYGW52acNcQzz3r5WFifDZgim7t2B9Z1+IMHSHdGKDsZFLyPa57gsuxPcTE6YLkNH4DH3eUt77SVVhJ1kmQ1SL1TFxuhlLfOjBgwkhznFXhLECnw+Dwprb/udbKCJ80z0V1GlOpjdCoRkseGjvdADBOuJ/IHr5A8bOpbjb/1vCtsOOqKQM=
X-MS-TrafficTypeDiagnostic: BN3PR07MB2513:
X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2513;
 20:ZbVNpMMAAIJ4Nx9PwW69847SmOen+5KjXwo8q0KqWlTs6SEdfRok+Hf83uh1ZQG2SVIrC8AtxSnIf10JzXzewHA+8XOvdv2WsTDduSaWbBPy3IfwIIVaizlGfJgI8YPm6wR0CLeDPc0sxj07PTD/yJGeIx4O2fFQZRxAUnHjzagno/07M9J6Jae9Pfqd/vB4KFwILLcoQ4YcbC8dEhrb4AZlskCNOBMMIA8O4Hz8iinlI6XjK29XGQC4kouPsryo6cL4lUDke5y65Z2L5M6bJa+LXrkIxqMo1y7KRYugMhvRWg7EjLZMDRV+M7NfaxPYMEMosWq230rtunYhnqcYK5C5JAofq3UbIxdv/TdG10SyNgsqPwPDsPpf0A+mdi/bixRLwBG0V9DYcOwCrFnCSenSBNq3u0KcLPPXEYh7aaxnG9L2KZ4kI+a7sFFFgIQopqG5u4MqR17XNg6sj8khbTaVkJTp/TtkLz7P1gzyQQdfrBHuow2DCm8Ye9hvz40oiGspr/rL8Sz0nSlOaMZZxfNPfgpSKu4odfXxdubMhAqtotpOZxtrsgeM9yCNWtvMZ9EIqB5OsZi86swRYHXTUQ9X0jcYtc/MbP1romE/nac=
X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(788757137089)(228905959029699); 
X-Microsoft-Antispam-PRVS: <BN3PR07MB2513EBCF60F13DB304E9C264E3720@BN3PR07MB2513.namprd07.prod.outlook.com>
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(93006095)(10201501046)(3002001)(100000703101)(100105400095)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);
 SRVR:BN3PR07MB2513; BCL:0; PCL:0;
 RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);
 SRVR:BN3PR07MB2513; 
X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2513;
 4:VULlfjCC5Y+rb1N7ZOl/jJKMtxKEGDXX3h6pH9swK/pZOyHVMK/nX7n66CsRY56rCDWAxIIdFdHESp1Vs+Kueu/9NpyBnNK8qM15sg3jNqj4EpmocGRuLBEgQljoTYknhikkiuZcohE2Ak/PPME/BcDC/mKi/AvI6r8KrVfu+l/q7nWjF01nmsIyQyYWpnmqJjxrrI58bJfKlYcMO1V9FjypaL/JhW8+FfW6My72gW4BQ0aUPKJqtyEsZouMXbM8It54KC1VJ8ySHmI4hFMsBL8pt8y/XzWnYcvONLbHI6/T4EZl5J7MSs+/7Pt44glHlWWnRhZqKssgPsY4TVheAzL3Rwq5B5mSawB2UOFY+H4=
X-Forefront-PRVS: 044968D9E1
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(6009001)(346002)(376002)(199003)(13464003)(189002)(76104003)(33656002)(50466002)(6666003)(316002)(1076002)(47776003)(3846002)(23726003)(6116002)(58126008)(16526017)(16586007)(2906002)(8656003)(229853002)(97736004)(25786009)(478600001)(189998001)(4326008)(72206003)(76176999)(5660300001)(6496005)(105586002)(8936002)(6916009)(42882006)(2950100002)(54356999)(7416002)(53936002)(305945005)(50986999)(6246003)(33716001)(68736007)(5009440100003)(66066001)(101416001)(81156014)(81166006)(83506001)(8676002)(55016002)(106356001)(9686003)(7736002)(18370500001)(217873001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR07MB2513; H:jerin; FPR:; SPF:None;
 PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
Received-SPF: None (protection.outlook.com: cavium.com does not designate
 permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR07MB2513;
 23:1YWngnFczKtom5ByL0OZK1/gCjtWIyunH4MHlw07G?=
 =?us-ascii?Q?eQc+57SUrcdWBpTVKwQOWJefBJleHgjX+CD+0i8uws1LGhMDsij+6yBWXREb?=
 =?us-ascii?Q?MLaezlWb+AecOzo7hM2bnPC/P4+xrmWNvhVMupp2ItoDCmIvYniI3+3Ar1is?=
 =?us-ascii?Q?+QkbyhGomxZn1ZPRGVVo8eASNhMn/8KRo3FHNMQ1y4ALLRpfj4uQlwKbl9eV?=
 =?us-ascii?Q?WIdENIE7LboWVarsjW+NxMSAtp9BPL3nEs2zDL8pxUPvHEH6xPEHOkZZ3Uep?=
 =?us-ascii?Q?0+vb8lPilGS5rNqCPby4LvkTq9tQ+oRo70GcVyG23Kz5NWj3zuscxUBFbGhK?=
 =?us-ascii?Q?R9f3PXGq22b4mFnktXWZyLrU62W6ewzQLfERL+ZrxlfxEqe4StCADLNZNZAl?=
 =?us-ascii?Q?btLKfsS2rXoNiI8UcCiB+Vf5GdhStsecU6E9q5PL/Srnc2+DgF8t6yLC/7Od?=
 =?us-ascii?Q?cZkHvOH0QzACHto+IJT9WXYBrn+0v9svbr6XLLgmIzFVx4+gZVYbU1qHanmd?=
 =?us-ascii?Q?iiFEtYoioW7gaXVp8i9FIPgH+9/KvQRTYRmw7tsWhN40rCcTusyKB1yT6+qp?=
 =?us-ascii?Q?y06EZ0s3gp3nBGGqtnRPENJ2dMyKkbbmE51tE8P5b7XLPmOdCopBYm9bVwN7?=
 =?us-ascii?Q?pxGUvIAt7BYb+1HsAO9TwjqYORhc5NmQ3bABGhXiWazE3caJ/KVfW8VyPmPR?=
 =?us-ascii?Q?07I53pdCHvwFH4WYTz5oqEHtHViA/B5xzbH2xuR7YcEMEhQvfQTbjZWPPLNd?=
 =?us-ascii?Q?LAB4FHXDdW+ZLSslKlmmDepbub4TIM0d3CoD/0wTmYVgiXgOKo2Th3yn3CBk?=
 =?us-ascii?Q?XFeT0GWMU0/FoKc72zUPtPD6oQ9Gi1nBDqOH32ZIZwXK5Gx/J/+mixFMuci7?=
 =?us-ascii?Q?1yICyLgDtMGq4JZu7a9obJEFSokB50JCofAzg3ZCjFThIcmHCgqFsjGRlHAG?=
 =?us-ascii?Q?syPIWBIfwg85Ib+22HqOCTv0V+6tBT0ymZGDWmNjv8KOoEXNb9E9kwc8+YmE?=
 =?us-ascii?Q?skdf909BG/dxmuWNjUM7gUlIeS4ZeFYMtWvSPdJr34ixbG1GtOtLVvtaGkxe?=
 =?us-ascii?Q?hjugCOEb4lElCTwdfhV7EV6X5bLWcOqbL+cWogqbvu0uXmUgvaQPYDPtA69K?=
 =?us-ascii?Q?UHP+PKvt8s5jua1cA+xS0ozBweoF/jmkLH1cEpaYp1rc6Xbw2cKGBEU2y7n0?=
 =?us-ascii?Q?4Kkg227PmKmH/Ky/+0VcRY+tV5b7EDvip1twHV8WkA9axeBzllVnQnTGRSaG?=
 =?us-ascii?Q?jiWxzmpm3Y/BKX16FCnQ3j8OPyg1GdFCgtU84Ci+DqDRBrS3npoRA+qn8CFl?=
 =?us-ascii?Q?WdB5mrTWHe2O696gp5DFns=3D?=
X-Microsoft-Exchange-Diagnostics: 1; BN3PR07MB2513;
 6:EVJq7PfAY5hVp4TH86qHS0f5MPhk5o8wvPMb9gBCu9JSPcxAVI+sqXEqyDHjTsgCBW2lnEavBeh7lmnX/4RIdZrlg4yn5YhVBu/7Urjwwgb/eLbDlBAK3+0LaUl6qOE052Lv7RbszEZwJPeoaD9zM47SzIM/3i+Yi12m21Gqp7aZqlxYJ8GV8wQqxEc7NYZUAikVvh4JrZR0ueFtwxXBXsOfvamV7tih3nVwUjK0xs4QpFgEMMkwYh0sWgdyE5Co/6Cv3zyfwShrCarVATyj5IwIGlea3Hd5hbq7ow3p1/Hr+lDQQmAXrMbibxij/qqsDVOpsPgCaItDz0xGNTKfhA==;
 5:jDExyKPA4k84qVx67iqIrg90I5k4W3VlJsNpFwNVQcnfBwia3PdLnSLGSBwNzz+GRMADH0k55tuNgjcOx6dghmwKUiK/Hcdbwn5PI1x1ARnKTFupA6UYWhQgwkQoOmCnvcQT4yWJSPmQ7hhAwEJYNiGs7uOcnJ15WkCGhnm14Qo=;
 24:Zt8RT82x9RiS2azx5CFrquce6eViqxLcplOZ3XcccOAHEQ3KttlPTHIf5b2XjCrsGdXEtP1MQh5TM+a4TUGTw0nJ4bw8oTPHmOtHnyXP53g=;
 7:wXXklGRQkgU+tNMV3ItXjca7mNhc+aPFDTYwC97to7SM7LqkGwue4NmKfM+L6xB/9t3fCBK20vlhuCll9d/u8ATZpYYcwwYB+IzRK3yU2igFi47dlIgABHeF6wwPq3BjJ2IwLOAUxrQDFwfVE8l1JijtcLOvivoYxYyz2YBrlQsQw6x72eQMfzHyhtSPOGxc/LxyxTNfSDMPQxAkhWHFyOjku30FBvKFjfezM9h0o98=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: caviumnetworks.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Oct 2017 14:37:30.2884 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR07MB2513
Subject: Re: [dpdk-dev] [RFC PATCH v2 0/1] eventtimer: introduce event timer
	adapter
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Tue, 03 Oct 2017 14:37:37 -0000

-----Original Message-----
> Date: Fri, 22 Sep 2017 10:17:10 -0500
> From: Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
> To: jerin.jacob@caviumnetworks.com
> CC: dev@dpdk.org, bruce.richardson@intel.com, harry.van.haaren@intel.com,
>  hemant.agrawal@nxp.com, gage.ads@intel.com, nipun.gupta@nxp.com,
>  narender.vangati@intel.com, nikhil.rao@intel.com,
>  pbhagavatula@caviumnetworks.com, rsanford@akamai.com
> Subject: [RFC PATCH v2 0/1] eventtimer: introduce event timer adapter 
> X-Mailer: git-send-email 1.7.10
> 
> Hi Jerin, et al.,
> 
> The following RFC patch contains enough of a skeleton implementation
> for an event timer adapter to show how the API could call through an ops
> structure to a plugin backend to provide different implementations.
> 
> In terms of differences from the original RFC, the most obvious one is
> that I've replaced occurrences of "wheel" in the API with "adapter",
> partly to reflect the similarity with the event_eth_rx_adapter, and
> partly because "wheel" suggests an implementation that may not be
> the one used (as in the case of the SW impl).

OK. Makes sense. We thought timer wheel is generic concept. Anyway
the name change is fine.

> 
> The second big change is to replace API parameters specifying pointer
> to rte_event_timer_adapter with ids, which seems more common throughout
> DPDK.
> 
> Other changes include:
>  - removed rte_event_timer_adapter_lookup() function, since APIs no longer
>    accept pointer to rte_event_timer_adapter

There is one difference between ethdev rx adapter, where we have
rte_event_timer_arm_burst(), rte_event_timer_arm_tmo_tick_burst(),
rte_event_timer_cancel_burst(),
APIs in fastpath. So any multi process scheme where resolving the
fastpath API functions in _one_ or zero redirection is fine.

I guess in we may need 2 or 3 indirection to resolve the fastpath functions
with id scheme. Please choose scheme with one 1 or no redirection.
I think,
- By allocating adapter memory from the heap and
- adapter hold the function pointers for multi process and
- mempool kind of pointer object scheme without id and lookup()
Can resolve function pointers without any indirection.

So please analyze on those lines as well.


>  - Replaced RTE_EVENT_TIMER_SUCCESS_{ARM,CANCEL} states with
>    RTE_EVENT_TIMER_ARMED, since the purpose of the SUCCESS_CANCEL state was
>    unclear

ARM- to denote it has been armed
CANCEL to denote it has been canceled, ie. on rte_event_timer_cancel_burst()
function it can update the state as CANCELED. So that application can
know the exact status of timer event.

> 
> Please have a look and let me know what you think.

Looks like you have started with implementation without commenting on
initial RFC, so I think, you can continue with implementation of common code.
We will contribute on review and adding HW drivers.

Jerin

> 
> Thanks,
> Gabriel
> 
> 
> Erik Gabriel Carrillo (1):
>   eventtimer: introduce event timer adapter