Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Ola Liljedahl
; > ; dev@dpdk.org > > Cc: olivier.m...@6wind.com; step...@networkplumber.org; nd > > ; Richardson, Bruce ; > > arybche...@solarflare.com; Ananyev, Konstantin > > > > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking > >

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Eads, Gage
gt; Richardson, Bruce ; arybche...@solarflare.com; > Ananyev, Konstantin > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation > > On Fri, 2019-01-25 at 17:21 +, Eads, Gage wrote: > > > -Original Message- > > > From: Ola

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Eads, Gage
on, Bruce ; > arybche...@solarflare.com; Ananyev, Konstantin > > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation > > On Fri, 2019-01-25 at 17:21 +, Eads, Gage wrote: > > > > > > > > -Original Message- > > > Fro

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Ola Liljedahl
On Mon, 2019-01-28 at 14:04 +, Jerin Jacob Kollanukkaran wrote: > > Does PPC (64-bit POWER?) have support for double-word (128-bit) CAS? > > I dont know, I was telling wrt in general C11 mem model for PPC. Sorry, I misunderstood. -- Ola Liljedahl, Networking System Architect, Arm Phone +4670

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Jerin Jacob Kollanukkaran
a.liljed...@arm.com] > > > > Sent: Wednesday, January 23, 2019 4:16 AM > > > > To: Eads, Gage ; dev@dpdk.org > > > > Cc: olivier.m...@6wind.com; step...@networkplumber.org; nd > > > > ; Richardson, Bruce ; > > > > arybche...@solarflare.com; Ananyev

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Ola Liljedahl
January 23, 2019 4:16 AM > > > To: Eads, Gage ; dev@dpdk.org > > > Cc: olivier.m...@6wind.com; step...@networkplumber.org; nd > > > ; Richardson, Bruce ; > > > arybche...@solarflare.com; Ananyev, Konstantin > > > > > >

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Jerin Jacob Kollanukkaran
umber.org; nd > > ; Richardson, Bruce ; > > arybche...@solarflare.com; Ananyev, Konstantin > > > > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking > > implementation > > > > s. > > > > > > > You can tell this code was

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-28 Thread Ola Liljedahl
ind.com; step...@networkplumber.org; nd > > ; Richardson, Bruce ; > > arybche...@solarflare.com; Ananyev, Konstantin > > > > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking > > implementation > > &

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-25 Thread Eads, Gage
; Ananyev, Konstantin > > Subject: Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation > > On Tue, 2019-01-22 at 21:31 +, Eads, Gage wrote: > > Hi Ola, > > > > > > > > > > > > > > > > > @@ -331,6

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-23 Thread Ola Liljedahl
On Tue, 2019-01-22 at 21:31 +, Eads, Gage wrote: > Hi Ola, > > > > > > > > > > > @@ -331,6 +433,319 @@ void rte_ring_dump(FILE *f, const struct > > > rte_ring *r); > > >  #endif > > >  #include "rte_ring_generic_64.h" > > > > > > +/* @internal 128-bit structure used by the non-blocking ri

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-22 Thread Eads, Gage
Hi Ola, > > @@ -331,6 +433,319 @@ void rte_ring_dump(FILE *f, const struct > > rte_ring *r); > >  #endif > >  #include "rte_ring_generic_64.h" > > > > +/* @internal 128-bit structure used by the non-blocking ring */ > > +struct nb_ring_entry { > > + void *ptr; /**< Data pointer */ > > + uint

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-22 Thread Ola Liljedahl
(resending without the confidential footer, think I figured it out, ignore the previous email from me in this thread) -- Ola On Fri, 2019-01-18 at 09:23 -0600, Gage Eads wrote: > This commit adds support for non-blocking circular ring enqueue and dequeue > functions. The ring uses a 128-bit compa

Re: [dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-22 Thread Ola Liljedahl
On Fri, 2019-01-18 at 09:23 -0600, Gage Eads wrote: > This commit adds support for non-blocking circular ring enqueue and > dequeue > functions. The ring uses a 128-bit compare-and-swap instruction, and > thus > is currently limited to x86_64. > > The algorithm is based on the original rte ring (de

[dpdk-dev] [PATCH v3 2/5] ring: add a non-blocking implementation

2019-01-18 Thread Gage Eads
This commit adds support for non-blocking circular ring enqueue and dequeue functions. The ring uses a 128-bit compare-and-swap instruction, and thus is currently limited to x86_64. The algorithm is based on the original rte ring (derived from FreeBSD's bufring.h) and inspired by Michael and Scott