From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0082.outbound.protection.outlook.com [104.47.42.82]) by dpdk.org (Postfix) with ESMTP id 01605475E for ; Fri, 18 Nov 2016 06:45:27 +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=23eOrNZ37X3rnBPMxvvh9ta9gKssMLfHbYJLvyUmDr8=; b=khLXabmcw7LzTcKoT/1u516HEgTKwqzMFs0ZyS6VSnZLuAs4E24ZWdhW/NAxokXrzyHsZlBsUQVvqFKgRaQEpaj9w/FVttpjge0lDH/VnefTWhh8Ao83ENVrqZ2SJDbPzJiRGOISrdJl6q0EjLmyplM7Gs7j3VOiQIFo+PUsUuI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.net (50.254.132.37) 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; Fri, 18 Nov 2016 05:45:21 +0000 From: Jerin Jacob To: CC: , , , , Jerin Jacob Date: Fri, 18 Nov 2016 11:14:58 +0530 Message-ID: <1479447902-3700-1-git-send-email-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.5.5 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [50.254.132.37] X-ClientProxiedBy: CY1PR1101CA0016.namprd11.prod.outlook.com (10.169.17.26) To BY1PR0701MB1724.namprd07.prod.outlook.com (10.162.111.143) X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724; 2:+XdjTPVTDQMblJOUntDQcPzRe/h7s2Xf7YTOAQQrpQvFReu9ylvRtUo2UkZ2kX07ME0XpY8h+IurYZidgn3MpUN4dCwg/muXAAzog+UZtU9YEkbx2zryV+TFEHzXBiBNak5q++o+/s1AKQl7rrgSSHzV3ZiIFrXHv/iHS46vRI8=; 3:GkMR7e0N/Hj3qiW80yR8Rm0dy8hCOY1vmD6GnpxDgVGNl/xqlGwFmJ5LLvxRAIPNtqtW+FznkjlfhKHpmU7SD/4rKcy7YuqPMIT7qMXR9UQKDiHqAxKqpITLeyskDryWJMcBX1aoXNpGDmZ0In3iAJYxqs3832R3dytmGy1sd6k=; 25:ul3ARFggoUHc12LyjhbGWX/eMWWQD8xF9CJ9RUNuRG1PHPjEP6V6nGjEDOOGKlF/aVD8TfmO0qgpdim2qmG075u/ctr0NW323kgWgsAyAw2y+PPh3/ORMPjdXY9HBEupzd2g7vTemHZRjuty2YgdDoHEaoi9zBJpn/7/XhDxtyMPzQ0HZWL5m6/cAOZXyp27zqM8SgsfMwrKpjwMHXLCU0VIkbxkh3tnZvrquKMV9WjSmig8O+Lwds+XDz6KYhwvkO8rz/4VHnMF+RG2nOjhfJDNMbUzlIrz33md2DSfOx04n7PkCsbjbJQvQMt4UvGyMSclW2dsddcM2+nTKw+uWMB8Gr5Hzonws9y24zIIDrJWCPUfHp3j2+XT96XsjzXJG7VfmeAOEysDuj6HEcrssjZtMopXOYRefSEZrgPZi6X5p7yO8P50SO5XuC5nbwRnJKb3F2R9uJdRwRO7S6YojQ== X-MS-Office365-Filtering-Correlation-Id: 54d3e544-b739-42d8-c797-08d40f761678 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY1PR0701MB1724; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724; 31:pUXVJIBAyFGIEpHegnNqmaTdNh6HiGF+DfHGPq/YSae2h8P1yul1mUedsrYJdjAHaHhcKsLwKyaARPW10K+Aebwr2mrh8JjomS+dYDFLiTw/roHnKix+hzJ/G+SU9QYJYzM7brMZx5r1t1WxHpht8MIewt6bUmW8U9ug2zZws9fsYHfV8NAPIXtbKQ9mdnNXwvjjc1/D7oDDyfXy3gdKyXNY19Yh52ASFbEb4drMvXKhTZNkdAl97JwL6r0K0rOAFHnAXk4Vv0WMRlJ/PeoopQ==; 20:htoEI27+RmY6z2wR87wQI96Dt4p5A2aOz3xRpE1MySdDeouAYIBQuiFftpxBKX7jQ/i6ZpuNWwGwngr8Gv6WIcaJSlV4xDolfMnyrjvHDdKnPiVpcXxlDURdjmr5tRvfS2LwpvIhcgYhrcyyw9uYOCaIIvyWiP1kYajyzoE/ySz+Lp383vBssksiadKVZGwk4RVhalvMGDYyOPjzyiTuyYjB1HTKrZrI9UYOtc/mGbHyo401NzwQx98SvGCyugw665CxGp9pdc0V64JDR1fShX8AyqY72qqs0gPT0xWutSBCSYascC4cwP2zgS96nsalR/TZF5i7em2MXJDcK9L2sZIM27JcJFEdtM5PHUVg3r81jathbhzxxdmzB3MJIecm0E8BQdlsnkmgLO0Q0Nv0XVa87KTjaerkptsKqu7PD95T3lSSgIkd/0969dr+Y+rEPcWon1GKE6RF0etWjg6T5OPpq/MYKQWyfgvtwZxYiqDBp6FfAtsp8xewv843Ef3zVIqeLsV4C8Hi0TLJoqulvMdR6EOnN+p23tCBWlyd0AJahSZd4lfrHDESYvaXsBbJPfYdR53Fe5NRazG/Sxxjdxev9X9KqTdpE+UHsweLadA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(278428928389397); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6060326)(6040281)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001)(6061324)(6041223); SRVR:BY1PR0701MB1724; BCL:0; PCL:0; RULEID:; SRVR:BY1PR0701MB1724; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724; 4:kw6KVLhKBYDx3m8NpojvZh10Vg8rRp3JEoiDvg7+jEHCT5i7ikaYqgRNowLGX6k1tmWIJ7gRPHSoNNM6MTxHL2gjgCP1CKM1cvalGwkoxUVVcvALsBPmCxghNFALzOCVohU1UQ985gp1yBHuv5iYvQV12W3fm7oHeengOSFQ4hU5vtKPl8L4DS7stP9N9beD+DCBUH1ohiAS2eUdOg8zBkPTPFzN8YFJBltRRazKa5ZsgloWSDk84kK3NpFBUduAF8MTZdkD+Xeu0RkXDGwJk5ulTot5lgcA/utj07lfZ7kfDUVKlAZFkJXOIz3MQJ43DsRZBapWkNnIkn+6o9HVGQUxC55YaJCUdLKaBvhrZBnmCOM780VKnntXRsnryzndpvj3v3sjJmlsdrcvKGcqDuk7SZbdxyaSwp8PJ3kTe8gzEbxfXxls0rGvlFGctRYX1glFD++cSpeyLhbbgixgkSjOXRFqlLiBZdPpcZdiG3R+nEwxNh4/+s6GFfDoFZDu X-Forefront-PRVS: 01304918F3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(189002)(199003)(68736007)(66066001)(3846002)(7736002)(50226002)(69596002)(81166006)(47776003)(4326007)(4001430100002)(48376002)(15395725005)(6116002)(8676002)(81156014)(8666005)(42186005)(33026002)(105586002)(2351001)(92566002)(2906002)(7846002)(50466002)(50986999)(110136003)(5660300001)(42882006)(33646002)(6916009)(189998001)(21086003)(107886002)(36756003)(305945005)(6666003)(101416001)(97736004)(77096005)(5003940100001)(106356001)(76506005)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0701MB1724; H:localhost.net; 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; BY1PR0701MB1724; 23:sDUOskvugo4KGqHAhtsAk08CmBX2+B6z9XNOI6g?= =?us-ascii?Q?cZ0kiic8AbnhULHWpAONfdLjO+xdy1SQpLyyE25Dm9jwAxKXzgqlk56/kgAS?= =?us-ascii?Q?Ht+XTWV/ChIhj+wVTLf3SQyrjix3OOZgekkV9kOPBNHoaSUJTeoIoMf0i4/h?= =?us-ascii?Q?NiRXtNPtAGVxmxiU5fGA2YaS5OLs6FzU0A5uBR0iyHWpgUNGOiQT4Xft0e5s?= =?us-ascii?Q?97Gv7LhzXo9rjti7VkZD+PBrLTYeg6E1a8sqpInD0EPgFVKX2OIrUSZX4MbD?= =?us-ascii?Q?S9ktRmm/SGPC91Du8N7OkPilsk2OHmsbXU+PAWwjC5niW11ILFYllUeImQjP?= =?us-ascii?Q?2BEKwX1hOdAANOVTcOcpbo/WvDkK+025VYqCfJae5yAU07/CqD3bTnHdToJ3?= =?us-ascii?Q?6gTkrnqJa8D5AKsGnfZrMMWUMzmr/jTOhQPWrPN+8CgZ618xWqSPOY4Z4koQ?= =?us-ascii?Q?PpwS1TZYEy0iV/RJv7/ZqPykpAH7nz9QT3sUbVGcM1mCCeC/AKTntbqNGi0r?= =?us-ascii?Q?mYg6iuUXPmRbYbfQPZj5lQNpjxWpUG7zkqeJCIuNZnW0TQNSzReTmSKAz4jP?= =?us-ascii?Q?zjj8rdFBxGElaCNXPQ7Shehrby6rG3+KCSoKgDzNtgabsKW+na3OqzpUTddR?= =?us-ascii?Q?Wl/RaA7/FBgorOeJEkZL6T+gZDPmCm/qeVhuZriZoDgJztffTPXj1HsCmpQ0?= =?us-ascii?Q?RgWESL7Bll89SRTrF6hkOiMCKT7rBAgIWn9pumOGEZyl2CeAyqGijL4+xuNU?= =?us-ascii?Q?089U39svSitW78wgNBsXO3m4yl+/z5RujDhFBNsP4bg4B1WLxHfJoYPDnGCC?= =?us-ascii?Q?iQ/QeM3IstqPMKS3xpmIwmWbbIZqqwE2omIo+rabZl8YWZRk4WSly2GX2pRq?= =?us-ascii?Q?uuotRsRpqnbPSaTMrgwYlfXWG/g+aNNnPBVX/JxNNANLDjcrXGXSvHeie6Gd?= =?us-ascii?Q?mLZfIuv4+QEkFT5/r1Ib6t4K122OwGxBtH3Nm6wvlKy+6lPLVHJe9NLun0EL?= =?us-ascii?Q?eZxDo1lZPyH81rXCiYRavvra1/SI9MWTMhohB0fs4M3S/wBLBmSWT0MFy7Qs?= =?us-ascii?Q?H+GMWU+1dEtGW7vmxSDgBjX9sO/AWizzX3ajGjBVmTFOWqA/yP2wvnlrnIt1?= =?us-ascii?Q?LggSQ+fSf7lY9eHdEPpwVEFkh6gknm3sT1zvm1hCqPGkgHaT4uWOW9+lDqew?= =?us-ascii?Q?VnwtMED46yfG8SJ0BvFoKkxf3IkpTQlAe68E/TqXAlSSIYGtKZ444daDTaA?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724; 6:sEiqXTGKXb/VtKO/cswSA196ipktxjCj5/zLduIMdn+GlbFLA4Zppd8AH7lbbp2o08FHQRKD9T/jn2n+FU9F7h4430a7WxBXOTIEgV90qQuPCPk9pZU00yG47y9ElNOH7MCP2TDKLoUd56NndQ/TXIpixnUQ3bqXgnsKe7Mae1L2c715fNQxcfRUvn5fXWhnpAEes6uAsqTf/KXFV2Jtb95QktF/nNmDDATsonrcTKaaS4/I6emeMLBteo71+tfnD+qoW5Jp+3Z2Q/t9zc2nvqKM997L8fbD/g/Q8vK/b0ZQKonePUumMntZwMmEMKkijiBFWkbs2V5asE618rzRVrENbtzFb4E8HldvebH/4n4=; 5:MVFe4HwbBWeLa3Bkbox6zAZDJmY3A8rfUIjNwNV1MMcxGEAILX0gFqLiNXxExTtLHRj+ysk2XapKMpN6hgwfD1e5i7W8pQTvlZftBDBG9baNvMabVNhTOrTyPrsDugE4aDV2Dg4dIZGFOhGUzLgCeQ==; 24:3w1h4DaRjJxaqQLaIwpJf5cmtmF/Q4reP5mc579/p7r5gwr24GiaeeX6kLBRRttdzjkVolOs5swNfqMoJ9IweifwixzKxbukYhLvZwVmrOo= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1724; 7:5fle6dK4zo67IKf54sFkBYNg6eMoNFCWc9qLwnet1neFIq1pWMEekrwklmiygQL06+v6YNRvDo8/zDh9D1kP7ebgN8a/iGrJFCLZrBhFjRHZTG+0o4MPWovu2OqQ8z6jtmnGiQ5LE9oU48gSx5xqilkvqaI4KW0uAvTI8SI1nhjx6HHckUKuSjWbDa+nrGTMnShhkybgbWpehrUGmcC8SRYHpagC9cXHa6QAcehnLW8yJUI975N8b9+pAjges4UQslt1fZIZCjj7aU/Z2Gcf9JvlnvT+EFcwo8SDZjHZmj9hHlexw0NGErpoBGdQCivHE/r3HpGDFVacKqAlhivG68ae3hsy2aw7FpShDdgcY3g= X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Nov 2016 05:45:21.7949 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0701MB1724 Subject: [dpdk-dev] [PATCH 0/4] libeventdev API and northbound implementation 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, 18 Nov 2016 05:45:28 -0000 As previously discussed in RFC v1 [1], RFC v2 [2], with changes described in [3] (also pasted below), here is the first non-draft series for this new API. [1] http://dpdk.org/ml/archives/dev/2016-August/045181.html [2] http://dpdk.org/ml/archives/dev/2016-October/048592.html [3] http://dpdk.org/ml/archives/dev/2016-October/048196.html Changes since RFC v2: - Updated the documentation to define the need for this library[Jerin] - Added RTE_EVENT_QUEUE_CFG_*_ONLY configuration parameters in struct rte_event_queue_conf to enable optimized sw implementation [Bruce] - Introduced RTE_EVENT_OP* ops [Bruce] - Added nb_event_queue_flows,nb_event_port_dequeue_depth, nb_event_port_enqueue_depth in rte_event_dev_configure() like ethdev and crypto library[Jerin] - Removed rte_event_release() and replaced with RTE_EVENT_OP_RELEASE ops to reduce fast path APIs and it is redundant too[Jerin] - In the view of better application portability, Removed pin_event from rte_event_enqueue as it is just hint and Intel/NXP can not support it[Jerin] - Added rte_event_port_links_get()[Jerin] - Added rte_event_dev_dump[Harry] Notes: - This patch set is check-patch clean with an exception that 02/04 has one WARNING:MACRO_WITH_FLOW_CONTROL - Looking forward to getting additional maintainers for libeventdev Possible next steps: 1) Review this patch set 2) Integrate Intel's SW driver[http://dpdk.org/dev/patchwork/patch/17049/] 3) Review proposed examples/eventdev_pipeline application[http://dpdk.org/dev/patchwork/patch/17053/] 4) Review proposed functional tests[http://dpdk.org/dev/patchwork/patch/17051/] 5) Cavium's HW based eventdev driver I am planning to work on (3),(4) and (5) TODO: 1) Example applications for pipelining, packet ingress order maintenance with ORDERED type and ATOMIC synchronization services. 2) Create user guide Jerin Jacob (4): eventdev: introduce event driven programming model eventdev: implement the northbound APIs event/skeleton: add skeleton eventdev driver app/test: unit test case for eventdev APIs MAINTAINERS | 5 + app/test/Makefile | 2 + app/test/test_eventdev.c | 776 +++++++++++ config/common_base | 14 + doc/api/doxy-api-index.md | 1 + doc/api/doxy-api.conf | 1 + drivers/Makefile | 1 + drivers/event/Makefile | 36 + drivers/event/skeleton/Makefile | 55 + .../skeleton/rte_pmd_skeleton_event_version.map | 4 + drivers/event/skeleton/skeleton_eventdev.c | 535 ++++++++ drivers/event/skeleton/skeleton_eventdev.h | 72 + lib/Makefile | 1 + lib/librte_eal/common/include/rte_log.h | 1 + lib/librte_eventdev/Makefile | 57 + lib/librte_eventdev/rte_eventdev.c | 1211 ++++++++++++++++ lib/librte_eventdev/rte_eventdev.h | 1439 ++++++++++++++++++++ lib/librte_eventdev/rte_eventdev_pmd.h | 504 +++++++ lib/librte_eventdev/rte_eventdev_version.map | 39 + mk/rte.app.mk | 5 + 20 files changed, 4759 insertions(+) create mode 100644 app/test/test_eventdev.c create mode 100644 drivers/event/Makefile create mode 100644 drivers/event/skeleton/Makefile create mode 100644 drivers/event/skeleton/rte_pmd_skeleton_event_version.map create mode 100644 drivers/event/skeleton/skeleton_eventdev.c create mode 100644 drivers/event/skeleton/skeleton_eventdev.h create mode 100644 lib/librte_eventdev/Makefile create mode 100644 lib/librte_eventdev/rte_eventdev.c create mode 100644 lib/librte_eventdev/rte_eventdev.h create mode 100644 lib/librte_eventdev/rte_eventdev_pmd.h create mode 100644 lib/librte_eventdev/rte_eventdev_version.map -- 2.5.5