[1/3] eventdev: fix to set positive rte_errno

Message ID 1562234612-631-2-git-send-email-arybchenko@solarflare.com (mailing list archive)
State Accepted, archived
Delegated to: Jerin Jacob
Headers
Series eventdev fixes to set positive rte_errno |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/intel-Performance-Testing success Performance Testing PASS
ci/mellanox-Performance-Testing success Performance Testing PASS
ci/Intel-compilation fail apply issues

Commit Message

Andrew Rybchenko July 4, 2019, 10:03 a.m. UTC
  From: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru>

Fixes: c9bf83947e2e ("eventdev: add eth Tx adapter APIs")
Fixes: 47d05b292820 ("eventdev: add timer adapter common code")
Fixes: 6750b21bd6af ("eventdev: add default software timer adapter")
Fixes: c75f7897ea35 ("eventdev: set error code in port link/unlink functions")
Fixes: 7d1acc9dde93 ("eventdev: introduce helper function for enqueue burst")
Fixes: 406aed4e0dd9 ("eventdev: add errno-style return values")
Fixes: c64e1b7b20d2 ("eventdev: add new software event timer adapter")
Cc: stable@dpdk.org

Signed-off-by: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru>
Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
---
 lib/librte_eventdev/rte_event_eth_tx_adapter.h |  8 ++++----
 lib/librte_eventdev/rte_event_timer_adapter.c  | 18 +++++++++---------
 lib/librte_eventdev/rte_eventdev.c             | 16 ++++++++--------
 lib/librte_eventdev/rte_eventdev.h             | 26 +++++++++++++-------------
 4 files changed, 34 insertions(+), 34 deletions(-)
  

Comments

David Marchand July 4, 2019, 11:34 a.m. UTC | #1
We have fixes for different releases, expect the stable maintainers to ask
for help :-)


On Thu, Jul 4, 2019 at 12:04 PM Andrew Rybchenko <arybchenko@solarflare.com>
wrote:

> From: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru>
>
> Fixes: c9bf83947e2e ("eventdev: add eth Tx adapter APIs")
>

v18.11-rc1~724

Fixes: 47d05b292820 ("eventdev: add timer adapter common code")
>

v18.05-rc1~462


> Fixes: 6750b21bd6af ("eventdev: add default software timer adapter")
>

v18.05-rc1~460


