From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <Jerin.Jacob@cavium.com>
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
 (mail-sn1nam02on0052.outbound.protection.outlook.com [104.47.36.52])
 by dpdk.org (Postfix) with ESMTP id 3169BB6D
 for <dev@dpdk.org>; Thu, 24 Nov 2016 20:30:50 +0100 (CET)
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=MbrXAogbMLl5N0Juv3ItAvsuVjibpabDq9HiVCsciOE=;
 b=EgxXWAUSmg+zp7ALxu/4EXwldPdKSq2ojxo1nimB46WXHi//QC8yntX2kVnHSYzlVhnAOK8Zgy73ScampZhsSOi899qW0jC1tsG2lU5nYdKgF42HqA//5GZ1T8ZFpVwdJezyMYvtXQI4f8TEJFGkoFK1rD4O91i9Hvc5x2H1f0g=
Authentication-Results: spf=none (sender IP is )
 smtp.mailfrom=Jerin.Jacob@cavium.com; 
Received: from svelivela-lt.caveonetworks.com (50.233.148.156) by
 BY1PR0701MB1724.namprd07.prod.outlook.com (10.162.111.143) with Microsoft
 SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.693.12; Thu, 24
 Nov 2016 19:30:46 +0000
Date: Fri, 25 Nov 2016 01:00:42 +0530
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Bruce Richardson <bruce.richardson@intel.com>
CC: <dev@dpdk.org>, <harry.van.haaren@intel.com>, <hemant.agrawal@nxp.com>,
 <gage.eads@intel.com>
Message-ID: <20161124193041.GA18597@svelivela-lt.caveonetworks.com>
References: <1479447902-3700-1-git-send-email-jerin.jacob@caviumnetworks.com>
 <1479447902-3700-2-git-send-email-jerin.jacob@caviumnetworks.com>
 <20161124162410.GA136296@bricha3-MOBL3.ger.corp.intel.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20161124162410.GA136296@bricha3-MOBL3.ger.corp.intel.com>
User-Agent: Mutt/1.7.1 (2016-10-04)
X-Originating-IP: [50.233.148.156]
X-ClientProxiedBy: BY1PR16CA0025.namprd16.prod.outlook.com (10.162.29.35) To
 BY1PR0701MB1724.namprd07.prod.outlook.com (10.162.111.143)
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 2:Yh4tQGkkyM7zYMRHf4szUAI4XxrFY7qc2X3isfLow1gNP7rDDBCvJzrnDlGWEIYK9NWWjY8sYd4VLOsHoTs/EnUA11h4T84YVnx15p5GpiS6sVPG8ixMKrsA5XVT3Q0Sed+5yiA2uxupmfd8F1pGC5pRWqRlLo2Mrq4Vimpdb1c=;
 3:3cV83X6wMCKPRx97MTshbhc1KUqPCEgdgChnJHoS+arrMkR3XsKEZkma45fTfBGOfUXkrkFHorZS/8e6QbK7MibThiq4BTl1hoWRdjKe/9z6M8M9Wv0JLDoPJ6lwIV/zX7Ph3yaGZYZ1sl+IHhzm5Uo10NQ4lebnkuKfBcdl0VQ=
X-MS-Office365-Filtering-Correlation-Id: f399f45b-094b-4694-5aa7-08d414a063a2
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001);
 SRVR:BY1PR0701MB1724; 
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 25:awEt0F1P4jJgY2khJp3XUia5gx6BibfQFsWEhIju9f5Jn/0nbRpc2Kwkfeq1x6b3JTHW4/dzRwZ0ZwqcoovWS656kNr8tTSgGpArbfaysasgb5dbplsl/bU10WcwUf4TAlZG30BqKwpEikvqOYnkVxPxghmIk/t6hGhBE2t6M80YvXVzxLvy7izRnTtGFbT5z6mfAWAVxT2VpfXmlp6CQWBn9mqixVfwwu8PJV/iQM5zPUEaIs1inOpB/6zuh92rP5ycdgLc82nuSmWOxrEudeMm8O7R+EGEPxuahnxcvvya1Yt7wLX6/W/9+PnY+QmGS4q493nR78Vn7Fe0WrFHgP57O/NRGhCB0VUxKj3oXO1fs/nWHl8yZpm1VITWwIWEPD2u1mEM4sZbiWz/9nVR+s93rzyyOZ8WtXpSjox37ca2We10/yRC/Vhh9JSs7Cm1XCAsrox3I5PgAD/3RA6zRFGIyiWLLflkzdD0T+W7TjDrXRFd3OZijPg0u0wUqoK2cBNMDJ9qCJqP387iAFuhCK7LUcyAfOSLZTO6k4nAPHDPJVxkZDNjP3RtkYtXw1mrk3XkdOr1dMLjX4raJJn6HSz/uGaGB/vf9yPmu9+vX//g30QI1u4JuV1T49bhUeHa/i6+qAUuxQcEHwIoECGTG8N2nSqX4JIKbl0nyNxz3HAN8mUljfsy1GtqP+UjZSWp82oLAkuUf+m4S4KCU7BoIWBAvSQompEW6DX424tTK1TfJ/GNGj4ALbhmzMKnBr+ARgCD7qObBkQfZA6qg8/laA==
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 31:oUyI6C6l/vSlS24KA/4W+ICV4SXvkCRi/Ez90U83vvlkHSvvfD/MmTdQ+MeddmjXzY1bNLIn5E7EkfMTobhGFhxmEtOpqrdKOh511nhnISFfeWph5t1U086F3CprHI4srvkvVb7XXIut83dn10NnJ3INgn5MBWho8dLCu5Tq0O18YfZuM8Iam2ERZClloM+Uo+JPzYZUZuZRzeccdcf+tWOSMqyvKbNXzWzmRgbtSmMBCinA69hrWIbMbVudxpO1Y25/06tQnxqsbX3UnsOTQdxkvbL7OK7I7Mhxo+j5HFhPlnRexkk+b3PztLD6ew+9;
 20:+pM/f/Ei89lDvHx9C2uh8aFuqEiLVGOLCtJ2mRuLO07lItCKdyOUpUAAW1N8KuFrpXjWUJirikE7zR66+HmfAwFITD20YCjJiZzZbK8+Z7LzA5rc6zSrKegQk/S2FmWwG2TCwQ7qy0aKXB+3u6ajwKPkIRflzsjpnsUN/P3ciRjduUZbOg+2jP9tgL+j09VUPl0qrWwOQGBy7eoyDnUSxH3mQuJT5/8WUBzEY160E0OxJaTicpoeiy4q1BG4cVAt/fiP+ObGTXxVwcVukcRC16a/Z5d3p6EwPFpzrqlqwpO186RAif5pvH3tpOHtLUWmo0T3zJz15sz/NZqcPrtVx4jwcZyjND9LWXFQBHeki+7/XFLfShLblkJ9T5erK7zcsDkw3455G1FY9LPgNcNIfhX/M8H87AdsLiW8UFrjaRy9/CPT1YFdxzyTcQo66/GYoS3JJ1a2W0tEQhwXKBViUNqXWr5dupMKTOvEgGpu5SPoejAfSYCBmqdnGvyZNZzds/Zk/CoeU00OF3YH0FbwM7vNLoyuYVqpiM908uY1uUBidbb3URnK7GEBasyaXKPmzaQMv10N2hQWToxNtPnMd2aqen0sCdvP+uJqe7Vjrg4=
