> -----Original Message----- > From: dev [mailto:dev-boun...@openvswitch.org] On Behalf Of Mauricio Vásquez > Sent: Wednesday, November 11, 2015 8:23 AM > To: dev@openvswitch.org > Subject: [ovs-dev] [PATCH] netdev-dpdk: Modify rings creation attributes > > Although netdev does explicit locking, it is only valid from the ovs > perspective, then only the ring ends used by ovs should be declared as > single producer / single consumer. > The other ends that are used by the application should be declared as > multiple producer / multiple consumer that is the most general case.
LGTM. It would have a slight performance impact where multi producer/consumer is not needed, but on balance gives more flexibility and reduces the chance of a difficult to find bug. > > Please ignore previous patch that was bad-formatted. > (http://openvswitch.org/pipermail/dev/2015-November/062079.html) > > Signed-off-by: Mauricio Vasquez B <mauricio.vasquezber...@studenti.polito.it> > > --- > lib/netdev-dpdk.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c > index 4658416..e3a0771 100644 > --- a/lib/netdev-dpdk.c > +++ b/lib/netdev-dpdk.c > @@ -1931,9 +1931,9 @@ dpdk_ring_create(const char dev_name[], unsigned int > port_no, > return -err; > } > > - /* Create single consumer/producer rings, netdev does explicit locking. > */ > + /* Create single producer tx ring, netdev does explicit locking. */ > ivshmem->cring_tx = rte_ring_create(ring_name, DPDK_RING_SIZE, SOCKET0, > - RING_F_SP_ENQ | RING_F_SC_DEQ); > + RING_F_SP_ENQ); > if (ivshmem->cring_tx == NULL) { > rte_free(ivshmem); > return ENOMEM; > @@ -1944,9 +1944,9 @@ dpdk_ring_create(const char dev_name[], unsigned int > port_no, > return -err; > } > > - /* Create single consumer/producer rings, netdev does explicit locking. > */ > + /* Create single consumer rx ring, netdev does explicit locking. */ > ivshmem->cring_rx = rte_ring_create(ring_name, DPDK_RING_SIZE, SOCKET0, > - RING_F_SP_ENQ | RING_F_SC_DEQ); > + RING_F_SC_DEQ); > if (ivshmem->cring_rx == NULL) { > rte_free(ivshmem); > return ENOMEM; > -- > 1.9.1 > _______________________________________________ > dev mailing list > dev@openvswitch.org > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev