From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0064.outbound.protection.outlook.com [104.47.38.64]) by dpdk.org (Postfix) with ESMTP id CC23BA2F for ; Tue, 14 Feb 2017 05:10:32 +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=wqpg3c6mtY8OHVGdp790QSTTEx0IMRrja0ATZKUGrAE=; b=A0sCoTkN/303nHxQ4MeCNVMJjyc07WGfex5Z5Ei7mTSmJIXjhqnInVJH2/qLyX0KbW/J0auBzULa+tlqRQW3yuW/flEKHYX6a+DmxSAMnBqziu2/5OYb0OWqwgzglpOZlkbPQFyqsw4KG3YbohMyJKA/RSAud9Z+PKjtqP4ixCg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain (111.93.218.67) by BY1PR0701MB1722.namprd07.prod.outlook.com (10.162.111.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Tue, 14 Feb 2017 04:10:28 +0000 Date: Tue, 14 Feb 2017 09:40:10 +0530 From: Jerin Jacob To: Gage Eads Cc: dev@dpdk.org, bruce.richardson@intel.com, hemant.agrawal@nxp.com, harry.van.haaren@intel.com, nipun.gupta@nxp.com Message-ID: <20170214041009.GB6091@localhost.localdomain> References: <1486760541-12568-1-git-send-email-gage.eads@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1486760541-12568-1-git-send-email-gage.eads@intel.com> User-Agent: Mutt/1.7.1 (2016-10-04) X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: MAXPR01CA0042.INDPRD01.PROD.OUTLOOK.COM (10.164.146.142) To BY1PR0701MB1722.namprd07.prod.outlook.com (10.162.111.141) X-MS-Office365-Filtering-Correlation-Id: 3ca32ccc-2fc8-4243-460d-08d4548f6a61 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY1PR0701MB1722; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1722; 3:ODGf846ov2OVMofXgXrVDMHlK7zir9YXQxcUTobxjz6MrHZDK5eJ28oA9ktzxE3ZokSgvgjQvadPQ/qT4tem7qveZ/Em9W1682g+I94x5+Z2DTR+5abPsbRjX2cgYVJqfdh+eVrlxheFacJNPBIgEoa8aNe9Zh9Y2IkDReA+m4Z9+PNlQAsDYu9gyAKh+/HJsCM2HZxfp9LsJoBvA3RBi01tIckK7kOxHeYFphHaU88HXeISXOMXAaJ1tVKt94wgs3ItJFKOFfgtQPssSnww9w==; 25:yaye3hw1F+WaWHep8d9X3OXqwXX6o2PmE5jLMAIdR3Mk4hmcofb6BBdDTqA6B95lcR6qhiLgT56POW10QdONL1o1Q+1YSGoJSe6cyf+iRdYpIxvS/Q++lo71rapPjFF+lvtmYd4Ez7Wd0yJsYsRQknpaD93TP5taXj+GKObP5mePCip0+EUSVJYM3dp8NNkyZooDCUHacDd6MWOU4J3xLAHu+5IbJ4BRpfRG74bJiDfj6eLjIXB596QcNKvk9l1RVAMqJ8PaPyrKuHYlwfiTfGzXoppdf1VA6N6sl9Vc7mJs5t3yLT4OS3hiKb15W1c8Fqfr61rxv/+MiySYAQy6fYxKJ2ggVgn3lWEOrOFsKxWSeeRh9QvOt2sZ8OyKrIzIEAH4zNEhlw+7tCyv5Pwx54bj8I+tJ8jFfT6qXF0eMVjjqtSb3YMK+6EMLfFTbhWtzn3egWOOz1Hfr/ybrmKvIA== X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1722; 31:CegV+9Q1J4QzTk82hOq3fwXjdejZE1T8wVbzyDkLjU983wN4gy2IjgvUWnNYnbIVOa90A5CMre5fShGJhUSOjY4gxuqjiacHVixCr/WDA0HCREouz0bcX1Qdt/kbAghvySBpTcSSIYarFUoAb/zM5XRI8rQgPxCcfbFnWRS0WSWMQWZU0SV7pmRJoFs4/NBcOirOqYM3bOxfKUGUp4AFXZlESrr2hIvAUfIuUNR72VoV/pNbL1U8W+ifO6zkCug2+CB2AyCGUUx5bKvOYEtRXA==; 20:vtAGomu9Jy4pIdh5pSnNPGYup85aq1FuNgFgpDlPwlHH2kuo8zbEaFPAy3SMjPdzQvS1NjNftQZEtAL2Oe5h5on/EmLh7qGzAcN5DrA/zEfWVkOFBSRQ0eEECkQGhVqhrKDNCQrp1pTJaujWjDwTm5qxBWvdQTaDpGh9RiT/vuIVwjom/crhqhUxgOOsPtruMssMA0XHod+WnF3XR8wwjoztyVrQmy5WxA3t3pjb3cXmyWK42GJIZLp8hcmpcuyUOCzD9TsyXwn3LrUg4iWkL2t5T/a/aPD/yWPDER0t43cUkO4uOY9mnWquDeDSTOaq7UtCIVGkvhCqVSyC6xph4/IIv15yDKKeKs1Y5cM3TkpZ4gZoTo6JcLz2H1SR0g0U7NAPthz69SBkPnw6J1/SnQFe5fgvg5/AKXcp/2CHmDa9ToiwcW9NI1aoCTCwJ+5lXkaeU8zFQOS8MYjQAQ+IuFiniHg/d8tryiItpn3PwvGv5JIv/itMjoKqwYd9f1c8fhA8JXXLGwrVVlFx5SeHPfs5q0EnXpk/e9+S8lSch/71Z3oHg13Krn1l6QjMeMkPqUHeXVC7pwWo0+w5IMLcp6lZTOGT3IAHq/upf+o9oVs= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123564025)(20161123562025)(20161123560025)(20161123555025)(20161123558025)(6072148); SRVR:BY1PR0701MB1722; BCL:0; PCL:0; RULEID:; SRVR:BY1PR0701MB1722; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1722; 4:4MpOCAh9CC15GO1SzzaLlAUYyn4aO9389nAE44SsfW/iZYV6lu9PEOso3tPI/6RUTHx5Jlj5fghYQNR3WpOxGZ1agTds2nkOw7bAes4irF+SBuORfVgq/TaLZj7a1FSrA8YPh5FT9KBBmqRHM5NwaJ/acuWZdd5Q5LqGpiBjx6cRv4VfCKl2ybzfECd9RcGB4hwDxKbG7yZQx+iV0/HbuyEua1kTAUXHn/B702IT9W/aYlaPiw/mbVmrG50k5DqHkDl4VB3zZ21+I3ucg9kronORscxHBuFGcUud0RhbiPmdlJqxbpQUiYewmC9Z+tJpH4MDqoo7CKp6MTomXTh+3aBjjwRcNjM8rj037sphsN93So0Zicul/i28YuVmrqlAz2pKjD7EtN4iKJLoj1QM6fo0w2KY3OCtVWsQgCP8LbM2Y2jeFvQEOF/S+KvH1w+28BZp0uO8qpybmzm+jMApUQ6W7Unq1r4CJCm791l1FxnHEfxFJwOrqoBvvq2VFsZKnV/Hvwu6Il6qLFvrkhk4IeNu+AV2Z81xnViUtR/CrcQADO3T1fS3ThSBnrtKF6fzdPmr6X69Bd8mZvOUyELnYkxRRdYaUnNWmFHm3jyh8VxkqjA6SWMM+r0o6KWphDFD+1quwfKFXZI6O++aWFyAHw== X-Forefront-PRVS: 0218A015FA X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6069001)(6009001)(7916002)(39450400003)(189002)(24454002)(199003)(5009440100003)(4001350100001)(189998001)(55016002)(229853002)(61506002)(42186005)(53936002)(6246003)(6916009)(2950100002)(38730400002)(76176999)(54356999)(81003)(110136004)(101416001)(42882006)(25786008)(50466002)(97736004)(9686003)(6506006)(6666003)(2906002)(50986999)(5890100001)(8656002)(5660300001)(6116002)(66066001)(83506001)(23726003)(33656002)(3846002)(68736007)(7736002)(305945005)(105586002)(81156014)(92566002)(1076002)(81166006)(47776003)(8676002)(106356001)(7099028)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0701MB1722; 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; BY1PR0701MB1722; 23:R9nVFzP8lf7vHxqXPXZ5MYKXKP290aep9rbZvk5?= =?us-ascii?Q?TWmFFJghu8FNgyPp2bCws+feAIUBnJaxe1qD1qYaC10vW/7pRuvp+6HTIVXC?= =?us-ascii?Q?RMdylHcfrY5AIZBkw/MkuFjuCFPGri8l8NEDB36beLVU3OQsYfIBmFmQ9ZKM?= =?us-ascii?Q?u3BUj7d4SLqRm4c4Yxlw3Zel9QTnTrG+nb6I5/ewFbzlRqDewDOQL21NRMK0?= =?us-ascii?Q?8jGFfE0xeqT5/+4WTruo/gHk4x18chonL5+kouUGbda5frSxh9N9TnNUXM9D?= =?us-ascii?Q?OCVy4Cw7xHvo4rlZQyNdHzfmC5EUN1mDJPZasWkTOXPTC4bLVykL35PhwEpY?= =?us-ascii?Q?jcNce/7iYWr3BXUzhR8bO52IjSODrmrs/nr3sChaGDwc2+BJJJwlXwQ/iuN5?= =?us-ascii?Q?T7gDn7QM1owcrwiaVnEf5J6DyKCDyMfTl1CYs7JHdS8QtTqPTpYfWhOucGR3?= =?us-ascii?Q?MbKSmDcpaEt4hDtSXhczJoVF/8dvFr7kOJyl5cjMjRQobqBO5xz12Ia4G1/c?= =?us-ascii?Q?t8g3luiDekWb9X6JYKNHyqGGr78HfQLw+zXbITol5vxKr4Il42rP2SjQhATj?= =?us-ascii?Q?HV2zpWonAIh/Y2bcMxBrxZtMpl+tXWuA2op8kWhHGp2VCTu6JCq29EjZM1tT?= =?us-ascii?Q?hC2DZwPWh3WfBatBMP/7XPusWijuGEfQ8Krc7P0Aa5wQdXKwXZRawYS9B9vl?= =?us-ascii?Q?7KeOg3sfEWXwTcGVM7c2piYcQzjNN+9TTxe6188qJgm0fn0L4xHHEferAdew?= =?us-ascii?Q?ovThwyL3mazsUNgNClKibkjXpfLawGjI5StUmoIu41vKlVzBbo6cSU7oLX9p?= =?us-ascii?Q?xfQGcyRDA2uLMgc3obPjVJ4kgkTbBaSZdF/96J22ebaPJ253DZyd38KY/W4D?= =?us-ascii?Q?XtmeFjfIVOyDNUM1MAypz9V8rlCs+swNWeSNV6RIdDRs7AqezdRZEAjzhN7D?= =?us-ascii?Q?FOkyA02YTo1IiAXzRESnuJDoOSI9CclSFWanx/cGBSQ56RMDbAzg/vosibK7?= =?us-ascii?Q?0cBOPJZ8gnGFBWKwTsAFTPil1t8JWYbbIZ4/xcCO+OH/QtdDav7goZN789dC?= =?us-ascii?Q?lLtv+gRtpsAmROsfFZhrb9XXRusSMRbLXIAxyEJVnaIIp1Khd2JshryDLkfD?= =?us-ascii?Q?llotVf8wuVbuzcKefXDXwxXUs1yqivcrt1gLU6q3zdjRoCyhR0R+NHC+tZEV?= =?us-ascii?Q?pKbngrg/54WqXDaPdwWsoeqXJZsZfVTqgUgyjzGf5d0H3l6c7yQ03dE7Nqcu?= =?us-ascii?Q?5EhFbcqxalEDXiLye3CsYwPU7MhY9qr4XfPu6a/FuDFj6UKx+ol0DkhrTKSm?= =?us-ascii?Q?3JtDupD7iVXCWzIostoySDXreQ0TIbpfjYHd3RxLh7hy1?= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1722; 6:gXpaLlsArjmNL5hfCjE29Ke7iLw7f6GmFah0hD4cYTk/EYSyaKQKRjMuxg9gcREAYhLzYfgPh99gB9vz2GHayoxCGbMp56UyWYGRcPFRo+Es8Eff55v2aDbkJ95/gLEHafLAj5iHiN++A8kRL/1GszBearSVJ8rxFHxLknEb6DgqgYmZbkTzxEDdLBYmYWow//dFik0ZmwgoPgbCobbKlU0KmWZPUHHVdx8w6PnX43KTAExR+tTkItyuQedhChpNtuOmqswU27q1gAiBDCgnWLTJKGe8CFdiSmsv7aIfHdvoc8YhUzqCUTMzaMyxux16lI5B3yjwZJ9hAeY7sVWc43cy+YJXyaQhUIflqEOqObaWf6TdKjBgC4oCWe8mwS2F2eWULDWfdtuZJhndXOdIhw==; 5:ToL68k3Bb4pp78l8FggKjZb0l8eifDx9zIlVLPDfrFv2wH1N7W1NfNGnI8trBOp9lH9+rEGToVt0qq9h9S07ESEINRWqprleyVjbkLAAOmyzcB8x3z9Q0nvM1YcyY2ThC3LhTKD0sJddJ3lgJUvVjg==; 24:95FHAD1Nrtrfx/IoIAaepTt7Dopwhnkx2Fm8Nl/deP/y71t6eGNHWLgcGnWSR4lissQPWk+DUAh8LWQX+/nhJnGM0+GXw76xCX8yADErobM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0701MB1722; 7:eTZWuZW8of53zcqL2STXxGUamxm8CYpik7ZmiUSZykFrHCbLjvstVxhcPqoSmJZCzazrpNA5NTVbQMxC1NvW9ScHcOWLf4ZDvxpnxLbuooKQcAE8P8DLoszibz3+U2SomYQU7bkJxZVmY7gAR+6eFqLNh1AUCBNA9+kjfC/5rIxy3l6BXWJtxMwxLtqDEAGkqzUQ/DatNSTnD8GMh0Glre9URECEvOMVoTQwc3XcF1OBqeHIrczTWOYbSvtqWnlsUUA2ojpofqb2vJfEB3Np9riEdhyNYMes14dj47OGbZK77D9jKO9d81uggZB2LFefmc7kGMtVWLg1hU5rtdZilj2KvrDkPL+iahrlxSdYK4WN7cOWM2JbD2rOGkBfUR7CUdiA3CXqGzgyX0Rut/AW9RObyU0sD5PMcPTThYKHxQB/H4UoYWvO27BbF8KXdR1lnw+b03y2q3EY3gBrcwnSBGWOp5rbu5vOQ9n+/vnQC/idQi3fcUKrFyh2ceOLLwSSlBxGLWKnHmz78G2Ly2CPfw== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Feb 2017 04:10:28.7722 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0701MB1722 Subject: Re: [dpdk-dev] [PATCH] eventdev: Add rte_errno return values to the enqueue and dequeue functions 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: Tue, 14 Feb 2017 04:10:33 -0000 On Fri, Feb 10, 2017 at 03:02:21PM -0600, Gage Eads wrote: > This change allows user software to differentiate between an invalid argument > (such as an invalid queue_id or sched_type in an enqueued event) and > backpressure from the event device. > > The port and device ID checks are placed in RTE_LIBRTE_EVENTDEV_DEBUG header > guards to avoid the performance hit in non-debug execution. > > Signed-off-by: Gage Eads > --- > static inline uint16_t > @@ -1127,6 +1133,21 @@ rte_event_enqueue_burst(uint8_t dev_id, uint8_t port_id, > { > struct rte_eventdev *dev = &rte_eventdevs[dev_id]; > > + rte_errno = 0; I don't think it is required. If at all required, move this under RTE_LIBRTE_EVENTDEV_DEBUG to save store to rte_errno cycles on fastpath > +#ifdef RTE_LIBRTE_EVENTDEV_DEBUG > + if (rte_eventdevs[dev_id].attached == RTE_EVENTDEV_DETACHED) { > + RTE_EDEV_LOG_DEBUG("Invalid dev_id=%d\n", dev_id); > + rte_errno = -EINVAL; > + return 0; > + } > + > + if (port_id >= dev->data->nb_ports) { > + RTE_EDEV_LOG_DEBUG("Invalid port_id=%d\n", port_id); > + rte_errno = -EINVAL; > + return 0; > + } > +#endif > + > /* > * Allow zero cost non burst mode routine invocation if application > * requests nb_events as const one > @@ -1235,6 +1256,21 @@ rte_event_dequeue_burst(uint8_t dev_id, uint8_t port_id, struct rte_event ev[], > { > struct rte_eventdev *dev = &rte_eventdevs[dev_id]; > > +#ifdef RTE_LIBRTE_EVENTDEV_DEBUG > + rte_errno = 0; > + if (rte_eventdevs[dev_id].attached == RTE_EVENTDEV_DETACHED) { > + RTE_EDEV_LOG_DEBUG("Invalid dev_id=%d\n", dev_id); > + rte_errno = -EINVAL; > + return 0; > + } > + > + if (port_id >= dev->data->nb_ports) { > + RTE_EDEV_LOG_DEBUG("Invalid port_id=%d\n", port_id); > + rte_errno = -EINVAL; > + return 0; > + } > +#endif > + > /* > * Allow zero cost non burst mode routine invocation if application > * requests nb_events as const one > -- > 2.7.4 >