[dpdk-dev] event/octeontx: fix missing enqueue smp barrier

Message ID 20170609131603.13483-1-jerin.jacob@caviumnetworks.com (mailing list archive)
State Accepted, archived
Delegated to: Jerin Jacob
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Jerin Jacob June 9, 2017, 1:16 p.m. UTC
  Typically RTE_EVENT_OP_NEW issued by the producer
lcore. To reflect the write changes issued by the
producer lcore on worker lcore, an SMP write barrier
is required on producer enqueue. Fixing the missing
rte_smp_wmb() on enqueue with RTE_EVENT_OP_NEW.

CC: stable@dpdk.org
Fixes: f10d322eff76 ("event/octeontx: support worker enqueue")

Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
---
 drivers/event/octeontx/ssovf_worker.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

Eads, Gage June 13, 2017, 11:06 p.m. UTC | #1
>  -----Original Message-----
>  From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com]
>  Sent: Friday, June 9, 2017 8:16 AM
>  To: dev@dpdk.org
>  Cc: hemant.agrawal@nxp.com; Eads, Gage <gage.eads@intel.com>; Van
>  Haaren, Harry <harry.van.haaren@intel.com>; Jerin Jacob
>  <jerin.jacob@caviumnetworks.com>; stable@dpdk.org
>  Subject: [dpdk-dev] [PATCH] event/octeontx: fix missing enqueue smp barrier
>  
>  Typically RTE_EVENT_OP_NEW issued by the producer lcore. To reflect the
>  write changes issued by the producer lcore on worker lcore, an SMP write
>  barrier is required on producer enqueue. Fixing the missing
>  rte_smp_wmb() on enqueue with RTE_EVENT_OP_NEW.
>  
>  CC: stable@dpdk.org
>  Fixes: f10d322eff76 ("event/octeontx: support worker enqueue")
>  
>  Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>

Acked-by: Gage Eads <gage.eads@intel.com>
  
Jerin Jacob June 20, 2017, 2:19 p.m. UTC | #2
-----Original Message-----
> Date: Tue, 13 Jun 2017 23:06:54 +0000
> From: "Eads, Gage" <gage.eads@intel.com>
> To: Jerin Jacob <jerin.jacob@caviumnetworks.com>, "dev@dpdk.org"
>  <dev@dpdk.org>
> CC: "hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>, "Van Haaren, Harry"
>  <harry.van.haaren@intel.com>, "stable@dpdk.org" <stable@dpdk.org>
> Subject: RE: [dpdk-dev] [PATCH] event/octeontx: fix missing enqueue smp
>  barrier
> 
> 
> 
> >  -----Original Message-----
> >  From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com]
> >  Sent: Friday, June 9, 2017 8:16 AM
> >  To: dev@dpdk.org
> >  Cc: hemant.agrawal@nxp.com; Eads, Gage <gage.eads@intel.com>; Van
> >  Haaren, Harry <harry.van.haaren@intel.com>; Jerin Jacob
> >  <jerin.jacob@caviumnetworks.com>; stable@dpdk.org
> >  Subject: [dpdk-dev] [PATCH] event/octeontx: fix missing enqueue smp barrier
> >  
> >  Typically RTE_EVENT_OP_NEW issued by the producer lcore. To reflect the
> >  write changes issued by the producer lcore on worker lcore, an SMP write
> >  barrier is required on producer enqueue. Fixing the missing
> >  rte_smp_wmb() on enqueue with RTE_EVENT_OP_NEW.
> >  
> >  CC: stable@dpdk.org
> >  Fixes: f10d322eff76 ("event/octeontx: support worker enqueue")
> >  
> >  Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> 
> Acked-by: Gage Eads <gage.eads@intel.com>

Applied to dpdk-next-eventdev/master. Thanks.
  

Patch

diff --git a/drivers/event/octeontx/ssovf_worker.c b/drivers/event/octeontx/ssovf_worker.c
index ad3fe684d..74e89015d 100644
--- a/drivers/event/octeontx/ssovf_worker.c
+++ b/drivers/event/octeontx/ssovf_worker.c
@@ -179,6 +179,7 @@  ssows_enq(void *port, const struct rte_event *ev)
 
 	switch (ev->op) {
 	case RTE_EVENT_OP_NEW:
+		rte_smp_wmb();
 		ssows_new_event(ws, ev);
 		break;
 	case RTE_EVENT_OP_FORWARD: