From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0064.outbound.protection.outlook.com [104.47.34.64]) by dpdk.org (Postfix) with ESMTP id D7ECA37B8 for ; Fri, 28 Oct 2016 11:07:14 +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=NoJms3XnjJohaJbWSx0NlHDCD7tjc950rVcEBtB8PVY=; b=Rk+gLrsZimiDEqJeZi0bFQGCB2HkatrKQGDiBdSBzWrlQSL80HCK2Rf/Ddk0+pa/sD7aQPev+xrMAYCQX1EVccIz9mAL7lwk0r1KGDyZLgVucsSuqRnSH64CyYMOIuVw4OgsTSbhIG1dD54KZyM8SXlyncAYAmzT5kfHuMkx9z0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain (111.93.218.67) by BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.679.12; Fri, 28 Oct 2016 09:07:10 +0000 Date: Fri, 28 Oct 2016 14:36:50 +0530 From: Jerin Jacob To: Bruce Richardson Message-ID: <20161028090648.GA32750@localhost.localdomain> References: <20161005072451.GA2358@localhost.localdomain> <1476214216-31982-1-git-send-email-jerin.jacob@caviumnetworks.com> <20161025174904.GA18333@localhost.localdomain> <20161026122416.GA21509@localhost.localdomain> <20161026125414.GB33288@bricha3-MOBL3.ger.corp.intel.com> <20161028030140.GA2967@localhost.localdomain> <20161028083646.GA82872@bricha3-MOBL3.ger.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20161028083646.GA82872@bricha3-MOBL3.ger.corp.intel.com> User-Agent: Mutt/1.7.1 (2016-10-04) X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: PN1PR01CA0068.INDPRD01.PROD.OUTLOOK.COM (10.164.136.168) To BLUPR0701MB1714.namprd07.prod.outlook.com (10.163.85.140) X-MS-Office365-Filtering-Correlation-Id: d9aa2e45-0adf-45d0-bcfd-08d3ff11ce3d X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 2:WNuPlg8Wki5I23K3uEOmotHm3MVH+SHuCmY0oJUP//mM/L/76OuYmpiv8jzm6HGI1jd/rD42InYgUcPtiALgtYzNKUBhtbk8kDIa4MCK5fkYPMpmhIf3vw5wNGtm5thu8qY4UWOUeIkRh/KExS1BGUtBy7TAwR6Mj+gHRapZZde4cqmGIMSC7iu3Kt2IBl+99VGH9V5gx73m/tbXDb7tFg==; 3:x4+zj++tmJCCbjEEKXhlGXKqszfqNqctjnQ1E4RGe/mL8r14fCL4oc5kVb5Vt/p4yQ6YxMg1C+b0PIvQmPfBa4jVxWsEhG6Ot/SthECQD1hTNKZDhqQgXO7aXUFP5pqk7OlW/zSD0Vem2NAKKl2oRg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 25:Wk/aU5dcq109zjYcSyjfyQM8nwwPcuam9/7UFmyuOYJQLFlKeC19/4TaT867/TGbBobQsZWFso6mF4lGKBft2BeseVnVKkdrAfG1t94hKbNT+l8MmLTjyqVbxt3ojbg5FTKtTD64U2ixR/G8rYCv8P5ZjUc6/czr4kXOd1+1XGPmOV52J991m58KRKYMkmro4HaCYlGj4AhOekOS6IPultXSYp/x7dg83uU2QgX3J0vcequWJehWQWRTAff7HFMaOmlckQjUNYRK2d60nsnpGNfGBp1MyIys/haS0DjCe3+yP/vk7AgQ+S/svUxl0l2EHGY+/TYNwkETwrcRk7fuNXNRcavubkTyRz7Kl4XPeYhcS7jvt4R18ui/DFbFmnIHBEnYcALEw4BYe6Oyk26bD4OonmicXoCVH0E9w8EaA/eDP4SRbvIZ3CpjXwyqWAYcYbyYb9fY07F0e57SY6NU+KLk8yna0rGS+b73Nlkff13Xbw7hzbZPIPdpWImnLaRIrlmnP4OhkndvJDp61T8ukaWOz71fEAFQH1GKqnb07tdL5rFQkmO14PnirVO8kaCz0YVzoyqLqE+UmiTdpIefupghSwXqYWxDegW9HMbJ5sZ86/Cm552iUAsZm5H/V5iyouD0MTKU2IL7HQH59p9TqIh1mbJpDZN+ATpg2CtzT6fti1kCu20H1O6wacINWL/JVdonHs9wH87HwGNYuXp/9hatZvCPhjUmd/+hKXQxoF0LDor/fEQQg8+oGv3EEUcO X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 31:ZBdCr1gfEk3QYGNZzUH5FEP9quTB1BxXRgPP2MD8Pz2lh3MU9ph0Mr5E6uvz4SWqgBo9lMM9eMgagXC71m8wYFBmwlOzO2mah8i6suE1AjgREtNWyOBvlUOQwAEQIVR4R5ANFk7hxye6dpRYR+V0T4v7sM5lQaKpeptfZyCrFDC3d87Nt24ig/khFR2722RJKhFxdwL4hO2mqyg9gkHfemHzRYWmuBKtylseqOB+sjZMg/ftJIK8yPR5G9Wbtpk97y69bmJFHxrFQXXHgTx5KQ==; 20:xWmdMvVXGHSGtbLmWuZLMxI6LsSfhn6RWUoYtbXElKVceI0zQUw6OujsEmceLnv4N7ziAxd0a8TLL3kKZRFmO2IDN80KpXlj2YmSZKNHxnWqvSuBZ6nOsN1OYpW4cHG8DmqMgRCDZyyFg3wFRNbyi6rSxsuFHsjwr7TVJetpcJfly/b7k9CTs4uNGYWtRqYmXyO9nvrJlQzPKoow/iLFia2OvFgNho8kvDHurjnyMGp3bONZV8DzZxCTFdoYK/SSwQRHe2qsiJfRIbKfk3fzSelixdgA/fNeuYNMdIQlrkw/SlMhE3RT1VYm+ebZNU8Sx199AhmhPmsJ3ThHoNSxzHdX3wUlNuivkMstCvxY8tmOXizC6ZsHrZAtCg3H4dCn6LE9rRQuc/KVJ/qqohNKrXIOitE4qmE06lPJLaGldcWN5o8d2OpQZlRD4kejkWsN+w9d/edkj+P2XgYflif6q03uEXdtZiRFIf1HfGM0wO0N40o0Tl9NyxtxtL+EU76IrbVJfP4tJTzllQQm4WgMRyQldnj9ArkXaWEzy9YtBD39dEC+YatJexeXLXlTj/od7/zXF3poj/OqDCqRwP4RCk+amKr99hWFKiV0JGl5rco= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001); SRVR:BLUPR0701MB1714; BCL:0; PCL:0; RULEID:; SRVR:BLUPR0701MB1714; X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 4:1B1iHpLTpcOEHf9kksM4tIqH2V5FFYc591acRklgPbU/1MA3FywU/mSDIAFRSrygmAsgVhBH0h8Rewc9WunFaxlljbCgmo+cc9x9r3Paawpu7iyLJXU8NLHVrwrjEnwSlvSZ5LXd1bavsZ5spwIs0DobZ7XRjj1td3c55X0VNmeabViXk4eP35zYorzqmzWv7+BzMS3eQ0u+2xzVJ5TAnRyMGp1BqFBMrdfWXpuhkNPkT2jjw97nk+Dqz5axG+7rfTt3+casIGGcHgxNP6BR08Js/5bs7qQBi52wTvVN9Pvy+9K2PPekLc1EemVSIHYBje/ByrWqiyxWZzAV67aw1Et33Y2RB81uAml/sxFWHR/idM4kFDOU2zumKPXZR/To98FQgy1FTO3hduncZSx59w== X-Forefront-PRVS: 0109D382B0 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(189002)(199003)(13464003)(24454002)(4001350100001)(46406003)(5660300001)(50466002)(6666003)(19580405001)(19580395003)(5009440100003)(7736002)(6916009)(2950100002)(8676002)(42882006)(77096005)(110136003)(68736007)(92566002)(9686002)(305945005)(7846002)(83506001)(8666005)(47776003)(81166006)(76176999)(54356999)(50986999)(3846002)(101416001)(33656002)(1076002)(586003)(61506002)(6116002)(97756001)(81156014)(23726003)(189998001)(106356001)(93886004)(105586002)(97736004)(66066001)(42186005)(4326007)(2906002)(7099028)(18370500001)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR0701MB1714; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A: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; BLUPR0701MB1714; 23:qYNPWn5zEMXTnrgq58yApAJfeYoZSUxirt/4Ltp?= =?us-ascii?Q?7AA+SyDiZJwz3V2oRXLrinAJSlwzvlzeBX0Ml7tThaIc+seC5CuA6I5HrKRt?= =?us-ascii?Q?B073gXBeWDbFjJdD3ysOamuD130tmj4gVMSqvoi8mPoQjErhcH9i+8T/l9af?= =?us-ascii?Q?YGL0pa+3C7gPNrv6YOzvw9qLOu72FsoZCRU9qFtPZkm3FyLUYy6fzucpCk3D?= =?us-ascii?Q?fEUu1SVn1b7AXKJPB/JiSJybLM5JryhOPK8xbd+MLhdcc48EdDO/Bs7vi72i?= =?us-ascii?Q?eP8uJNOZOE/N6pIxdjfHgVYx9YBJNJSwPL626QRVQem+K94ogPdCU17/ZFG9?= =?us-ascii?Q?jl55PgVDdc0VQ35qvXQ8+g12pWoSqYc/swZzm6JYaXZht2iEyxXFcVt+uGms?= =?us-ascii?Q?/jvF995U0oBSXie1QLHFeqU07M2qwFzIwKxeTSCojWGKtCgkjPcWqyxqoccj?= =?us-ascii?Q?8aWLYBpYlzZ8U3E7LTmdkDFt+0yV8fd67dDM4eriS82899T+3ed4MqQ0zaYz?= =?us-ascii?Q?NqWsUFJicErRGjAFo3jrTn63wiDRR2VngFsDY3oGGs4XjG8x3oVBFbXjZUOa?= =?us-ascii?Q?QnCwyOJyszX5jxrvKvGubRwaLMJRlmHtGtPkFPA5mDSRboiDp9oXE6wVu4pJ?= =?us-ascii?Q?HQN+PMwCH3hpUyJOakbSu5Yi0lUM9vn/DHyx3rDQUNUmHO1ml09/cb6iX/F9?= =?us-ascii?Q?m9e5Qzj0XoJOInBCAO85HQJBKOHud4+G66/gFvutDFjIdXcZCCbgYGgCj0Fa?= =?us-ascii?Q?L4XZ9D7y0LjqlaqIlP8zknO2N0+7Zpgzb2Bk2M7BJPKN90R+bShRmGSqJWHR?= =?us-ascii?Q?7xMm85aM0BBWAj5U8J/zjY1Z0r0KHdh8KWkszGxCIpSfesHC3BUAY48dKody?= =?us-ascii?Q?K9VZ0noNe3P+SLWd2iKQHQUusnZc3DutD25N/kcxJIbXKJwKyGElXxk30nOo?= =?us-ascii?Q?WPmwBl7dWBiRXtQDCu9o2Y7SQaA+MXqSyQpKL1TB7D8pW7HzhP3OdNReHyxF?= =?us-ascii?Q?yKJO7gu+LA0kksDIGMw7HdAHHx3WuY9XKTlP/BOh7TYB98tIJ19rPZhyu6qW?= =?us-ascii?Q?WoBlfRtM96PlU5uIxKtxDBistmOnmrEi9bR3AIGY+krNf+hpd9QLUtYhplvK?= =?us-ascii?Q?i7fDU1GTwNI71jbZLZBjvVBqHpwvgnpkJqZY3IGPxGRnZsTy/qMu4CmnoA2B?= =?us-ascii?Q?LPhbJz/w6D3cmIZVTb0HovwxlJHtD+RyCU+/obzaa01DCjNK1kd7SlSKDVXp?= =?us-ascii?Q?50Smyw6fKiGj0MWq/fUE2mgdppqEmavSicisH18VUt9tBkUCvnxBAM1AzHxO?= =?us-ascii?Q?k3XxDwnvEU6A/j5dUBnn8Hnn+HKV3hxrHaubfbFRQy1jrecusH3qjSigzm2+?= =?us-ascii?Q?ZwNmZ62pat3GdFBmyEJj4/xeR3b+MEd/pYYzNh8t6sIBVMEuQ?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 6:UAfvOM9RhiMzs9x+bET0eD8HOUYT7lm0DcuN9y8DNYRudE0untj4Cimwm4VLyk2dCCfRIy6CPeR5Z8AIoPvbHZAkBpT6HTcEr/4WKDtjA8kWCcnCTScTOaDghuy2H8lwWPoZUsYAFKeo+3syQ5WAlpTIbL6Zxo4g0RE9BpDp1a9NYixoVmemUs8y2tDexsLa6wwypraYhKD+ti6KUrABPXgYo4gtIVcZUpVCVki/vwUb2R0hoa2T0sQDdq1uF1XhMu1JbKxddw/oqcA6tX8/YBuAmSe+z9cAUHV5YGHQAEO9Ux774kgtwNXhTQraM/xv; 5:qkhvkh71+P1AcFM8LjPUSDGneUnhMTR71+NXqsPt5N0cYUrScTe3jOHS8GqrBj+kSltI8N0rA9BEXlKCKMSnC7AOGzg65AHoA/eR5QKlAescpiRf67V9oEc/N/hRsAMIvDP80zb40G2AE/WUN6gTdahF4dI0owlYnpm6NWvDdlg=; 24:6qiC9Cwpq9pt6AApghw0poliBTlgipxH3r1kc4bIA5LR3PycsvpVZ1fEBbLp97vcDBYiXc5Ce6RaDKo8nTuKa69TtrTmLYPULXd3igp4FvU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR0701MB1714; 7:r35fcm//aK82yelhPkNmHEag2+xMulclGdhbnf5umMvrG6F6zkJkVhxUwt7SQKi5j32bSbnDfPw21cEBbvDG3lonQdQOA2t4ETy9+pL/T2oPwUhZX7LbS3eOqndTetn3AxNj607cipZeJ1d0dQ4kf3NzBOr4I4jr5F+UZLsvFpKV3iWR3agzQovvbtvgcfe834aGLWu5gcPexSJh8y6gIafOHs487gcbgQDoa/Pn2LZx8UrGAjOkqcTuYJcilaWs/hNc4SUN2IZIecnDBJpW9J+IJNvnqsknAwJUor7Rsc+G2xg67tuCCtxoHtis9PNoRkT+G69x2L27yriDiE3bd1U63GBkTJR51fsADf9DtCs= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2016 09:07:10.1476 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR0701MB1714 Cc: "Vangati, Narender" , "dev@dpdk.org" , "Eads, Gage" , "thomas.monjalon@6wind.com" Subject: Re: [dpdk-dev] [RFC] [PATCH v2] libeventdev: event driven programming model framework for DPDK X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Oct 2016 09:07:15 -0000 On Fri, Oct 28, 2016 at 09:36:46AM +0100, Bruce Richardson wrote: > On Fri, Oct 28, 2016 at 08:31:41AM +0530, Jerin Jacob wrote: > > On Wed, Oct 26, 2016 at 01:54:14PM +0100, Bruce Richardson wrote: > > > On Wed, Oct 26, 2016 at 05:54:17PM +0530, Jerin Jacob wrote: > > > > On Wed, Oct 26, 2016 at 12:11:03PM +0000, Van Haaren, Harry wrote: > > > > > > -----Original Message----- > > > > > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Jerin Jacob > > > Thanks. One other suggestion is that it might be useful to provide > > > support for having typed queues explicitly in the API. Right now, when > > > you create an queue, the queue_conf structure takes as parameters how > > > many atomic flows that are needed for the queue, or how many reorder > > > slots need to be reserved for it. This implicitly hints at the type of > > > traffic which will be sent to the queue, but I'm wondering if it's > > > better to make it explicit. There are certain optimisations that can be > > > looked at if we know that a queue only handles packets of a particular > > > type. [Not having to handle reordering when pulling events from a core > > > can be a big win for software!]. > > > > If it helps in SW implementation, then I think we can add this in queue > > configuration. > > > > > > > > How about adding: "allowed_event_types" as a field to > > > rte_event_queue_conf, with possible values: > > > * atomic > > > * ordered > > > * parallel > > > * mixed - allowing all 3 types. I think allowing 2 of three types might > > > make things too complicated. > > > > > > An open question would then be how to behave when the queue type and > > > requested event type conflict. We can either throw an error, or just > > > ignore the event type and always treat enqueued events as being of the > > > queue type. I prefer the latter, because it's faster not having to > > > error-check, and it pushes the responsibility on the app to know what > > > it's doing. > > > > How about making default as "mixed" and let application configures what > > is not required?. That way application responsibility is clear. > > something similar to ETH_TXQ_FLAGS_NOMULTSEGS, ETH_TXQ_FLAGS_NOREFCOUNT > > with default. > > > I suppose it could work, but why bother doing that? If an app knows it's > only going to use one traffic type, why not let it just state what it > will do rather than try to specify what it won't do. If mixed is needed, My thought was more inline with ethdev spec, like, ref-count is default, if application need exception then set ETH_TXQ_FLAGS_NOREFCOUNT. But it is OK, if you need other way. > then it's easy enough to specify - and we can make it the zero/default > value too. OK. Then we will make MIX as zero/default and add "allowed_event_types" in event queue config. /Jerin > > Our software implementation for now, only supports one type per queue - > which we suspect should meet a lot of use-cases. We'll have to see about > adding in mixed types in future. > > /Bruce