From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Mattias=20R=C3=B6nnblom?= Subject: [PATCH] eventdev: fix incorrect MP/MC tail updates in rte_event_ring Date: Tue, 3 Apr 2018 10:19:03 +0200 Message-ID: <1522743543-7974-1-git-send-email-hofors@lysator.liu.se> References: <1522228611-4838-1-git-send-email-hofors@lysator.liu.se> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: jerin.jacob@caviumnetworks.com, =?UTF-8?q?Mattias=20R=C3=B6nnblom?= , bruce.richardson@intel.com To: dev@dpdk.org Return-path: Received: from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3]) by dpdk.org (Postfix) with ESMTP id 73AEC1B673 for ; Tue, 3 Apr 2018 10:19:45 +0200 (CEST) Received: from mail.lysator.liu.se (localhost [127.0.0.1]) by mail.lysator.liu.se (Postfix) with ESMTP id 3E3B740036 for ; Tue, 3 Apr 2018 10:19:44 +0200 (CEST) In-Reply-To: <1522228611-4838-1-git-send-email-hofors@lysator.liu.se> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" rte_event_ring enqueue and dequeue tail updates were hardcoded for a SC/SP configuration. Fixes: dc39e2f359b5 ("eventdev: add ring structure for events") Cc: bruce.richardson@intel.com Signed-off-by: Mattias Rönnblom v2: * Fixed issue with update_tail() parameter order. --- lib/librte_eventdev/rte_event_ring.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/librte_eventdev/rte_event_ring.h b/lib/librte_eventdev/rte_event_ring.h index 29d4228..827a320 100644 --- a/lib/librte_eventdev/rte_event_ring.h +++ b/lib/librte_eventdev/rte_event_ring.h @@ -99,7 +99,7 @@ rte_event_ring_enqueue_burst(struct rte_event_ring *r, ENQUEUE_PTRS(&r->r, &r[1], prod_head, events, n, struct rte_event); - update_tail(&r->r.prod, prod_head, prod_next, 1, 1); + update_tail(&r->r.prod, prod_head, prod_next, r->r.prod.single, 1); end: if (free_space != NULL) *free_space = free_entries - n; @@ -140,7 +140,7 @@ rte_event_ring_dequeue_burst(struct rte_event_ring *r, DEQUEUE_PTRS(&r->r, &r[1], cons_head, events, n, struct rte_event); - update_tail(&r->r.cons, cons_head, cons_next, 1, 0); + update_tail(&r->r.cons, cons_head, cons_next, r->r.cons.single, 0); end: if (available != NULL) -- 2.7.4