Re: [ovs-dev] [PATCH v7 08/16] dpif-netdev: Add pmd thread local port cache for transmission.

2016-04-18 Thread Ilya Maximets
On 08.04.2016 06:13, Daniele Di Proietto wrote: > Signed-off-by: Daniele Di Proietto > --- > lib/dpif-netdev.c | 243 > +++--- > 1 file changed, 175 insertions(+), 68 deletions(-) > > diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c > index 8c58

Re: [ovs-dev] [PATCH v7 05/16] dpif-netdev: Fix race condition in pmd thread initialization.

2016-04-19 Thread Ilya Maximets
n this case. Situation is easily reproducible by addition/deletion of last port (may be after few iterations in a cycle). Best regards, Ilya Maximets. On 08.04.2016 06:13, Daniele Di Proietto wrote: > The pmds and the main threads are synchronized using a condition > variable. The main thr

Re: [ovs-dev] [PATCH v7 08/16] dpif-netdev: Add pmd thread local port cache for transmission.

2016-04-19 Thread Ilya Maximets
On 19.04.2016 00:19, Daniele Di Proietto wrote: > > > On 18/04/2016 07:50, "Ilya Maximets" wrote: > >> On 08.04.2016 06:13, Daniele Di Proietto wrote: >>> Signed-off-by: Daniele Di Proietto >>> --- >>> lib/dpif-netdev.c | 243 >>&g

Re: [ovs-dev] [PATCH v7 05/16] dpif-netdev: Fix race condition in pmd thread initialization.

2016-04-19 Thread Ilya Maximets
On 19.04.2016 10:18, Ilya Maximets wrote: > There was a reason for 2 calls for dp_netdev_pmd_reload_done() inside > pmd_thread_main(). The reason is that we must wait until PMD thread > completely done with reloading. This patch introduces race condition > for pmd->exit_latch. Whil

Re: [ovs-dev] [PATCH v8 10/16] dpif-netdev: Use hmap for ports.

2016-04-20 Thread Ilya Maximets
On 20.04.2016 01:28, diproiettod at vmware.com (Daniele Di Proietto) wrote: > netdev objects are hard to use with RCU, because it's not possible to > split removal and reclamation. Postponing the removal means that the > port is not removed and cannot be readded immediately. Waiting for > reclama

Re: [ovs-dev] [dpdk-dev] Memory leak when adding/removing vhost_user ports

2016-04-21 Thread Ilya Maximets
Hi, Christian. You're, likely, using tar archive with openvswitch from openvswitch.org. It doesn't contain many bug fixes from git/branch-2.5 unfortunately. The problem that you are facing has been solved in branch-2.5 by commit d9df7b9206831631ddbd90f9cbeef1b4fc5a8e89 Author: Ily

Re: [ovs-dev] [PATCH v8 08/16] dpif-netdev: Add pmd thread local port cache for transmission.

2016-04-22 Thread Ilya Maximets
APX_FOR_EACH (node, &to_reload) { -- Best regards, Ilya Maximets. On 20.04.2016 01:28, diproiettod at vmware.com (Daniele Di Proietto) wrote: > A future commit will stop using RCU for 'dp->ports' and use a mutex for > reading/writing them. To avoid

Re: [ovs-dev] [PATCH] netdev-dpdk: Add vHost User PMD

2016-05-10 Thread Ilya Maximets
CC:mail-list. Sorry. On 10.05.2016 11:31, Ilya Maximets wrote: > On 03.05.2016 14:28, ciara.loftus at intel.com (Loftus, Ciara) wrote: >>> This patch seem to remove a lot of txq remapping functions (like >>> netdev_dpdk_remap_txqs). How does it handle the case of a

Re: [ovs-dev] [PATCH] netdev-dpdk: Add vHost User PMD

2016-05-10 Thread Ilya Maximets
On 10.05.2016 12:38, Loftus, Ciara wrote: >> >> On 10.05.2016 11:31, Ilya Maximets wrote: >>> On 03.05.2016 14:28, ciara.loftus at intel.com (Loftus, Ciara) wrote: >>>>> This patch seem to remove a lot of txq remapping functions (like >>>>> netde

Re: [ovs-dev] [ovs-dev,v2,2/3] netdev-dpdk: Add vHost User PMD

2016-05-10 Thread Ilya Maximets
On 10.05.2016 12:25, Ciara Loftus wrote: > DPDK 16.04 introduces the vHost PMD which allows 'dpdkvhostuser' ports > to be controlled by the librte_ether API, like physical 'dpdk' ports. > The commit integrates this functionality into OVS, and refactors some > of the existing vhost code such that it

[ovs-dev] [PATCH RFC 1/6] netdev-dpdk: Use instant sending instead of queueing of packets.

2016-05-12 Thread Ilya Maximets
are to profit that we can achieve in the future using XPS or other features. Signed-off-by: Ilya Maximets --- lib/netdev-dpdk.c | 102 -- 1 file changed, 14 insertions(+), 88 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index

[ovs-dev] [PATCH RFC 2/6] dpif-netdev: Allow configuration of number of tx queues.

2016-05-12 Thread Ilya Maximets
Currently number of tx queues is not configurable. Fix that by introducing of new option for PMD interfaces: 'n_txq', which specifies the maximum number of tx queues to be created for this interface. Example: ovs-vsctl set Interface dpdk0 options:n_txq=64 Signed-off-by: Ily

[ovs-dev] [PATCH RFC 0/6] dpif-netdev: Manual pinnig of RX queues + XPS.

2016-05-12 Thread Ilya Maximets
implementation.' which becomes worse with ability of manual pinning. ( http://openvswitch.org/pipermail/dev/2016-March/067152.html ) First 3 patches: prerequisites to XPS implementation. Patch #4: XPS implementation. Patches #5 and #6: Manual pinning implementation. Ilya Maximets (6): netd

[ovs-dev] [PATCH RFC 4/6] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-05-12 Thread Ilya Maximets
odically performes revalidation of allocated TX queue-ids. If queue wasn't used in last XPS_CYCLES it will be freed while revalidation. Reported-by: Zhihong Wang Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 147 +++--- li

[ovs-dev] [PATCH RFC 5/6] dpif-netdev: Add dpif-netdev/pmd-reconfigure appctl command.

2016-05-12 Thread Ilya Maximets
This command can be used to force PMD threads to reload and apply new configuration. Signed-off-by: Ilya Maximets --- NEWS | 2 ++ lib/dpif-netdev.c | 41 + vswitchd/ovs-vswitchd.8.in | 3 +++ 3 files changed, 46

[ovs-dev] [PATCH RFC 6/6] dpif-netdev: Add dpif-netdev/pmd-rxq-set appctl command.

2016-05-12 Thread Ilya Maximets
New appctl command to perform manual pinning of RX queues to desired cores. Signed-off-by: Ilya Maximets --- INSTALL.DPDK.md| 24 +- NEWS | 2 + lib/dpif-netdev.c | 199 - vswitchd/ovs-vswitchd.8.in

[ovs-dev] [PATCH RFC 3/6] netdev-dpdk: Mandatory locking of TX queues.

2016-05-12 Thread Ilya Maximets
: Ilya Maximets --- INSTALL.DPDK.md | 9 - lib/netdev-dpdk.c | 22 +- 2 files changed, 9 insertions(+), 22 deletions(-) diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md index 630c68d..bb14bb5 100644 --- a/INSTALL.DPDK.md +++ b/INSTALL.DPDK.md @@ -989,11 +989,10

Re: [ovs-dev] [PATCH v9 15/15] netdev-dpdk: Use ->reconfigure() call to change rx/tx queues.

2016-05-15 Thread Ilya Maximets
One typo inline. Best regards, Ilya Maximets. On 23.04.2016 04:03, Daniele Di Proietto wrote: > This introduces in dpif-netdev and netdev-dpdk the first use for the > newly introduce reconfigure netdev call. > > When a request to change the number of queues comes, netdev-dpdk wil

Re: [ovs-dev] [PATCH v9 00/15] Reconfigure netdev at runtime

2016-05-15 Thread Ilya Maximets
I think, this is ready for merging. Tested-by: Ilya Maximets Acked-by: Ilya Maximets On 23.04.2016 04:02, Daniele Di Proietto wrote: > Currently we treat set_multiq() calls specially in netdev and dpif-netdev: > every pmd thread must be stopped and set_multiq() is allowed to destr

[ovs-dev] [PATCH] netdev-dpdk: Fix PMD threads hang in __netdev_dpdk_vhost_send().

2016-05-17 Thread Ilya Maximets
ailable entries. Signed-off-by: Ilya Maximets --- How to reproduce manually: * Start packet flow. * Start testpmd inside guest VM under gdb: # gdb --args ./testpmd -c 0x1f -n 2 --socket-mem=2048 -w :00:0a.0 \\ -- --burst=64 --txd=512 --rxd=512 * Break virtqueue ring some

Re: [ovs-dev] PMD threads starting/stopping strategy

2016-05-20 Thread Ilya Maximets
ion. Manual setting of 'n_txq' will allow users to manage performance of OVS more accurately and also simplifies the configuration code. Best regards, Ilya Maximets. On 20.05.2016 12:23, Mauricio Vásquez wrote: > Hello, > > I noticed that pmd threads are created in a per NUM

Re: [ovs-dev] [ovs-dev, v2] dpif-netdev: Destroy pmd threads only if pmd-cpu-mask changed.

2016-05-23 Thread Ilya Maximets
CC: mail-list. Sorry. On 23.05.2016 10:49, Ilya Maximets wrote: > Hi, Ryan. > This patch currently conflicts with patch-set 'Reconfigure netdev at > runtime' from Daniele Di Proietto > ( http://openvswitch.org/pipermail/dev/2016-April/070064.html ), > which, I think, i

[ovs-dev] [PATCH RFC v2 0/6] dpif-netdev: Manual pinning of RX queues + XPS.

2016-05-24 Thread Ilya Maximets
tes to XPS implementation. Patch #4: XPS implementation. Patches #5 and #6: Manual pinning implementation. Version 2: * Rebased on current master. * Fixed initialization of newly allocated memory in 'port_reconfigure()'. Ilya Maximets (6): netdev-dpdk: Use instan

[ovs-dev] [PATCH RFC v2 1/6] netdev-dpdk: Use instant sending instead of queueing of packets.

2016-05-24 Thread Ilya Maximets
are to profit that we can achieve in the future using XPS or other features. Signed-off-by: Ilya Maximets --- lib/netdev-dpdk.c | 102 -- 1 file changed, 14 insertions(+), 88 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index

[ovs-dev] [PATCH RFC v2 2/6] dpif-netdev: Allow configuration of number of tx queues.

2016-05-24 Thread Ilya Maximets
Currently number of tx queues is not configurable. Fix that by introducing of new option for PMD interfaces: 'n_txq', which specifies the maximum number of tx queues to be created for this interface. Example: ovs-vsctl set Interface dpdk0 options:n_txq=64 Signed-off-by: Ily

[ovs-dev] [PATCH RFC v2 3/6] netdev-dpdk: Mandatory locking of TX queues.

2016-05-24 Thread Ilya Maximets
: Ilya Maximets --- INSTALL.DPDK.md | 9 - lib/netdev-dpdk.c | 22 +- 2 files changed, 9 insertions(+), 22 deletions(-) diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md index 630c68d..bb14bb5 100644 --- a/INSTALL.DPDK.md +++ b/INSTALL.DPDK.md @@ -989,11 +989,10

[ovs-dev] [PATCH RFC v2 5/6] dpif-netdev: Add dpif-netdev/pmd-reconfigure appctl command.

2016-05-24 Thread Ilya Maximets
This command can be used to force PMD threads to reload and apply new configuration. Signed-off-by: Ilya Maximets --- NEWS | 2 ++ lib/dpif-netdev.c | 41 + vswitchd/ovs-vswitchd.8.in | 3 +++ 3 files changed, 46

[ovs-dev] [PATCH RFC v2 6/6] dpif-netdev: Add dpif-netdev/pmd-rxq-set appctl command.

2016-05-24 Thread Ilya Maximets
New appctl command to perform manual pinning of RX queues to desired cores. Signed-off-by: Ilya Maximets --- INSTALL.DPDK.md| 24 +- NEWS | 2 + lib/dpif-netdev.c | 206 - vswitchd/ovs-vswitchd.8.in

[ovs-dev] [PATCH RFC v2 4/6] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-05-24 Thread Ilya Maximets
odically performes revalidation of allocated TX queue-ids. If queue wasn't used in last XPS_CYCLES it will be freed while revalidation. Reported-by: Zhihong Wang Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 146 +++--- li

Re: [ovs-dev] PMD threads starting/stopping strategy

2016-05-24 Thread Ilya Maximets
Thanks. I've just sent v2: http://openvswitch.org/pipermail/dev/2016-May/071603.html On 23.05.2016 23:18, Mauricio Vásquez wrote: > Thanks Ilya for your answer, > I'll try to give a look to your patch-set this week. > > On Fri, May 20, 2016 at 11:55 AM, Ilya Max

Re: [ovs-dev] [PATCH] netdev-dpdk: Fix PMD threads hang in __netdev_dpdk_vhost_send().

2016-05-25 Thread Ilya Maximets
On 23.05.2016 17:55, Traynor, Kevin wrote: >> -Original Message- >> From: Ilya Maximets [mailto:i.maxim...@samsung.com] >> Sent: Tuesday, May 17, 2016 4:09 PM >> To: dev@openvswitch.org; Daniele Di Proietto >> Cc: Dyasly Sergey ; Heetae Ahn >> ; Flavio

Re: [ovs-dev] If 1 KVM Guest loads the virtio-pci, on top of dpdkvhostuser OVS socket interface, it slows down everything!

2016-05-25 Thread Ilya Maximets
Hi, I think, your issue connected to one mentioned in this threads: http://openvswitch.org/pipermail/dev/2016-May/071115.html http://openvswitch.org/pipermail/dev/2016-May/071517.html You're welcome to join discussion in the first thread. Best regards, Ilya Max

Re: [ovs-dev] [dpdk-ovs] dpdk mode is not supported in current master branch

2016-05-25 Thread Ilya Maximets
Hi, Alex. Since bab694097133 ("netdev-dpdk: Convert initialization from cmdline to db") you should use database to configure dpdk. For more information take a look to "5. Start vswitchd" section in INSTALL.DPDK.md. Best regards, Ilya Maximets. ___

[ovs-dev] [PATCH v2 0/7] PMD Testsuite.

2016-05-27 Thread Ilya Maximets
* 'dummy-pmd' implemented as a separate netdev_class. 'dummy' and 'dummy-pmd' available at the same time. * Proper multiqueue support implemented. * Only few tests restarted with dummy-pmd. Restarting implemented similar to python2

[ovs-dev] [PATCH v2 1/7] netdev-dummy: Add dummy-pmd class.

2016-05-27 Thread Ilya Maximets
'dummy-pmd' class is a new dummy class. Created in purposes of testing of PMD interfaces. Ex.: ovs-vswitchd set interface type=dummy-pmd Signed-off-by: Ilya Maximets --- lib/netdev-dummy.c | 149 + 1 file changed, 81

[ovs-dev] [PATCH v2 3/7] dpctl: Implement dpctl/flow-get for dpif-netdev.

2016-05-27 Thread Ilya Maximets
Currently 'dpctl/flow-get' doesn't work for flows installed by PMD threads. Fix that by implementing search across all PMD threads. Will be returned flow from first PMD thread with match. Signed-off-by: Ilya Maximets --- lib/dpctl.c | 3 +-- lib/dpi

[ovs-dev] [PATCH v2 2/7] dpif-netdev.at: Run tests with dummy-pmd.

2016-05-27 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/dpif-netdev.at | 146 --- 1 file changed, 79 insertions(+), 67 deletions(-) diff --git a/tests/dpif-netdev.at b/tests/dpif-netdev.at index 12468f4..5d338e1 100644 --- a/tests/dpif-netdev.at +++ b/tests/dpif

[ovs-dev] [PATCH v2 6/7] netdev-dummy: Add multiqueue support to dummy-pmd.

2016-05-27 Thread Ilya Maximets
All previous multi-open logic preserved for rx queues. Also, added new optional parameter '--qid' for 'netdev-dummy/receive' in order to allow user to choose id of rx queue to which packet will be sent. Ex.: ovs-appctl netdev-dummy/receive p1 --qid 3 'in_port(1)

[ovs-dev] [PATCH v2 7/7] testsuite-pmd: Add PMD specific tests.

2016-05-27 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/automake.mk | 1 + tests/pmd.at | 179 + tests/testsuite.at | 1 + 3 files changed, 181 insertions(+) create mode 100644 tests/pmd.at diff --git a/tests/automake.mk b/tests/automake.mk index

[ovs-dev] [PATCH v2 5/7] ovs-vsctl.at: Use OVS_VSCTL_CLEANUP.

2016-05-27 Thread Ilya Maximets
OVSDB_SERVER_SHUTDOWN defined in another module and not inside '*-macros.at'. So, it should not be used inside ovs-vsctl.at. Also, OVS_VSCTL_CLEANUP should be used instead of direct calls to OVSDB_SERVER_SHUTDOWN. Signed-off-by: Ilya Maximets --- tests/ovs-vsctl.at | 6 +++--- 1 fi

[ovs-dev] [PATCH v2 4/7] ofproto-dpif.at: Run tests with dummy-pmd.

2016-05-27 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/ofproto-dpif.at | 147 +++- tests/ofproto-macros.at | 31 +++--- 2 files changed, 107 insertions(+), 71 deletions(-) diff --git a/tests/ofproto-dpif.at b/tests/ofproto-dpif.at index bf9cf88..1c081d5 100644

Re: [ovs-dev] [PATCH RFC v2 0/6] dpif-netdev: Manual pinning of RX queues + XPS.

2016-05-31 Thread Ilya Maximets
Ping. Best regards, Ilya Maximets. On 24.05.2016 16:34, Ilya Maximets wrote: > Manual pinning of RX queues to PMD threads required for performance > optimisation. This will give to user ability to achieve max. performance > using less number of CPUs because currently only user may k

Re: [ovs-dev] [PATCH RFC v2 1/6] netdev-dpdk: Use instant sending instead of queueing of packets.

2016-06-01 Thread Ilya Maximets
to be closer to coding style, and, also, this points out that function works with 'eth' devices. But, I think, you may choose any name you want and just replace while pushing. > Acked-by: Daniele Di Proietto > > If there are no objection I can push this separately from the res

Re: [ovs-dev] [PATCH] netdev-dpdk: Fix PMD threads hang in __netdev_dpdk_vhost_send().

2016-06-01 Thread Ilya Maximets
On 02.06.2016 04:32, Daniele Di Proietto wrote: > > On 25/05/2016 04:03, "Ilya Maximets" wrote: > >> On 23.05.2016 17:55, Traynor, Kevin wrote: >>>> -Original Message- >>>> From: Ilya Maximets [mailto:i.maxim...@samsung.com] >

Re: [ovs-dev] [PATCH RFC v2 0/6] dpif-netdev: Manual pinning of RX queues + XPS.

2016-06-02 Thread Ilya Maximets
locking, where > possible. Actually, we don't need this if default values will be set as described above and reconfiguration request will be used inside 'new_device()' (I guess, this should be implemented separately). But it's harmless and, actually, almost free in implementatio

Re: [ovs-dev] [PATCH RFC v2 0/6] dpif-netdev: Manual pinning of RX queues + XPS.

2016-06-03 Thread Ilya Maximets
One addition below. On 02.06.2016 16:55, Ilya Maximets wrote: > Hi, Daniele. > Thanks for review. > > On 02.06.2016 04:33, Daniele Di Proietto wrote: >> Hi Ilya, >> >> apologies for the delay. >> >> I didn't take a extremely detailed look at this

[ovs-dev] [PATCH v4] XPS implementation (Second part of XPS patch-set).

2016-07-13 Thread Ilya Maximets
es' that is always 0 without DPDK. * Fixed tx queue ids cleanup on PMD thread deletion. Version 3: * Dropped already applied changes. * fat-rwlock used instead of port_mutex. * revalidation of 'non-pmd' thread's tx queues added to 

[ovs-dev] [PATCH v4] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-07-13 Thread Ilya Maximets
allocated TX queue-ids. If queue wasn't used in last XPS_TIMEOUT_MS milliseconds it will be freed while revalidation. Reported-by: Zhihong Wang Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 170 +- 1 file changed, 117 inser

Re: [ovs-dev] [PATCH v3 3/3] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-07-13 Thread Ilya Maximets
p with a good idea. I thought about some atomic solution, but it will lead to some retries or not-optimal txq distribution. So, I choose simple mutex instead of complex solution with atomics. If this place will become a bottleneck we could replace cycle by some effective data structure (heap?) or inve

Re: [ovs-dev] [PATCH v3 3/3] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-07-13 Thread Ilya Maximets
patch of this series. It extends current implementation of rwlock with some new features. Maybe someone will use this functionality in the future. Anyway it'll be sad to just let it fade away somewhere in mail-list. Best regards, Ilya Maximets. ___

[ovs-dev] [PATCH v3 1/3] bridge: Pass interface's configuration to datapath.

2016-07-15 Thread Ilya Maximets
ling threads in dpif-netdev. Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 1 + lib/dpif-netlink.c | 1 + lib/dpif-provider.h| 5 + lib/dpif.c | 17 + lib/dpif.h | 1 + ofproto/ofproto-dpif.c | 16 +

[ovs-dev] [PATCH v3 3/3] dpif-netdev: Introduce pmd-rxq-affinity.

2016-07-15 Thread Ilya Maximets
#3 pinned to core 8; It's decided to automatically isolate cores that have rxq explicitly assigned to them because it's useful to keep constant polling rate on some performance critical ports while adding/deleting other ports without explicit pinning of all ports. Signed-off-by: Ilya

[ovs-dev] [PATCH v3 0/3] Manual pinning of rxqs (Third part of XPS patch-set).

2016-07-15 Thread Ilya Maximets
duplication. Third patch is a modified version of the last patch from v2: "dpif-netdev: Add dpif-netdev/pmd-rxq-set appctl command." It was modified to get configuration pushed via 'port_set_config'. Ilya Maximets (3): bridge: Pass interface's configuration to datapat

[ovs-dev] [PATCH v3 2/3] util: Expose function nullable_string_is_equal.

2016-07-15 Thread Ilya Maximets
Implementation of 'nullable_string_is_equal()' moved to util.c and reused inside dpif-netdev. Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c| 14 ++ lib/util.c | 6 ++ lib/util.h | 1 + ofproto/ofproto-dpif-ip

Re: [ovs-dev] [ovs-dev, RFC, v2, 1/1] netdev-dpdk: Add support for DPDK 16.07

2016-07-18 Thread Ilya Maximets
On 12.07.2016 12:11, Ciara Loftus wrote: > This commit introduces support for DPDK 16.07 and consequently breaks > compatibility with DPDK 16.04. > > DPDK 16.07 introduces some changes to various APIs. These have been > updated in OVS, including: > * xstats API: changes to structure of xstats > *

Re: [ovs-dev] [PATCH v4] XPS implementation (Second part of XPS patch-set).

2016-07-24 Thread Ilya Maximets
Ping. Best regards, Ilya Maximets. On 13.07.2016 15:34, Ilya Maximets wrote: > This is the second part of XPS patch-set which contains XPS itself. > > Version 4: > * Dropped rwlock related patches. > * Added pointer from 'struct tx_port' to 'struct dp_n

Re: [ovs-dev] [PATCH v3 0/3] Manual pinning of rxqs (Third part of XPS patch-set).

2016-07-24 Thread Ilya Maximets
Ping. Best regards, Ilya Maximets. On 15.07.2016 14:54, Ilya Maximets wrote: > This is the third and last part of XPS patch-set which contains > implementation of manual pinning of rx queues to pmd threads. > > Manual pinning API was discussed here: > http://openvswitch.org/pip

Re: [ovs-dev] [PATCH v3 1/3] bridge: Pass interface's configuration to datapath.

2016-07-26 Thread Ilya Maximets
On 26.07.2016 04:45, Daniele Di Proietto wrote: > Thanks for the patch > > It looks good to me, a few minor comments inline > > > On 15/07/2016 04:54, "Ilya Maximets" wrote: > >> This commit adds functionality to pass value of 'other_config&#

Re: [ovs-dev] [PATCH v3 3/3] dpif-netdev: Introduce pmd-rxq-affinity.

2016-07-26 Thread Ilya Maximets
This looks like a perfect chance to add more tests to pmd.at. I can do it if > you want Sounds good. > I started taking a look at this patch and I have a few comments inline. I'll > keep looking at it tomorrow > > Thanks, > > Daniele > > > On

[ovs-dev] [PATCH v5 0/4] XPS + Manual pinning (all)

2016-07-27 Thread Ilya Maximets
'non-pmd' thread's tx queues added to 'dpif_netdev_run' to make it faster. Ilya Maximets (4): dpif-netdev: XPS (Transmit Packet Steering) implementation. bridge: Pass interface's configuration to datapath. dpif-netdev: Add reconfiguratio

[ovs-dev] [PATCH v5 1/4] dpif-netdev: XPS (Transmit Packet Steering) implementation.

2016-07-27 Thread Ilya Maximets
allocated TX queue-ids. If queue wasn't used in last XPS_TIMEOUT_MS milliseconds it will be freed while revalidation. * XPS is not working if we have enough TX queues. Reported-by: Zhihong Wang Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 204

[ovs-dev] [PATCH v5 3/4] dpif-netdev: Add reconfiguration request to dp_netdev.

2016-07-27 Thread Ilya Maximets
Next patches will add new conditions when reconfiguration will be required. It'll be simpler to have common way to request reconfiguration. Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 37 - 1 file changed, 28 insertions(+), 9 deletions(-) diff

[ovs-dev] [PATCH v5 2/4] bridge: Pass interface's configuration to datapath.

2016-07-27 Thread Ilya Maximets
ling threads in dpif-netdev. Signed-off-by: Ilya Maximets Acked-by: Daniele Di Proietto --- lib/dpif-netdev.c | 1 + lib/dpif-netlink.c | 1 + lib/dpif-provider.h| 5 + lib/dpif.c | 17 + lib/dpif.h | 1 + ofproto/ofp

[ovs-dev] [PATCH v5 4/4] dpif-netdev: Introduce pmd-rxq-affinity.

2016-07-27 Thread Ilya Maximets
#3 pinned to core 8; It's decided to automatically isolate cores that have rxq explicitly assigned to them because it's useful to keep constant polling rate on some performance critical ports while adding/deleting other ports without explicit pinning of all ports. Signed-off-by: Ilya

Re: [ovs-dev] [PATCH v5 00/16] Userspace (DPDK) connection tracker

2016-07-27 Thread Ilya Maximets
I guess, you pushed some development version of this patch set. There is strange commit there: commit 6c54734ed27bc22975d7035a6bd5f32a412335a0 Author: Daniele Di Proietto Date: Wed Jul 27 18:32:15 2016 -0700 XXX Improve comment. Best regards, Ilya Maximets

Re: [ovs-dev] [PATCH v5 00/16] Userspace (DPDK) connection tracker

2016-07-28 Thread Ilya Maximets
Sorry. TO: Daniele Di Proietto On 28.07.2016 09:27, Ilya Maximets wrote: > I guess, you pushed some development version of this patch set. > > There is strange commit there: > > commit 6c54734ed27bc22975d7035a6bd5f32a412335a0 > Author: Daniele Di Proietto > Date: Wed

Re: [ovs-dev] tests: Add new pmd test for pmd-rxq-affinity.

2016-07-28 Thread Ilya Maximets
Thanks for making this. Acked-by: Ilya Maximets On 27.07.2016 23:12, Daniele Di Proietto wrote: > This tests that the newly introduced pmd-rxq-affinity option works as > intended, at least for a single port. > > Signed-off-by: Daniele Di Proietto > --- >

[ovs-dev] [PATCH] dpif-netdev: Fix xps revalidation.

2016-07-29 Thread Ilya Maximets
Revalidation should work in case of 'dynamic_txqs == true'. Fixes: 324c8374852a ("dpif-netdev: XPS (Transmit Packet Steering) implementation.") Signed-off-by: Ilya Maximets --- lib/dpif-netdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/dpif

Re: [ovs-dev] [ovs-dev,v3,3/5] netdev-dpdk: Add vHost User PMD

2016-07-29 Thread Ilya Maximets
Not the complete review. Just few comments to design. And what about performance? Is there any difference in comparison to current version of code? I guess, this may be slower than direct access to vhost library. Comments inline. Best regards, Ilya Maximets. On 28.07.2016 19:21, Ciara Loftus

Re: [ovs-dev] [ovs-dev,v4,3/5] netdev-dpdk: Add vHost User PMD

2016-08-01 Thread Ilya Maximets
r their opinion about new API to get number of queues from the vHost PMD. Maybe we can expose 'rte_vhost_get_queue_num()' somehow or make 'dev_info->nb_rx_queues' usable? NACK for now. Best regards, Ilya Maximets. On 29.07.2016 16:24, Ciara Loftus wrote: > DPDK 16.04 i

Re: [ovs-dev] [ovs-dev, 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-01 Thread Ilya Maximets
s to destruction of the port and inability to reconnect to vhost-user port after re-creation if vhost is in server mode. We can just keep old mempool and inform user via VLOG_ERR. 3. Minor issues inline. What do you think? Best regards, Ilya Maximets. On 30.07.2016 04:22, Daniele Di Pr

Re: [ovs-dev] [ovs-dev,v4,3/5] netdev-dpdk: Add vHost User PMD

2016-08-02 Thread Ilya Maximets
e vring state changed because this leads to >> ability for the guest user to break normal networking on all ports >> connected to the same instance of Open vSwitch. >> >> If this vulnerability is unavoidable with current version of vHost PMD, >> I'm suggesting to p

Re: [ovs-dev] [ovs-dev,v4,3/5] netdev-dpdk: Add vHost User PMD

2016-08-03 Thread Ilya Maximets
} exists = true; @@ -2376,9 +2380,6 @@ destroy_device(int vid) dev->vid = -1; /* Clear tx/rx queue settings. */ netdev_dpdk_txq_map_clear(dev); -dev->requested_n_rxq = NR_QUEUE; -dev->requested_n_txq = NR_QU

[ovs-dev] [PATCH] netdev-dpdk: Avoid reconfiguration on reconnection of same vhost device.

2016-08-03 Thread Ilya Maximets
attached virtio.") Reported-by: Ciara Loftus Signed-off-by: Ilya Maximets --- lib/netdev-dpdk.c | 17 - 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index a0d541a..98369f1 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c

Re: [ovs-dev] [ovs-dev, 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-03 Thread Ilya Maximets
reconnect to vhost-user port after >> re-creation if vhost is in server mode. We can just keep old >> mempool and inform user via VLOG_ERR. >> > Agreed - I'll modify V2 accordingly. > > >> 3. Minor issues inline. > > Comments on these inline also. &

Re: [ovs-dev] [PATCH] netdev-dpdk: Avoid reconfiguration on reconnection of same vhost device.

2016-08-04 Thread Ilya Maximets
de of guest OS. >> >> Fixes: 81acebdaaf27 ("netdev-dpdk: Obtain number of queues for vhost >> ports from attached virtio.") >> Reported-by: Ciara Loftus >> Signed-off-by: Ilya Maximets >> --- >> lib/netdev-dpdk.c | 17

Re: [ovs-dev] [ovs-dev, CudaMailTagged] netdev-dpdk: unlink socket file when constructing vhostuser.

2016-08-04 Thread Ilya Maximets
ndler. Are you sure that it's the issue of upstream OVS and not your local patches? 3. Segmentation fault or another hard failure is the only reason to sockets left on the filesystem. Best regards, Ilya Maximets. On 04.08.2016 23:31, xu.binb...@zte.com.cn wrote: > Work with DPDK 16

Re: [ovs-dev] 答复: Re: [ovs-dev, CudaMailTagged] netdev-dpdk: unlink socket file when constructing vhostuser.

2016-08-04 Thread Ilya Maximets
ary/065556.html http://openvswitch.org/pipermail/dev/2016-February/065470.html > Sorry for my description in the commit msg, it may be a puzzle to you. > > > > > 发件人: Ilya Maximets > 收件人: xu.binb...@zte.com.cn, dev@openvswitch.org, > 抄送:

Re: [ovs-dev] 答复: Re: 答复: Re: [ovs-dev, CudaMailTagged] netdev-dpdk: unlink socket file when constructing vhostuser.

2016-08-04 Thread Ilya Maximets
ay, should I keep the mode of 'lib/netdev-dpdk.c' file? Definitely. But I don't think you should send second version if you don't have very strong arguments for such solution. > Ilya Maximets 写于 2016/08/04 19:33:58: > >> 发件人: Ilya Maximets >> 收件人: xu.bi

Re: [ovs-dev] [ovs-dev, 3/3] netdev-dpdk: vHost client mode and reconnect

2016-08-04 Thread Ilya Maximets
Hi, Ciara. I'm suggesting also following change: - diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 57dc437..f092fa2 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -959,7 +963,8 @@ netdev_dpdk_vhost_d

[ovs-dev] [openvswitch 2.5.90] testsuite: 2224 failed

2016-08-05 Thread Ilya Maximets
0 6382536335010236040a 010104ff0003040a0133040e10ff Full log attached. Best regards, Ilya Maximets.

Re: [ovs-dev] [openvswitch 2.5.90] testsuite: 2224 failed

2016-08-05 Thread Ilya Maximets
Exactly same situation with gcc (GCC) 6.1.1 20160510 (Red Hat 6.1.1-2). On 05.08.2016 14:37, Ilya Maximets wrote: > There is one interesting bug: > > Test 2224 (ovn -- dhcpv4 : 1 HV, 2 LS, 2 LSPs/LS) constantly fails > with 'CFLAGS=-march=native'. All other tests works norm

Re: [ovs-dev] [openvswitch 2.5.90] testsuite: 2224 failed

2016-08-05 Thread Ilya Maximets
Same situation on another environment: * Ubuntu 16.04 LTS * Compiler: gcc (Ubuntu 5.3.1-14ubuntu2.1) 5.3.1 20160413 * Intel(R) Core(TM) i7-3770 CPU Best regards, Ilya Maximets. On 05.08.2016 14:37, Ilya Maximets wrote: > There is one interesting bug: > > Test

Re: [ovs-dev] [ovs-dev,V2] netdev-dpdk: fix memory leak

2016-08-05 Thread Ilya Maximets
in vhost_destroy_device () #7 0x004ee578 in rte_vhost_driver_unregister () #8 0x006bc8c8 in netdev_dpdk_vhost_destruct (netdev=0x7f6bffed00) at lib/netdev-dpdk.c:944 #9 0x005e4ad4 in netdev_unref (dev=0x7f6bffed00) at lib/netdev.c:499 #10 0x005e4b9c in netdev_close (netdev=0x7f6bffed00) at lib/netdev.c:523 [...] #20 0x0053ad94 in main (argc=7, argv=0x7ff318) at vswitchd/ovs-vswitchd.c:112 May be reproduced by removing port while virtio still attached. This blocks reconnection feature and deletion of port while QEMU still attached. Someone should fix this. Any thoughts? Best regards, Ilya Maximets. ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] netdev-dpdk: Fix deadlock in destroy_device().

2016-08-07 Thread Ilya Maximets
Minor comment inline. Acked-by: Ilya Maximets On 05.08.2016 23:57, Daniele Di Proietto wrote: > netdev_dpdk_vhost_destruct() calls rte_vhost_driver_unregister(), which > can trigger the destroy_device() callback. destroy_device() will try to > take two mutexes alread

Re: [ovs-dev] [PATCH 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-08 Thread Ilya Maximets
On 05.08.2016 17:34, Mark Kavanagh wrote: > Add support for Jumbo Frames to DPDK-enabled port types, > using single-segment-mbufs. > > Using this approach, the amount of memory allocated to each mbuf > to store frame data is increased to a value greater than 1518B > (typical Ethernet maximum frame

[ovs-dev] [PATCH v2] netdev-dpdk: Avoid reconfiguration on reconnection of same vhost device.

2016-08-08 Thread Ilya Maximets
attached virtio.") Reported-by: Ciara Loftus Signed-off-by: Ilya Maximets --- Version 2: * Set 'vhost_reconfigured' flag if reconfiguration not required. * Rebased on current master. lib/netdev-dpdk.c | 19 +++ 1 file changed, 11 insertions(+)

Re: [ovs-dev] [PATCH V3 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-08 Thread Ilya Maximets
On 08.08.2016 13:24, Mark Kavanagh wrote: > Add support for Jumbo Frames to DPDK-enabled port types, > using single-segment-mbufs. > > Using this approach, the amount of memory allocated to each mbuf > to store frame data is increased to a value greater than 1518B > (typical Ethernet maximum frame

Re: [ovs-dev] [ovs-dev, v2, 1/3] netdev-dpdk: Remove dpdkvhostcuse ports

2016-08-08 Thread Ilya Maximets
t available in OVS for use with older > versions of QEMU (pre v2.2). Considering v2.2 is nearly two years old > this should however be a low impact change. > > Signed-off-by: Ciara Loftus > Acked-by: Flavio Leitner > Acked-by: Daniele Di Proietto Acked-by: Ilya Maximets _

Re: [ovs-dev] [PATCH V4 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-09 Thread Ilya Maximets
UMA Node */ > -dpdk_mp_put(dev->dpdk_mp); > -dev->dpdk_mp = dpdk_mp_get(dev->socket_id, dev->mtu); > -if (!dev->dpdk_mp) { > -err = ENOMEM; > +dev->mtu = dev->requested_mtu; > + > +/* Change memp

Re: [ovs-dev] [PATCH V5 7/7] netdev-dpdk: add support for Jumbo Frames

2016-08-09 Thread Ilya Maximets
Few minor comments inline. On 09.08.2016 15:03, Mark Kavanagh wrote: > Add support for Jumbo Frames to DPDK-enabled port types, > using single-segment-mbufs. > > Using this approach, the amount of memory allocated to each mbuf > to store frame data is increased to a value greater than 1518B > (ty

Re: [ovs-dev] [PATCH V6 7/7] netdev-dpdk: add support for jumbo frames

2016-08-09 Thread Ilya Maximets
> - remove superflous variable in dpdk_mp_configure > - fix minor coding style infraction > > > INSTALL.DPDK-ADVANCED.md | 58 ++- > INSTALL.DPDK.md | 1 - > NEWS | 1 + > lib/netdev-dpdk.c| 145 > +++

Re: [ovs-dev] [PATCH V7 6/7] netdev: Make netdev_set_mtu() netdev parameter non-const.

2016-08-09 Thread Ilya Maximets
function. > > Signed-off-by: Daniele Di Proietto Acked-by: Ilya Maximets ___ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev

Re: [ovs-dev] [PATCH V7 2/7] vswitchd: Introduce 'mtu_request' column in Interface.

2016-08-09 Thread Ilya Maximets
Hi, Daniele. Maybe I'm not the very right person to review such things, but I'm actually used this patch since it appeared in your github and it looks good to me. Also, I wanted to remove this non-working implementation of 'netdev_dpdk_set_mtu' for a long time. Acked-by

[ovs-dev] [PATCH] netdev-dpdk: vhost: Fix double free and use after free with QoS.

2016-08-10 Thread Ilya Maximets
evices and freeing only packets not freed by QoS. Fixes: 0bf765f753fd ("netdev_dpdk.c: Add QoS functionality.") Signed-off-by: Ilya Maximets --- lib/netdev-dpdk.c | 24 +--- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk

Re: [ovs-dev] [PATCH 5/5] tests: Allow extra cmd line args to OVS_VSWITCHD_START.

2016-06-07 Thread Ilya Maximets
For the series: Acked-by: Ilya Maximets One little issue is that initialization of dummy-numa is usually occurs before enabling of log file. This means that information about discovered cores and numas not available in ovs-vswitchd.log. But in testing time this log messages are available inside

[ovs-dev] [PATCH v3 0/3] PMD Testsuite.

2016-06-07 Thread Ilya Maximets
e. * Proper multiqueue support implemented. * Only few tests restarted with dummy-pmd. Restarting implemented similar to python2/3 case. * Rebased on current master. Ilya Maximets (3): dpif-netdev.at: Run tests with dummy-pmd. ofproto-dpif.at: Run tests with dummy

[ovs-dev] [PATCH v3 1/3] dpif-netdev.at: Run tests with dummy-pmd.

2016-06-07 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/dpif-netdev.at | 147 --- 1 file changed, 80 insertions(+), 67 deletions(-) diff --git a/tests/dpif-netdev.at b/tests/dpif-netdev.at index 12468f4..ab83634 100644 --- a/tests/dpif-netdev.at +++ b/tests/dpif

[ovs-dev] [PATCH v3 3/3] testsuite: Add PMD specific tests.

2016-06-07 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/automake.mk | 1 + tests/pmd.at | 182 + tests/testsuite.at | 1 + 3 files changed, 184 insertions(+) create mode 100644 tests/pmd.at diff --git a/tests/automake.mk b/tests/automake.mk index

[ovs-dev] [PATCH v3 2/3] ofproto-dpif.at: Run tests with dummy-pmd.

2016-06-07 Thread Ilya Maximets
Signed-off-by: Ilya Maximets --- tests/ofproto-dpif.at | 157 tests/ofproto-macros.at | 31 +++--- 2 files changed, 114 insertions(+), 74 deletions(-) diff --git a/tests/ofproto-dpif.at b/tests/ofproto-dpif.at index d0aacfa..638d269 100644

  1   2   3   4   >