X-Microsoft-Antispam-PRVS: <BY1PR0701MB1724B42436A919C745522BFE81B60@BY1PR0701MB1724.namprd07.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:(278428928389397);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(6045199)(6060326)(6040361)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6061324)(6041248)(20161123555025)(20161123564025)(20161123560025)(20161123562025);
 SRVR:BY1PR0701MB1724; BCL:0; PCL:0; RULEID:; SRVR:BY1PR0701MB1724; 
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 4:DthPIeOjAYEIqNwP6ujoG11f083XAu4c7FK/dcg6/O/v8aMRcLQ1eoqVvrKyXqutapWbvy0SqWW5LZ7JdPpsK6HAmsKzVl38xY0NEMQhmHX815s+MN8r0hP9YJI7m9FfQ9QZGmY03jsR+a199wwPjDjkLFeR1wKNJgNAxbN5SuJzS0Ysol+BZPgBzyJ4vCP7mu6UzTRy0DIsCELV8XOYv4OvUuJn2+EXuzrlWthbMbA1ig9x0QQy1AwTAP3rwY57BAZcGjFZPFfqDAjfarrZHfSYUv8FXV0AEJKjJScl6ytofydIPBH+2YbyaosN376FAGPYOs9aTz7htR/vFsOeK8C2x+jCUAyAjgy8yApkeu7nogXsTGGyoab5G7ukrZyABsx28NgMdNPzIEk5W8zxn1jqHaWu+T8uniO+poY+wB88BkJTdHZHSzfsheMnV05zsmfIothSrL3DjKLIE0cvqDIRIMCQoze8cd84wQtIu4Dcdc6iem66MeHo0ElJYmMcYH0Y5I2jODFF/zVep9a0AlyFz66VoP6jXzzYwemJJAWkuXynd4ZSaeIjOGmX2Nfop3Fyv7vKNywxZ8MC0spwaOESdG3SMDL/5EVU/uyKofGZA5CcR+61aRs1GitrTOCtFsz2Nsyn1JzJSgYVdP2TDDelRaJp0Mct6QGAj7fvRso=
X-Forefront-PRVS: 0136C1DDA4
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(4630300001)(6009001)(7916002)(199003)(189002)(24454002)(51914003)(7846002)(97756001)(4326007)(305945005)(77096005)(69596002)(50466002)(97736004)(2906002)(8676002)(81166006)(110136003)(83506001)(8666005)(6916009)(39400400001)(2950100002)(47776003)(66066001)(7736002)(101416001)(46406003)(42882006)(38730400001)(4001350100001)(50986999)(6116002)(189998001)(9686002)(39380400001)(106356001)(39410400001)(3846002)(23726003)(1076002)(81156014)(6666003)(229853002)(92566002)(68736007)(54356999)(33656002)(5660300001)(42186005)(53416004)(76176999)(105586002)(18370500001)(7059030);
 DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0701MB1724;
 H:svelivela-lt.caveonetworks.com; 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; BY1PR0701MB1724;
 23:hdPGrVki7haUu/6J/Fw2JDGIiVIgjYFSHAHKJDE?=
 =?us-ascii?Q?u8fQPqj+zvXmk+8J+ptHeLMNQUMCSPshg+39+TJs3QxqdwhdkfR99gvLNvCJ?=
 =?us-ascii?Q?4MMEdv5UE5t4WZr0+Le5At3waq1sIPi5N7imGtaR6Zyur1O/GMOi+7jiW7Zf?=
 =?us-ascii?Q?/R0YhaAPk/HUPzzT8TgmUCnendFTYRq0VqwaIw5DGXoxoVE9NDxj/KLJQUpA?=
 =?us-ascii?Q?frviwwWzWKfxH8PZ58dfLziVluhXUuojmXHbLLAEDD1A9E0w/xeY7asVp9nB?=
 =?us-ascii?Q?P8ktOSwc4WdJGddb6RI1RqhkrhnhX5Mp/PLa2d6yPzNkeLPSdCTv+7Kg7SQL?=
 =?us-ascii?Q?KOkjwbdTeLkAjByW0mM5gnYBVNcdZnS1aTfnLrZ0BnFD9Six8Xv0zTyW9Tnx?=
 =?us-ascii?Q?WoaHhMfgF4E6lXdwcDfb0j1yH+KLq7fac7mBgaXUnGbmecc9dr4Y/M62qdNn?=
 =?us-ascii?Q?LQ0tNxENAn1UmFsT/6dqFqOw8ZUAp3c5KNSqkVHv9+77WVdlVvBM/FXwfGKK?=
 =?us-ascii?Q?oIEtc0qVuaqAjiT4Mc8xFz5m5qjbQhQrFVrOtSsAg0on7HlRH57yIpIyDva2?=
 =?us-ascii?Q?h1L4VlUdi975kOReF/jQRdFLqeOUzYBNadvuNx/Ta+8JpkfFjpmB1VE7dOks?=
 =?us-ascii?Q?bC6BxBn6t908/3dDeO8rJADEQXQbXEdbtNuivX3bGyT/dDD9tLHYm/ppP0uN?=
 =?us-ascii?Q?D1zrZv+4rxzFL/ZhyX76Y0TcdxiUwyX7kTStq+Rc6Pq9UykK2PAYKSmalE/p?=
 =?us-ascii?Q?lRHHcX/CQ9vn0mxH8gFt/+u4t8vwIqF7TnvBioh7wZIrxJpdP+t2yxe8Rl6l?=
 =?us-ascii?Q?x7RyPBRPrWzpFdqH2i5sE8BWPpRiXn/HNJOn23eLi0JDtrTwGLOZkbX6g3L2?=
 =?us-ascii?Q?gygr5rsp5KDZ1FwkMQkESlgj3JL7UZ/t8cVCjKXr0JtK8G3+4j2wXPCOd5YV?=
 =?us-ascii?Q?t5u/Mvc1j6n3m4FAf0Z2xJed+8oGQtfeixQwWQdow+DCRd8Ka/YLbNju9+nq?=
 =?us-ascii?Q?yS2jspaw86mXUqbwd8epK70ia0OtCZqS/FhilCE1R+ct9b61KybEPr15ice+?=
 =?us-ascii?Q?5SAggNrApmS0HYPG19LEwUsS9KY/zZXfXFlR8YE+/muMnfC3k+BfxVF0iyNZ?=
 =?us-ascii?Q?x2R/t4skjVMd9y3DSbVL7dwn3aQtSL1o1llsCWKy1oCq4izBAUyEBc/yAl2T?=
 =?us-ascii?Q?34dfeGvVXaBYDCtazWsXQEDcdgI2GXOMooxVZSIVKD64wWREMJJEj/rYLGA8?=
 =?us-ascii?Q?GzVNiUUQjsqf6bxibRuyGE8BaetmJf6fUxvnU2OkJBM6mf8aPxxvEeRWY3Ky?=
 =?us-ascii?Q?ioanXXeB0zCqfnyncrGFFZJDmRg656zM6R4lWooAP43mrOAfXRDkCoNR1F9M?=
 =?us-ascii?Q?9hSIwWuPQp5zmK81H5uaMFM55+Ho=3D?=
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 6:AS5FGR9RJEdYxu54yqypnamuvzdaPX87+YiBnpcJLbquFDWS7yDIzMNuqMcpWXqks1P0HN6I37oEdCjsH9s3EtY1n2eIOhAR8l60jAxH6D+Cc/6Lftb1z5nTHVkjsmXyaRgbOv/oHjsG1/KiIEifmhzwPFzLvjs30KbONIWaNb55Dn+rNU4VsZdWmihV86xUVqNUU+oan94VRmTHCpOaXVTXkSH0ZE7M7P4aUQYZ7Z9f6e7X5mwtGgrQyOhQP0KtVIjjhpwHwsLo0YsZXw62lBjd7OFMn1rs3C3EfmVYA9w7eCIy1ilcCTfRanfsmknKoPSXeuwOwhZASoqB27FwgEsoUxGU4PJM735XvraZtu8=;
 5:Cdmtjj057VUeZ6c1lZCd1inIYp/nqe0WaSHv3kKv6wk0NU3oEKxjoEGOjMn3xAzlaI21mxStoj68JzPq9RgykAxJByCFw6NRIon3MTCXDcmJ6Hi7h2IUx4L/s05/mT0r6AtFipkIbS8EnVHuNrTdQfIDf+Mi5/co7L3MeHHQg9M=;
 24:L2pDv5F64z/S5qXCCWqV1CcL0aibWu7/n5t4XGVfApujmaB3Cf3vm+0g2GnmdHN8IXicLl8p61igsB5e+b3h7uzcdZX5V6yZVViO6ILzcCs=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724;
 7:DNPhbfCgh9DQhmOnY1GME1Sfxu3G4uswKanuyoMy4asI5Oq1pY+6JRm+A+wMQwnL/F+yIi3YZIky/0H7RLOjhKSEfnCP7A01BEikhK8Rm6Y+2LKEzAH+m3FCzgrSJeA8tMD1NzJSYhVn7WGRpjXTMzvu9eXeO6NBficErz89dv2DxiFKHHDArnL0amWnKXPogOE41sI7h8mxriwBUHOxOzLx6dfSscqXXVGBchyV0bH+zwptyCZZnSw4qy4X9jcXg2By2LhY5npanmmHCc+iV7Ez51xlh8hun/ism09vzJOTiSKYuFXv7i6Zy0wMcTgKAJXqzq6KpAE96xuybM/livmvhoUNZ7M02ao3gqHcWz0=
