From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0060.outbound.protection.outlook.com [104.47.34.60]) by dpdk.org (Postfix) with ESMTP id 448612A5D for ; Wed, 14 Dec 2016 07:41:19 +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=/2QJ9Akm6fyYp2A4Ji54YaPjItpx7iJH1pu1287GjT8=; b=RwPdL+oPqHf4LDi9zEItpMXzmsWGjQ/rv4dRC/Bv4iCuKIcNCxFQCB1GZIZOGmElxXog77qN8vW+YyKgaGDyGfccIN3sAOp5zU5iI+owgBF0wN+A5Em7IlkbjTgmwVu5F3b+ttMTjSN10YSJEFvJw9PPnxHLHBYWBOn3Nj474Vg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain (122.166.153.127) by BN3PR0701MB1718.namprd07.prod.outlook.com (10.163.39.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.771.8; Wed, 14 Dec 2016 06:41:10 +0000 Date: Wed, 14 Dec 2016 12:10:52 +0530 From: Jerin Jacob To: Bruce Richardson CC: , , , , Message-ID: <20161214064051.GB21135@localhost.localdomain> References: <1479447902-3700-2-git-send-email-jerin.jacob@caviumnetworks.com> <1480996340-29871-1-git-send-email-jerin.jacob@caviumnetworks.com> <1480996340-29871-2-git-send-email-jerin.jacob@caviumnetworks.com> <20161207111251.GA22932@bricha3-MOBL3.ger.corp.intel.com> <20161208014800.GB22031@svelivela-lt.caveonetworks.com> <20161208095752.GB55440@bricha3-MOBL3.ger.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20161208095752.GB55440@bricha3-MOBL3.ger.corp.intel.com> User-Agent: Mutt/1.7.1 (2016-10-04) X-Originating-IP: [122.166.153.127] X-ClientProxiedBy: PN1PR01CA0082.INDPRD01.PROD.OUTLOOK.COM (10.174.144.150) To BN3PR0701MB1718.namprd07.prod.outlook.com (10.163.39.17) X-MS-Office365-Filtering-Correlation-Id: 1b8acdbe-6c8e-4216-9ed9-08d423ec31fd X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN3PR0701MB1718; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 3:Y6+YIy5ux+tWbiepqAZTYc58opki4PXc0KKhMdry6zLaZ7cYKbfcOEeUPfSOtfQID6UdRj7e7EJG4NeTDOTN1buuloT/vb0vZYKykvyYFpnjK0TvuDyYSUaOII/078GVmq2LOG+ezzs3X6pqWnEVc/7ff7KyLD7OAntqAncMDi2oZ6e/Q5WC+LcWKfWp5VtXoxL/KPZ29h6bX8U+Sf3AhU8bFb+SrSTSnmu/M4RaWvBCLVIkKFxl+xalw796C+R6x51nJUJRqziXw+LfSqO6vQ==; 25:QzGY34pB7B1Fh11Zi7/jW9FlyJUvqwBJxZJ1SU9G8EEPX0BjN0K7ChftO1w8izHtdtETbnPlBe/asiCT0R0qRRCVJErgz3uJUohomSyntLVYcc1O2OYisF58c2KIbFMzWfgWuNSG/Zyz88kP9QkqqXFoyaAxOesumQzCgifiZxLjb5zOYpZcKhODuL7tNgnFwjFKhw9CF1L76t05V8FzU0/a+elp5griCW9YdyheYuEmOcMd8EZvewVgUp6g2kGKl8AxUqUxTYWTiAaJL6CQ0oCosG+Do7UTv17Ji7uV50/fkeyF4qMOUiprtArdx5aCzVj4x9vUKDsH1z0z75bJBflvrFMB4rJyBMMaafLBJkjEJdRCQhHVlcGEIJOuymwSIpZqMkXJnn75/T4kCsU8mnm0AUD+AVl5l9WgfShvvA/ugOXeBD82Hct7e9bu4f55Z0PKAkpDV/f0XYlGx3zXVA== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 31:Yh5NVyxFT75eAInyK4MoyzWXpTGUj9iVs+KrjJw4/jgOVMwjvRrEGBII9cD21somjtmpY8vJxtY7WiZJp6in6GANrmEXCxuhCUihlUTZLZckPVQx2igW2xT9SL6Cj9D8wZR16azqsu/vyN9h+HGaFYD5ggKj70t1USd9kVGKmePIoZoyFqhPH5DMLjpMp2snDzoEICyGumTqG1B+hLBParGGU9AxdnrYHu0Srwkh/StJ6tXGDAQsRT5SV8iZz0OHPNsA9kze2Uh4AR9bS0wcNAI5sMxF/GyIhoc1deSq33U=; 20:+37T3UaBRqHEfdwy533Xpl6uTvN0fv5ep9kby+H1EmmuxgIuEoSru0teRbWW+smJUGwNhQ6bQyqpVD5/GfNmrEbAHxCbKx50a97X5ZisfFIhAvmjDKS6rZ4XGPBJVG0oua39cfk0eXBTO+bFGsPFee00E2+WY/D76ix388mT7PMDACfbxwXtb4dwZAYBJpfjIZ4YU2pX5zA/D3ma5yeIImGANGDs2g3waCDKCTpn88klkJO0RwXnpTI1t89OWi6Ra3t2QZXS8Tp2eRnaL+NXSfzNKcMpMx3gaGNYMZNTfVwc6ncHzw5FrqrYwbqvAEt4H7VHRjxOhd5fTfd3oNihPLuwdChYuevCAZMys/yjL1vHQq52B44V4qcQZITkUHClYZ01YWMqO+1t4u95SdbfWiqq1ZaeVPEgxujgexNqywxwlHLk2wDaUX9w5gpHiw/cbCQ0rZVhVKNfgv/dCz1KVVCbF1PlEJxn4T1GclWCx/x8vyYjA5ekQicaJP9N00AL9q0qxBMLZL0Z5+fNL4Rh1CHjwXvCCfA09OwhOqWNZFTl/mVJIad3dZypk2+EaHWk5zgDfbI7noSgxwrTAbSoVY3Euy8Ez9HY2bqRYAo3Hhg= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6041248)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(6042181)(6072148); SRVR:BN3PR0701MB1718; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1718; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 4:FdizfgLQybaNX3Ba346V24q3sj/XlzEOPmzPVrWtAXN2kGMite53jdOOnCNeeDRgovgyudRoTUXfFHUe8hzQbn5vwk5wZAbyKU0Si1LEAHFR8SjASBP/eGEOMf7FSeR/WyXMmt+wJ/5rMytnVtEnCw+qrkCKlUEe+9zIAU/fcbdpovwKRDr0CHu5oCW9Adxn+3c3ti/qsxW1j1tMciBZt1lzgS6Q/tGIdhdldZTuiYhpeyvosHy/PX633X6M8hCwxXOzxHGJ286ezCW+/2dbqf/eokhJR7tquyJEiUjsBDhbvlYtAEGu9dxK8YssB1NLJFN6czml05BBg94QxayfE6tn0jWmXV8hX8eV7XSUx8ZTiy5Nymlal2rQA5UK00rScNUXR2WussQmVCNc9H8US6meZIW8vdXtBKxnVoLp7N5t5YQXm3d0CYtMum6RgC5z5Wx2k3JXIWF/9KbAs28bqZn3smEHGDE7IPMitiaY83UGQR1A6YU+siffy3j5hAcGbrJxgU/5LaYRvIGYtUzguRoS9SU0yoRivQcU+bgLGRF6nmPiI9h07oMZLO9UtObOOogRceM8FBGI/84lpHVOJMDiXBSN+qMwN60VXF1BKCM= X-Forefront-PRVS: 01565FED4C X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(199003)(24454002)(189002)(101416001)(110136003)(33656002)(46406003)(6116002)(66066001)(61506002)(6916009)(3846002)(83506001)(50466002)(92566002)(229853002)(47776003)(6666003)(5660300001)(42882006)(2906002)(38730400001)(2950100002)(6506006)(4326007)(9686002)(93886004)(189998001)(1076002)(305945005)(54356999)(68736007)(105586002)(106356001)(561944003)(81166006)(81156014)(97756001)(7736002)(76176999)(8676002)(4001350100001)(42186005)(23726003)(50986999)(97736004)(8666005)(18370500001)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1718; H:localhost.localdomain; 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; BN3PR0701MB1718; 23:PbKCt3A4We5GW/vtCd450hG6LqKsQkMdV086IAJ?= =?us-ascii?Q?BRilNydTrIEoYq2YkU3BQr7kzR2ukcldiO73cQXsFu0WsRJRBYH+NxObbwVi?= =?us-ascii?Q?kd0/h5Q04JsJvs/V+P5DiZjARE+C8DL+hdmYuBjua78LLA5Z4i7Yog7bAHMP?= =?us-ascii?Q?XaQwShu4dSeQPpLqKv7+edRzeTHQslA+nLzvtKKlLsYgfx9WZmyHe0x/DGrZ?= =?us-ascii?Q?HELDoTz2QCcvrcGVJ7b6Nn0oyFRMhxiJNnYJXjF3z41JSAFBhhmcWzmyjmZ/?= =?us-ascii?Q?jLhq7pq4wJ8goi8Yo4sbAU57Cs5iEaR4Xv+1WrHHI/jMe+u29A6ezDULCSOF?= =?us-ascii?Q?/g3ZDr9RbvF5TEzAdla1cnp4hn6LT0hVDzWn6dnjmC9K2x9AU1yZdYVhqhYa?= =?us-ascii?Q?bAg0iwv3B1NT2AN4pevijD4KUvHCaF/jYgWojF1PW9gIia+TqbpCSTiUhj2w?= =?us-ascii?Q?i/UgBNMJ6wbhaYVbmqOqSIGrSEd1gv/D7CBM70yTn58ILGPQho48HagLV6eA?= =?us-ascii?Q?zoEPsgvn7KPuB0CtsW/lpDSxKpydi+bvki4Y81UQpLwmqfcGpqC6oUiX2aXV?= =?us-ascii?Q?Nw+lKqjX4gkS3rJRq3doE7dAkwvZcasRdCXBu77aB9/ObvsPqL/VXmNDcGN9?= =?us-ascii?Q?Y5qN2/yuFQtqrHojVhAxpfrCjwhdp11GSD7XJPxpyRSspO0dxVzKzpoRaq23?= =?us-ascii?Q?fSPY8dOezGmH4y6nEhr/Zdn9rLHZblCazu6y668VgKin7H+msCDLxupwuZsC?= =?us-ascii?Q?CGPYODEizyhbYgkYmnoEi0mxHzdDoj11UEWVteBiParqHzQ5+efolmniPPmP?= =?us-ascii?Q?ujhmT29fxlCUn//Kc1Q2SVxtY4SlOIq39D3bBzM07UXVhhWlR20StR8CdZxa?= =?us-ascii?Q?9vrpzP7c5CMsU6EwFiCyUPwM7rnxJCE/licrlX0vW9Cq+wakdh47To4cPqNM?= =?us-ascii?Q?nE2+zYC8rZA+PYkRUVDEz88cwr4NVSrw0cFT7dtEy0X64lsYJm1GfAPAAOYp?= =?us-ascii?Q?zqwc+IwZFfAjUYZROcLV/HF9fImQYpejJv9MfTy1H/UUhb6VktwLgP4giMfY?= =?us-ascii?Q?9lPyYUz8yoPcwoyVBai/CcLr1xcnk7x06XOg3C8KBaikO47kgR6OaxUfCWvP?= =?us-ascii?Q?eiqDbSUbmFI1g+xIW260dkh0ORHGpJu9cu0+o2BQHDxvf2aUsgdfyOfiPRx0?= =?us-ascii?Q?NGYm3WCO3OdWRIiYIxYauotQ0pOG06a7X6NJ1oHDmjZeFvvstIGVciXoQpVi?= =?us-ascii?Q?2CjWWy4LcpJ+K1tzZ1PLDpO77KuCEsTE+liHHbmd8?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 6:a739zhO/fksM8D1f9lfBr4wPPA/heBEAEMKga0EFratSFGfQntfUbahOB1VEjpsxCJxrzIh2/lqBv0TiHhHnX2e/bqcXtjfvsXvwp2gc+hq3Vn72RboBBnXlw71isrRVxlLCSNZai7cQPnTclUjmeoYP2h3WKly1yYSCSGh67zFI9z7pt85xofKneA9U9+zpb6CZdNt7q7NMEBuVM8Ta1phxyYazjgBggYJgzCPe4mVvo0J3iZJPmi1ctvYj9JrcHNbeqgV4eky+6/3esuNUJf22zKDmReXOfYujodDVWOTPFtuM7Vk9IK/FeR3dichENjmo6+iUHtCf/TMIivW7Av1PW3GMC28Z1XpuRejNVfJWLUyRrS7QOD9zxAnl9kjXoRGzttykH91SAQTkInRmE20GcBoz0pGDOW/PejiDh/g=; 5:CKbe7nWxIxSYG+QGpHI7hLxr8vLGPjvsI+SYYcv/qtrrLpmgscyO6ZGCRvIAACCWP0V9S7Zr2iv0KJufEajX9jKQTUr6wk4tkefV9tYV7aW7MjpWO8xoI7w2PsQ7z9NELg3lyXJzpJ8mZ8XHww1gRM/cOwJn469BQ9DYDU2DlA8=; 24:R5Q6tueu0Og6hRsSxRwSo7zN6wulMCqr6Ejcg2arqjZXvuh81nuDbXkUHxT+AMqovuOCO7kcFa2Ykl7b6vH7TVXTMVZFNnU+Xs8Tau11ias= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1718; 7:65ELN09fIoPNdcFujoicMI6XMTXi4yiLBr43IsDarThglA1BbRRbBds5uXfRsJoNuwiH2QrPlhtEvQAg6NBA5hLFVvnGRa849sZxc5jF+NldW29aYrb3qfrpImWnWKva3SXXvXpEgqB49B3AoOrxOPr9/BtlEp4uj5MVt/f0V4ZxS5fFgad3+fBiS0hJFu1vuGiCrdsDZxiPMXnhkPqXulDPoGt4DNu/aNoSKahzp1Tk3nL1iTMdgzZ+M3Mj9WVVRnes5Dw74agwgxTRPwFRE2DsINUooEqE4uBFPxs34QdEDO5qPlEswtuK2p0UM0aq1jOWm4hGMjeUXbJI4pX1ZbdM4MvSAFcWaFkrz1CNTB9IWVV7L7knE2LNqj//iAPNhNFxhkY4GVgEcFX8ZTFX89Y3DN+IQPzJes07RVg7vUI09b2kAagmOos4tcxdNVtNlWj8yNZysjD06FAF7EcdKQ== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Dec 2016 06:41:10.1122 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1718 Subject: Re: [dpdk-dev] [PATCH v2 1/6] eventdev: introduce event driven programming model 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, 14 Dec 2016 06:41:19 -0000 On Thu, Dec 08, 2016 at 09:57:52AM +0000, Bruce Richardson wrote: > On Thu, Dec 08, 2016 at 07:18:01AM +0530, Jerin Jacob wrote: > > On Wed, Dec 07, 2016 at 11:12:51AM +0000, Bruce Richardson wrote: > > > On Tue, Dec 06, 2016 at 09:22:15AM +0530, Jerin Jacob wrote: > > > > + */ > > > > +int > > > > +rte_event_port_link(uint8_t dev_id, uint8_t port_id, > > > > + const struct rte_event_queue_link link[], > > > > + uint16_t nb_links); > > > > + > > > > > > Hi again Jerin, > > > > > > another small suggestion here. I'm not a big fan of using small > > > structures to pass parameters into functions, especially when not all > > > fields are always going to be used. Rather than use the event queue link > > > structure, can we just pass in two array parameters here - the list of > > > QIDs, and the list of priorities. In cases where the eventdev > > > implementation does not support link prioritization, or where the app > > > does not want different priority mappings , then the second > > > array can be null [implying NORMAL priority for the don't care case]. > > > > > > int > > > rte_event_port_link(uint8_t dev_id, uint8_t port_id, > > > const uint8_t queues[], const uint8_t priorities[], > > > uint16_t nb_queues); > > > > > > This just makes mapping an array of queues easier, as we can just pass > > > an array of ints directly in, and it especially makes it easier to > > > create a single link via: > > > > > > rte_event_port_link(dev_id, port_id, &queue_id, NULL, 1); > > > > The reason why I thought of creating "struct rte_event_queue_link", > > - Its easy to add new parameter in link attributes if required > > Make the priority value be in a struct, perhaps. That would allow for > future expansion, while still making it easier for the case where people > just want the mappings without any prioritization. OK. I will change the API prototype to align with your proposal in v3 int rte_event_port_link(uint8_t dev_id, uint8_t port_id, const uint8_t queues[], const uint8_t priorities[], uint16_t nb_links); int rte_event_port_links_get(uint8_t dev_id, uint8_t port_id, uint8_t queues[], uint8_t priorities[]); > > > - Its _easy_ to implement PAUSE and RESUME in application > > > > PAUSE: > > nr_links = rte_event_port_links_get(,,link) > > rte_event_port_unlink_all > > > > RESUME: > > rte_event_port_link(,,link, nr_links); > > Ok, I had missed that implication. Since that is probably an important > operation we might want to do, perhaps links_get API should be updated > too to keep parameter matching. > > /Bruce