> Fixes: c75f7897ea35 ("eventdev: set error code in port link/unlink
> functions")
>

v18.02-rc1~202


> Fixes: 7d1acc9dde93 ("eventdev: introduce helper function for enqueue
> burst")
>

v17.08-rc1~90

Fixes: 406aed4e0dd9 ("eventdev: add errno-style return values")
>

v17.05-rc1~166


> Fixes: c64e1b7b20d2 ("eventdev: add new software event timer adapter")
>

This last sha1 c64e1b7b20d2 is unknown to my git.
Please, can you double check?


Cc: stable@dpdk.org
>
> Signed-off-by: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru>
> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
> ---
>  lib/librte_eventdev/rte_event_eth_tx_adapter.h |  8 ++++----
>  lib/librte_eventdev/rte_event_timer_adapter.c  | 18 +++++++++---------
>  lib/librte_eventdev/rte_eventdev.c             | 16 ++++++++--------
>  lib/librte_eventdev/rte_eventdev.h             | 26
> +++++++++++++-------------
>  4 files changed, 34 insertions(+), 34 deletions(-)
>
> diff --git a/lib/librte_eventdev/rte_event_eth_tx_adapter.h
> b/lib/librte_eventdev/rte_event_eth_tx_adapter.h
> index 9bed12b..c848261 100644
> --- a/lib/librte_eventdev/rte_event_eth_tx_adapter.h
> +++ b/lib/librte_eventdev/rte_event_eth_tx_adapter.h
> @@ -332,10 +332,10 @@ struct rte_event_eth_tx_adapter_stats {
>   *   *rte_event*. If the return value is less than *nb_events*, the
> remaining
>   *   events at the end of ev[] are not consumed and the caller has to
> take care
>   *   of them, and rte_errno is set accordingly. Possible errno values
> include:
> - *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's
> queue
> + *   - EINVAL   The port ID is invalid, device ID is invalid, an event's
> queue
>   *              ID is invalid, or an event's sched type doesn't match the
>   *              capabilities of the destination queue.
> - *   - -ENOSPC  The event port was backpressured and unable to enqueue
> + *   - ENOSPC   The event port was backpressured and unable to enqueue
>   *              one or more events. This error code is only applicable to
>   *              closed systems.
>   */
> @@ -350,12 +350,12 @@ struct rte_event_eth_tx_adapter_stats {
>  #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
>         if (dev_id >= RTE_EVENT_MAX_DEVS ||
>                 !rte_eventdevs[dev_id].attached) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>
>         if (port_id >= dev->data->nb_ports) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>  #endif
> diff --git a/lib/librte_eventdev/rte_event_timer_adapter.c
> b/lib/librte_eventdev/rte_event_timer_adapter.c
> index 459bc47..5ce399e 100644
> --- a/lib/librte_eventdev/rte_event_timer_adapter.c
> +++ b/lib/librte_eventdev/rte_event_timer_adapter.c
> @@ -192,17 +192,17 @@ struct rte_event_timer_adapter *
>                                                    &adapter->data->caps,
>                                                    &adapter->ops);
>         if (ret < 0) {
> -               rte_errno = ret;
> +               rte_errno = -ret;
>                 goto free_memzone;
>         }
>
>         if (!(adapter->data->caps &
>               RTE_EVENT_TIMER_ADAPTER_CAP_INTERNAL_PORT)) {
> -               FUNC_PTR_OR_NULL_RET_WITH_ERRNO(conf_cb, -EINVAL);
> +               FUNC_PTR_OR_NULL_RET_WITH_ERRNO(conf_cb, EINVAL);
>                 ret = conf_cb(adapter->data->id,
> adapter->data->event_dev_id,
>                               &adapter->data->event_port_id, conf_arg);
>                 if (ret < 0) {
> -                       rte_errno = ret;
> +                       rte_errno = -ret;
>                         goto free_memzone;
>                 }
>         }
> @@ -214,10 +214,10 @@ struct rte_event_timer_adapter *
>                 adapter->ops = &swtim_ops;
>
>         /* Allow driver to do some setup */
> -       FUNC_PTR_OR_NULL_RET_WITH_ERRNO(adapter->ops->init, -ENOTSUP);
> +       FUNC_PTR_OR_NULL_RET_WITH_ERRNO(adapter->ops->init, ENOTSUP);
>         ret = adapter->ops->init(adapter);
>         if (ret < 0) {
> -               rte_errno = ret;
> +               rte_errno = -ret;
>                 goto free_memzone;
>         }
>
> @@ -509,11 +509,11 @@ struct event_buffer {
>         *nb_events_flushed = rte_event_enqueue_burst(dev_id, port_id,
>                                                      &events[tail_idx], n);
>         if (*nb_events_flushed != n) {
> -               if (rte_errno == -EINVAL) {
> +               if (rte_errno == EINVAL) {
>                         EVTIM_LOG_ERR("failed to enqueue invalid event - "
>                                       "dropping it");
>                         (*nb_events_inv)++;
> -               } else if (rte_errno == -ENOSPC)
> +               } else if (rte_errno == ENOSPC)
>                         rte_pause();
>         }
>
> @@ -832,7 +832,7 @@ struct swtim {
>         if (ret < 0) {
>                 if (ret != -EALREADY) {
>                         EVTIM_LOG_ERR("failed to initialize timer
> subsystem");
> -                       rte_errno = ret;
> +                       rte_errno = -ret;
>                         goto free_mempool;
>                 }
>         }
> @@ -840,7 +840,7 @@ struct swtim {
>         ret = rte_timer_data_alloc(&sw->timer_data_id);
>         if (ret < 0) {
>                 EVTIM_LOG_ERR("failed to allocate timer data instance");
> -               rte_errno = ret;
> +               rte_errno = -ret;
>                 goto free_mempool;
>         }
>
> diff --git a/lib/librte_eventdev/rte_eventdev.c
> b/lib/librte_eventdev/rte_eventdev.c
> index cc3199f..f44c869 100644
> --- a/lib/librte_eventdev/rte_eventdev.c
> +++ b/lib/librte_eventdev/rte_eventdev.c
> @@ -889,18 +889,18 @@
>         uint16_t *links_map;
>         int i, diag;
>
> -       RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, -EINVAL, 0);
> +       RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, EINVAL, 0);
>         dev = &rte_eventdevs[dev_id];
>
>         if (*dev->dev_ops->port_link == NULL) {
>                 RTE_EDEV_LOG_ERR("Function not supported\n");
> -               rte_errno = -ENOTSUP;
> +               rte_errno = ENOTSUP;
>                 return 0;
>         }
>
>         if (!is_valid_port(dev, port_id)) {
>                 RTE_EDEV_LOG_ERR("Invalid port_id=%" PRIu8, port_id);
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>
> @@ -921,7 +921,7 @@
>
>         for (i = 0; i < nb_links; i++)
>                 if (queues[i] >= dev->data->nb_queues) {
> -                       rte_errno = -EINVAL;
> +                       rte_errno = EINVAL;
>                         return 0;
>                 }
>
> @@ -948,18 +948,18 @@
>         int i, diag, j;
>         uint16_t *links_map;
>
> -       RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, -EINVAL, 0);
> +       RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, EINVAL, 0);
>         dev = &rte_eventdevs[dev_id];
>
>         if (*dev->dev_ops->port_unlink == NULL) {
>                 RTE_EDEV_LOG_ERR("Function not supported");
> -               rte_errno = -ENOTSUP;
> +               rte_errno = ENOTSUP;
>                 return 0;
>         }
>
>         if (!is_valid_port(dev, port_id)) {
>                 RTE_EDEV_LOG_ERR("Invalid port_id=%" PRIu8, port_id);
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>
> @@ -988,7 +988,7 @@
>         nb_unlinks = j;
>         for (i = 0; i < nb_unlinks; i++)
>                 if (queues[i] >= dev->data->nb_queues) {
> -                       rte_errno = -EINVAL;
> +                       rte_errno = EINVAL;
>                         return 0;
>                 }
>
> diff --git a/lib/librte_eventdev/rte_eventdev.h
> b/lib/librte_eventdev/rte_eventdev.h
> index 927f43c..5044a13 100644
> --- a/lib/librte_eventdev/rte_eventdev.h
> +++ b/lib/librte_eventdev/rte_eventdev.h
> @@ -1318,12 +1318,12 @@ struct rte_eventdev {
>
>  #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
>         if (dev_id >= RTE_EVENT_MAX_DEVS ||
> !rte_eventdevs[dev_id].attached) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>
>         if (port_id >= dev->data->nb_ports) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>  #endif
> @@ -1372,10 +1372,10 @@ struct rte_eventdev {
>   *   *rte_event*. If the return value is less than *nb_events*, the
> remaining
>   *   events at the end of ev[] are not consumed and the caller has to
> take care
>   *   of them, and rte_errno is set accordingly. Possible errno values
> include:
> - *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's
> queue
> + *   - EINVAL   The port ID is invalid, device ID is invalid, an event's
> queue
>   *              ID is invalid, or an event's sched type doesn't match the
>   *              capabilities of the destination queue.
> - *   - -ENOSPC  The event port was backpressured and unable to enqueue
> + *   - ENOSPC   The event port was backpressured and unable to enqueue
>   *              one or more events. This error code is only applicable to
>   *              closed systems.
>   * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
> @@ -1422,10 +1422,10 @@ struct rte_eventdev {
>   *   *rte_event*. If the return value is less than *nb_events*, the
> remaining
>   *   events at the end of ev[] are not consumed and the caller has to
> take care
>   *   of them, and rte_errno is set accordingly. Possible errno values
> include:
> - *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's
> queue
> + *   - EINVAL   The port ID is invalid, device ID is invalid, an event's
> queue
>   *              ID is invalid, or an event's sched type doesn't match the
>   *              capabilities of the destination queue.
> - *   - -ENOSPC  The event port was backpressured and unable to enqueue
> + *   - ENOSPC   The event port was backpressured and unable to enqueue
>   *              one or more events. This error code is only applicable to
>   *              closed systems.
>   * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
> @@ -1473,10 +1473,10 @@ struct rte_eventdev {
>   *   *rte_event*. If the return value is less than *nb_events*, the
> remaining
>   *   events at the end of ev[] are not consumed and the caller has to
> take care
>   *   of them, and rte_errno is set accordingly. Possible errno values
> include:
> - *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's
> queue
> + *   - EINVAL   The port ID is invalid, device ID is invalid, an event's
> queue
>   *              ID is invalid, or an event's sched type doesn't match the
>   *              capabilities of the destination queue.
> - *   - -ENOSPC  The event port was backpressured and unable to enqueue
> + *   - ENOSPC   The event port was backpressured and unable to enqueue
>   *              one or more events. This error code is only applicable to
>   *              closed systems.
>   * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
> @@ -1595,12 +1595,12 @@ struct rte_eventdev {
>
>  #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
>         if (dev_id >= RTE_EVENT_MAX_DEVS ||
> !rte_eventdevs[dev_id].attached) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>
>         if (port_id >= dev->data->nb_ports) {
> -               rte_errno = -EINVAL;
> +               rte_errno = EINVAL;
>                 return 0;
>         }
>  #endif
> @@ -1673,9 +1673,9 @@ struct rte_eventdev {
>   * of link[] are not established, and the caller has to take care of them.
>   * If return value is less than *nb_links* then implementation shall
> update the
>   * rte_errno accordingly, Possible rte_errno values are
> - * (-EDQUOT) Quota exceeded(Application tried to link the queue
> configured with
> + * (EDQUOT) Quota exceeded(Application tried to link the queue configured
> with
>   *  RTE_EVENT_QUEUE_CFG_SINGLE_LINK to more than one event ports)
> - * (-EINVAL) Invalid parameter
> + * (EINVAL) Invalid parameter
>   *
>   */
>  int
> @@ -1720,7 +1720,7 @@ struct rte_eventdev {
>   * end of queues[] are not unlinked, and the caller has to take care of
> them.
>   * If return value is less than *nb_unlinks* then implementation shall
> update
>   * the rte_errno accordingly, Possible rte_errno values are
> - * (-EINVAL) Invalid parameter
> + * (EINVAL) Invalid parameter
>   */
>  int
>  rte_event_port_unlink(uint8_t dev_id, uint8_t port_id,
> --
> 1.8.3.1
>
>
Reviewed-by: David Marchand <david.marchand@redhat.com>
  
Andrew Rybchenko July 4, 2019, 11:56 a.m. UTC | #2
On 04.07.2019 14:34, David Marchand wrote:
>
> We have fixes for different releases, expect the stable maintainers to 
> ask for help :-)
>
>
> On Thu, Jul 4, 2019 at 12:04 PM Andrew Rybchenko 
> <arybchenko@solarflare.com <mailto:arybchenko@solarflare.com>> wrote:
>
>     From: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru
>     <mailto:Dilshod.Urazov@oktetlabs.ru>>
>
>     Fixes: c9bf83947e2e ("eventdev: add eth Tx adapter APIs")
>
>
> v18.11-rc1~724
>
>     Fixes: 47d05b292820 ("eventdev: add timer adapter common code")
>
>
> v18.05-rc1~462
>
>     Fixes: 6750b21bd6af ("eventdev: add default software timer adapter")
>
>
> v18.05-rc1~460
>
>     Fixes: c75f7897ea35 ("eventdev: set error code in port link/unlink
>     functions")
>
>
> v18.02-rc1~202
>
>     Fixes: 7d1acc9dde93 ("eventdev: introduce helper function for
>     enqueue burst")
>
>
> v17.08-rc1~90
>
>     Fixes: 406aed4e0dd9 ("eventdev: add errno-style return values")
>
>
> v17.05-rc1~166
>
>     Fixes: c64e1b7b20d2 ("eventdev: add new software event timer adapter")
>
>
> This last sha1 c64e1b7b20d2 is unknown to my git.
> Please, can you double check?

The patch is for dpdk-next-eventdev tree and this changeset was ther
(but not in main dpdk repo yet).


>
>     Cc: stable@dpdk.org <mailto:stable@dpdk.org>
>
>     Signed-off-by: Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru
>     <mailto:Dilshod.Urazov@oktetlabs.ru>>
>     Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com
>     <mailto:arybchenko@solarflare.com>>
>

[...]

>
> Reviewed-by: David Marchand <david.marchand@redhat.com 
> <mailto:david.marchand@redhat.com>>

Many thanks for review.
  
David Marchand July 4, 2019, 11:58 a.m. UTC | #3
On Thu, Jul 4, 2019 at 1:56 PM Andrew Rybchenko <arybchenko@solarflare.com>
wrote:

> On 04.07.2019 14:34, David Marchand wrote:
> >     Fixes: c64e1b7b20d2 ("eventdev: add new software event timer
> adapter")
> >
> >
> > This last sha1 c64e1b7b20d2 is unknown to my git.
> > Please, can you double check?
>
> The patch is for dpdk-next-eventdev tree and this changeset was ther
> (but not in main dpdk repo yet).
>

If it's still in the eventdev tree, how about fixing it now before the pull?
  
Jerin Jacob Kollanukkaran July 4, 2019, 12:13 p.m. UTC | #4
From: David Marchand <david.marchand@redhat.com>
Sent: Thursday, July 4, 2019 5:29 PM
To: Andrew Rybchenko <arybchenko@solarflare.com>
Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Nikhil Rao <nikhil.rao@intel.com>; Erik Gabriel Carrillo <erik.g.carrillo@intel.com>; dev <dev@dpdk.org>; Dilshod Urazov <Dilshod.Urazov@oktetlabs.ru>; dpdk stable <stable@dpdk.org>
Subject: [EXT] Re: [dpdk-stable] [PATCH 1/3] eventdev: fix to set positive rte_errno


On Thu, Jul 4, 2019 at 1:56 PM Andrew Rybchenko <arybchenko@solarflare.com<mailto:arybchenko@solarflare.com>> wrote:
On 04.07.2019 14:34, David Marchand wrote:
>     Fixes: c64e1b7b20d2 ("eventdev: add new software event timer adapter")
>
>
> This last sha1 c64e1b7b20d2 is unknown to my git.
> Please, can you double check?

The patch is for dpdk-next-eventdev tree and this changeset was ther
(but not in main dpdk repo yet).

If it's still in the eventdev tree, how about fixing it now before the pull?

[Jerin] it is not in eventdev tree(the patches got merged). I will fix sha id on apply. No need to send separate patch for it


--
David Marchand
  

Patch

diff --git a/lib/librte_eventdev/rte_event_eth_tx_adapter.h b/lib/librte_eventdev/rte_event_eth_tx_adapter.h
index 9bed12b..c848261 100644
--- a/lib/librte_eventdev/rte_event_eth_tx_adapter.h
+++ b/lib/librte_eventdev/rte_event_eth_tx_adapter.h
@@ -332,10 +332,10 @@  struct rte_event_eth_tx_adapter_stats {
  *   *rte_event*. If the return value is less than *nb_events*, the remaining
  *   events at the end of ev[] are not consumed and the caller has to take care
  *   of them, and rte_errno is set accordingly. Possible errno values include:
- *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's queue
+ *   - EINVAL   The port ID is invalid, device ID is invalid, an event's queue
  *              ID is invalid, or an event's sched type doesn't match the
  *              capabilities of the destination queue.
- *   - -ENOSPC  The event port was backpressured and unable to enqueue
+ *   - ENOSPC   The event port was backpressured and unable to enqueue
  *              one or more events. This error code is only applicable to
  *              closed systems.
  */
@@ -350,12 +350,12 @@  struct rte_event_eth_tx_adapter_stats {
 #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
 	if (dev_id >= RTE_EVENT_MAX_DEVS ||
 		!rte_eventdevs[dev_id].attached) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 
 	if (port_id >= dev->data->nb_ports) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 #endif
diff --git a/lib/librte_eventdev/rte_event_timer_adapter.c b/lib/librte_eventdev/rte_event_timer_adapter.c
index 459bc47..5ce399e 100644
--- a/lib/librte_eventdev/rte_event_timer_adapter.c
+++ b/lib/librte_eventdev/rte_event_timer_adapter.c
@@ -192,17 +192,17 @@  struct rte_event_timer_adapter *
 						   &adapter->data->caps,
 						   &adapter->ops);
 	if (ret < 0) {
-		rte_errno = ret;
+		rte_errno = -ret;
 		goto free_memzone;
 	}
 
 	if (!(adapter->data->caps &
 	      RTE_EVENT_TIMER_ADAPTER_CAP_INTERNAL_PORT)) {
-		FUNC_PTR_OR_NULL_RET_WITH_ERRNO(conf_cb, -EINVAL);
+		FUNC_PTR_OR_NULL_RET_WITH_ERRNO(conf_cb, EINVAL);
 		ret = conf_cb(adapter->data->id, adapter->data->event_dev_id,
 			      &adapter->data->event_port_id, conf_arg);
 		if (ret < 0) {
-			rte_errno = ret;
+			rte_errno = -ret;
 			goto free_memzone;
 		}
 	}
@@ -214,10 +214,10 @@  struct rte_event_timer_adapter *
 		adapter->ops = &swtim_ops;
 
 	/* Allow driver to do some setup */
-	FUNC_PTR_OR_NULL_RET_WITH_ERRNO(adapter->ops->init, -ENOTSUP);
+	FUNC_PTR_OR_NULL_RET_WITH_ERRNO(adapter->ops->init, ENOTSUP);
 	ret = adapter->ops->init(adapter);
 	if (ret < 0) {
-		rte_errno = ret;
+		rte_errno = -ret;
 		goto free_memzone;
 	}
 
@@ -509,11 +509,11 @@  struct event_buffer {
 	*nb_events_flushed = rte_event_enqueue_burst(dev_id, port_id,
 						     &events[tail_idx], n);
 	if (*nb_events_flushed != n) {
-		if (rte_errno == -EINVAL) {
+		if (rte_errno == EINVAL) {
 			EVTIM_LOG_ERR("failed to enqueue invalid event - "
 				      "dropping it");
 			(*nb_events_inv)++;
-		} else if (rte_errno == -ENOSPC)
+		} else if (rte_errno == ENOSPC)
 			rte_pause();
 	}
 
@@ -832,7 +832,7 @@  struct swtim {
 	if (ret < 0) {
 		if (ret != -EALREADY) {
 			EVTIM_LOG_ERR("failed to initialize timer subsystem");
-			rte_errno = ret;
+			rte_errno = -ret;
 			goto free_mempool;
 		}
 	}
@@ -840,7 +840,7 @@  struct swtim {
 	ret = rte_timer_data_alloc(&sw->timer_data_id);
 	if (ret < 0) {
 		EVTIM_LOG_ERR("failed to allocate timer data instance");
-		rte_errno = ret;
+		rte_errno = -ret;
 		goto free_mempool;
 	}
 
diff --git a/lib/librte_eventdev/rte_eventdev.c b/lib/librte_eventdev/rte_eventdev.c
index cc3199f..f44c869 100644
--- a/lib/librte_eventdev/rte_eventdev.c
+++ b/lib/librte_eventdev/rte_eventdev.c
@@ -889,18 +889,18 @@ 
 	uint16_t *links_map;
 	int i, diag;
 
-	RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, -EINVAL, 0);
+	RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, EINVAL, 0);
 	dev = &rte_eventdevs[dev_id];
 
 	if (*dev->dev_ops->port_link == NULL) {
 		RTE_EDEV_LOG_ERR("Function not supported\n");
-		rte_errno = -ENOTSUP;
+		rte_errno = ENOTSUP;
 		return 0;
 	}
 
 	if (!is_valid_port(dev, port_id)) {
 		RTE_EDEV_LOG_ERR("Invalid port_id=%" PRIu8, port_id);
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 
@@ -921,7 +921,7 @@ 
 
 	for (i = 0; i < nb_links; i++)
 		if (queues[i] >= dev->data->nb_queues) {
-			rte_errno = -EINVAL;
+			rte_errno = EINVAL;
 			return 0;
 		}
 
@@ -948,18 +948,18 @@ 
 	int i, diag, j;
 	uint16_t *links_map;
 
-	RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, -EINVAL, 0);
+	RTE_EVENTDEV_VALID_DEVID_OR_ERRNO_RET(dev_id, EINVAL, 0);
 	dev = &rte_eventdevs[dev_id];
 
 	if (*dev->dev_ops->port_unlink == NULL) {
 		RTE_EDEV_LOG_ERR("Function not supported");
-		rte_errno = -ENOTSUP;
+		rte_errno = ENOTSUP;
 		return 0;
 	}
 
 	if (!is_valid_port(dev, port_id)) {
 		RTE_EDEV_LOG_ERR("Invalid port_id=%" PRIu8, port_id);
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 
@@ -988,7 +988,7 @@ 
 	nb_unlinks = j;
 	for (i = 0; i < nb_unlinks; i++)
 		if (queues[i] >= dev->data->nb_queues) {
-			rte_errno = -EINVAL;
+			rte_errno = EINVAL;
 			return 0;
 		}
 
diff --git a/lib/librte_eventdev/rte_eventdev.h b/lib/librte_eventdev/rte_eventdev.h
index 927f43c..5044a13 100644
--- a/lib/librte_eventdev/rte_eventdev.h
+++ b/lib/librte_eventdev/rte_eventdev.h
@@ -1318,12 +1318,12 @@  struct rte_eventdev {
 
 #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
 	if (dev_id >= RTE_EVENT_MAX_DEVS || !rte_eventdevs[dev_id].attached) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 
 	if (port_id >= dev->data->nb_ports) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 #endif
@@ -1372,10 +1372,10 @@  struct rte_eventdev {
  *   *rte_event*. If the return value is less than *nb_events*, the remaining
  *   events at the end of ev[] are not consumed and the caller has to take care
  *   of them, and rte_errno is set accordingly. Possible errno values include:
- *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's queue
+ *   - EINVAL   The port ID is invalid, device ID is invalid, an event's queue
  *              ID is invalid, or an event's sched type doesn't match the
  *              capabilities of the destination queue.
- *   - -ENOSPC  The event port was backpressured and unable to enqueue
+ *   - ENOSPC   The event port was backpressured and unable to enqueue
  *              one or more events. This error code is only applicable to
  *              closed systems.
  * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
@@ -1422,10 +1422,10 @@  struct rte_eventdev {
  *   *rte_event*. If the return value is less than *nb_events*, the remaining
  *   events at the end of ev[] are not consumed and the caller has to take care
  *   of them, and rte_errno is set accordingly. Possible errno values include:
- *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's queue
+ *   - EINVAL   The port ID is invalid, device ID is invalid, an event's queue
  *              ID is invalid, or an event's sched type doesn't match the
  *              capabilities of the destination queue.
- *   - -ENOSPC  The event port was backpressured and unable to enqueue
+ *   - ENOSPC   The event port was backpressured and unable to enqueue
  *              one or more events. This error code is only applicable to
  *              closed systems.
  * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
@@ -1473,10 +1473,10 @@  struct rte_eventdev {
  *   *rte_event*. If the return value is less than *nb_events*, the remaining
  *   events at the end of ev[] are not consumed and the caller has to take care
  *   of them, and rte_errno is set accordingly. Possible errno values include:
- *   - -EINVAL  The port ID is invalid, device ID is invalid, an event's queue
+ *   - EINVAL   The port ID is invalid, device ID is invalid, an event's queue
  *              ID is invalid, or an event's sched type doesn't match the
  *              capabilities of the destination queue.
- *   - -ENOSPC  The event port was backpressured and unable to enqueue
+ *   - ENOSPC   The event port was backpressured and unable to enqueue
  *              one or more events. This error code is only applicable to
  *              closed systems.
  * @see rte_event_port_attr_get(), RTE_EVENT_PORT_ATTR_ENQ_DEPTH
@@ -1595,12 +1595,12 @@  struct rte_eventdev {
 
 #ifdef RTE_LIBRTE_EVENTDEV_DEBUG
 	if (dev_id >= RTE_EVENT_MAX_DEVS || !rte_eventdevs[dev_id].attached) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 
 	if (port_id >= dev->data->nb_ports) {
-		rte_errno = -EINVAL;
+		rte_errno = EINVAL;
 		return 0;
 	}
 #endif
@@ -1673,9 +1673,9 @@  struct rte_eventdev {
  * of link[] are not established, and the caller has to take care of them.
  * If return value is less than *nb_links* then implementation shall update the
  * rte_errno accordingly, Possible rte_errno values are
- * (-EDQUOT) Quota exceeded(Application tried to link the queue configured with
+ * (EDQUOT) Quota exceeded(Application tried to link the queue configured with
  *  RTE_EVENT_QUEUE_CFG_SINGLE_LINK to more than one event ports)
- * (-EINVAL) Invalid parameter
+ * (EINVAL) Invalid parameter
  *
  */
 int
@@ -1720,7 +1720,7 @@  struct rte_eventdev {
  * end of queues[] are not unlinked, and the caller has to take care of them.
  * If return value is less than *nb_unlinks* then implementation shall update
  * the rte_errno accordingly, Possible rte_errno values are
- * (-EINVAL) Invalid parameter
+ * (EINVAL) Invalid parameter
  */
 int
 rte_event_port_unlink(uint8_t dev_id, uint8_t port_id,