X-OriginatorOrg: caviumnetworks.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Nov 2016 19:30:46.4629 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0701MB1724
Subject: Re: [dpdk-dev] [PATCH 1/4] eventdev: introduce event driven
 programming model
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <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: Thu, 24 Nov 2016 19:30:52 -0000

On Thu, Nov 24, 2016 at 04:24:11PM +0000, Bruce Richardson wrote:
> On Fri, Nov 18, 2016 at 11:14:59AM +0530, Jerin Jacob wrote:
> > In a polling model, lcores poll ethdev ports and associated
> > rx queues directly to look for packet. In an event driven model,
> > by contrast, lcores call the scheduler that selects packets for
> > them based on programmer-specified criteria. Eventdev library
> > adds support for event driven programming model, which offer
> > applications automatic multicore scaling, dynamic load balancing,
> > pipelining, packet ingress order maintenance and
> > synchronization services to simplify application packet processing.
> > 
> > By introducing event driven programming model, DPDK can support
> > both polling and event driven programming models for packet processing,
> > and applications are free to choose whatever model
> > (or combination of the two) that best suits their needs.
> > 
> > Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> > ---
> 
> Hi Jerin,
> 
> Thanks for the patchset. A few minor comments in general on the API that
> we found from working with it (thus far - more may follow :-) ).

Thanks Bruce.

> 
> 1. Priorities: priorities are used in a number of places in the API, but
>    all are uint8_t types and have their own MAX/NORMAL/MIN values. I think
>    it would be simpler for the user just to have one priority type in the
>    library, and use that everywhere. I suggest using RTE_EVENT_PRIORITY_*
>    and drop the separate defines for SERVICE_PRIORITY, and QUEUE_PRIORITY
>    etc. Ideally, I'd see things like this converted to enums too, rather
>    than defines, but I'm not sure it's possible in this case.

OK. I will address it in v2

> 
> 2. Functions for config and setup can have their structure parameter
>    types as const as they don't/shouldn't change the values internally.
>    So add "const" to parameters to:
>      rte_event_dev_configure()
>      rte_event_queue_setup()
>      rte_event_port_setup()
>      rte_event_port_link()
> 

OK. I will address it in v2

> 3. in event schedule() function, the dev->schedule() function needs the
>    dev instance pointer passed in as parameter.

OK. I will address it in v2

> 
> 4. The event op values and the event type values would be better as
>    enums rather than as a set of #defines.

OK. I will address it in v2

I will reply to your other comments in Thomas's email.

> 
> Regards,
> /Bruce