[ovs-dev] [PATCH v8 6/6] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-19 Thread antonio . fischetti
For readability purposes dpdk_mp_put is renamed as dpdk_mp_free. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 8 +--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib

[ovs-dev] [PATCH v8 1/6] netdev-dpdk: fix management of pre-existing mempools.

2017-10-19 Thread antonio . fischetti
Reported-by: Róbert Mulik Fixes: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- I've tested this patch by - changing at run-time the number of Rx queues: ovs-vsctl set Interface dpdk0 type=dpdk options:n_rxq=4

[ovs-dev] [PATCH v8 5/6] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-19 Thread antonio . fischetti
Kavanagh Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 6fc6e1b..bf143e0 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -308,7 +308,7 @@ struct

[ovs-dev] [PATCH v8 4/6] netdev-dpdk: manage failure in mempool name creation.

2017-10-19 Thread antonio . fischetti
ned-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 7 +++ 1 file changed, 7 insertions(+) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index dc1e9c3..6fc6e1b 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -502,6 +502,9 @@ dpdk_mp_name(struct dpdk_mp *dmp) int ret

[ovs-dev] [PATCH v8 2/6] Fix mempool names to reflect socket id.

2017-10-19 Thread antonio . fischetti
Fixes: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- Mempool names now contains the requested socket id and become like: "ovs_4adb057e_1_2030_20512". Tested with DPDK 17.05.2 (from dpdk-stable branch). NUMA-aware

[ovs-dev] [PATCH v8 3/6] netdev-dpdk: skip init for existing mempools.

2017-10-19 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Darrell Ball CC: Ciara Loftus CC: Aaron Conole Acked-by: Kevin Traynor Acked-by: Mark Kavanagh Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file

[ovs-dev] [PATCH v8 0/6] netdev-dpdk: Fix mempool management and other cleanup.

2017-10-19 Thread antonio . fischetti
Patch #1, #2 and #4 contain the fixes. All other patches in this series are a clean up for code readability or small improvements. List of versions: - v8: - Debug message rephrased in patch #2. - Reworked patch #4 for snprintf error code. - Comments in patch #6 moved into patch #1. - v

[ovs-dev] [PATCH v7 6/6] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-18 Thread antonio . fischetti
For readability purposes dpdk_mp_put is renamed as dpdk_mp_free. Some other comments are also added to mempool functions. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 16 +++- 1

[ovs-dev] [PATCH v7 5/6] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-18 Thread antonio . fischetti
Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index a3b4638..0057e6b 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -308,7 +308,7 @@ struct dpdk_mp

[ovs-dev] [PATCH v7 4/6] netdev-dpdk: manage failure in mempool name creation.

2017-10-18 Thread antonio . fischetti
In case a mempool name could not be generated log a message and return a null mempool pointer to the caller. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 7 +++ 1 file changed, 7

[ovs-dev] [PATCH v7 3/6] netdev-dpdk: skip init for existing mempools.

2017-10-18 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Acked-by: Mark Kavanagh Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5

[ovs-dev] [PATCH v7 2/6] netdev-dpdk: Fix mempool names to reflect socket id.

2017-10-18 Thread antonio . fischetti
: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- Mempool names now contains the requested socket id and become like: "ovs_4adb057e_1_2030_20512". Tested with DPDK 17.05.2 (from dpdk-stable branch). NUMA-awareness f

[ovs-dev] [PATCH v7 1/6] netdev-dpdk: fix management of pre-existing mempools.

2017-10-18 Thread antonio . fischetti
Reported-by: Róbert Mulik Fixes: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- I've tested this patch by - changing at run-time the number of Rx queues: ovs-vsctl set Interface dpdk0 type=dpdk options:n_rxq=4 - redu

[ovs-dev] [PATCH v7 0/6] netdev-dpdk: Fix mempool management and other cleanup.

2017-10-18 Thread antonio . fischetti
Patch #1 and #2 contain the fixes. All other patches in this series are a clean up for code readability or small improvements. List of versions: - v7: - Restored 2 separate patches for the 2 fixes. - patch #1: detect when previous mempools must be released. - patch #2: mempool na

[ovs-dev] [PATCH v6 5/5] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-16 Thread antonio . fischetti
For readability purposes dpdk_mp_put is renamed as dpdk_mp_free. Some other comments are also added to mempool functions. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 15 ++- 1

[ovs-dev] [PATCH v6 4/5] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-16 Thread antonio . fischetti
Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 20 ++-- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index dd5759b..5cf1392 100644 --- a/lib/netdev-dpdk.c +++ b/lib/netdev-dpdk.c @@ -308,7 +308,7 @@ struct dpdk_mp

[ovs-dev] [PATCH v6 3/5] netdev-dpdk: manage empty mempool names.

2017-10-16 Thread antonio . fischetti
In case a mempool name could not be generated log a message and return a null mempool pointer to the caller. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 7 +++ 1 file changed, 7

[ovs-dev] [PATCH v6 0/5] netdev-dpdk: Fix mempool management and other cleanup.

2017-10-16 Thread antonio . fischetti
Patch #1 contains the fix. All other patches in this series are a clean up for code readability or small improvements. List of versions: - v6: patches #1 and #2 squashed into one. - Reworked to consider the latest comments. - tested the release of pre-existing mempools (reported by

[ovs-dev] [PATCH v6 2/5] netdev-dpdk: skip init for existing mempools.

2017-10-16 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Mark B Kavanagh CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5

[ovs-dev] [PATCH v6 1/5] netdev-dpdk: fix management of pre-existing mempools.

2017-10-16 Thread antonio . fischetti
is needed for the NUMA-awareness feature. CC: Mark B Kavanagh CC: Kevin Traynor CC: Aaron Conole CC: Darrell Ball Reported-by: Ciara Loftus Tested-by: Ciara Loftus Reported-by: Róbert Mulik Fixes: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-b

[ovs-dev] [PATCH v3 5/5] doc: ConnTracker cfg parameters.

2017-10-13 Thread antonio . fischetti
Update documentation with the new commands to Read/Write ConnTracker configuration parameters. CC: Kevin Traynor CC: Darrell Ball Signed-off-by: Antonio Fischetti --- Documentation/intro/install/dpdk.rst | 25 + lib/dpctl.man| 10 ++ 2

[ovs-dev] [PATCH v3 4/5] conntrack: read current nr of connections.

2017-10-13 Thread antonio . fischetti
Example: ovs-appctl dpctl/ct-get-glbl-cfg totconn CC: Darrell Ball Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/lib/conntrack.c b/lib/conntrack.c index 68d9030..ed2675b 100644 --- a/lib/conntrack.c +++ b/lib/conntrack.c

[ovs-dev] [PATCH v3 3/5] conntrack: r/w upper limit connection value.

2017-10-13 Thread antonio . fischetti
Read/Write the upper limit value for connections. Example: # set a new upper limit ovs-appctl dpctl/ct-set-glbl-cfg maxconn=100 # display cur upper limit ovs-appctl dpctl/ct-get-glbl-cfg maxconn CC: Darrell Ball CC: Kevin Traynor Signed-off-by: Antonio Fischetti --- lib

[ovs-dev] [PATCH v3 1/5] dpctl: Comment functions retrieving the datapath name.

2017-10-13 Thread antonio . fischetti
Add a comment to functions retrieving the datapath name. CC: Darrell Ball Signed-off-by: Antonio Fischetti --- lib/dpctl.c | 28 +++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/lib/dpctl.c b/lib/dpctl.c index 8951d6e..b6eecf0 100644 --- a/lib/dpctl.c

[ovs-dev] [PATCH v3 2/5] conntrack: add commands to r/w CT parameters.

2017-10-13 Thread antonio . fischetti
Add infrastructure to implement: - dpctl/ct-get-glbl-cfg to read a current value of available conntrack parameters. - dpctl/ct-set-glbl-cfg to set a value to the available conntrack parameters. CC: Darrell Ball CC: Kevin Traynor Signed-off-by: Antonio Fischetti --- lib/conntrack.c

[ovs-dev] [PATCH v3 0/5] Conntrack: add commands to r/w CT parameters.

2017-10-13 Thread antonio . fischetti
This change comes from the consideration that when the CT is enabled the overall performance can be deeply affected, even with simple firewall rules and with stateless protocols like UDP. This implementation adds a basic infrastructure that allows the user to adjust the CT configuration parameters

[ovs-dev] [PATCH v5 6/6] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-11 Thread antonio . fischetti
Rename dpdk_mp_put as dpdk_mp_free, add other comments to mempool functions. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib

[ovs-dev] [PATCH v5 5/6] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-11 Thread antonio . fischetti
Rename mp_size as n_mbufs in dpdk_mp structure. This parameter is passed to rte mempool creation functions and is meant to contain the number of elements inside the requested mempool. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c

[ovs-dev] [PATCH v5 4/6] netdev-dpdk: assert mempool names.

2017-10-11 Thread antonio . fischetti
Replace if statement with an assert. CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 2aa4a55

[ovs-dev] [PATCH v5 2/6] netdev-dpdk: Fix mempool names to reflect socket id.

2017-10-11 Thread antonio . fischetti
etdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- Mempool names now contains the requested socket id and become like: "ovs_4adb057e_1_2030_20512". Tested with DPDK 17.05.2 (from dpdk-stable branch). NUMA-awareness feature enabled (DPD

[ovs-dev] [PATCH v5 3/6] netdev-dpdk: skip init for existing mempools.

2017-10-11 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5 insertions(+), 5

[ovs-dev] [PATCH v5 1/6] netdev-dpdk: fix management of pre-existing mempools.

2017-10-11 Thread antonio . fischetti
Fixes: d555d9bded5f ("netdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- I've tested this patch by - changing at run-time the number of Rx queues: ovs-vsctl set Interface dpdk0 type=dpdk options:n_rxq=4 - reducing the MTU of the

[ovs-dev] [PATCH v5 0/6] netdev-dpdk: Fix management of pre-existing mempools.

2017-10-11 Thread antonio . fischetti
List of versions: - v5: manage new MTU value when a pre-existing mempool is returned. - v4: fix NUMA awareness usecase - v3: avoid deletion of pre-existing mempools - v2: rework to accomodate code changes for dpdk ports too - v1: 1st implementation. Fischetti, Antonio (6): netdev-dpdk: fix

[ovs-dev] [PATCH v4 6/6] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-06 Thread antonio . fischetti
Rename dpdk_mp_put as dpdk_mp_free, add other comments to mempool functions. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib

[ovs-dev] [PATCH v4 5/6] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-06 Thread antonio . fischetti
Rename mp_size as n_mbufs in dpdk_mp structure. This parameter is passed to rte mempool creation functions and is meant to contain the number of elements inside the requested mempool. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c

[ovs-dev] [PATCH v4 4/6] netdev-dpdk: assert mempool names.

2017-10-06 Thread antonio . fischetti
Replace if statement with an assert. CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 00335f2

[ovs-dev] [PATCH v4 3/6] netdev-dpdk: skip init for existing mempools.

2017-10-06 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Darrell Ball CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5 insertions(+), 5

[ovs-dev] [PATCH v4 2/6] netdev-dpdk: Fix mempool names to reflect socket id.

2017-10-06 Thread antonio . fischetti
arate memory pool for each port.") Signed-off-by: Antonio Fischetti --- Mempool names now contains the requested socket id and become like: "ovs_4adb057e_1_2030_20512". Tested with DPDK 17.05.2 (from dpdk-stable branch). NUMA-awareness feature enabled (DPDK/config/common_base

[ovs-dev] [PATCH v4 1/6] netdev-dpdk: fix management of pre-existing mempools.

2017-10-06 Thread antonio . fischetti
etdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- I've tested this patch by - changing at run-time the number of Rx queues: ovs-vsctl set Interface dpdk0 type=dpdk options:n_rxq=4 - reducing the MTU of the dpdk ports of 1 byte t

[ovs-dev] [PATCH v3 5/5] netdev-dpdk: Rename dpdk_mp_put as dpdk_mp_free.

2017-10-05 Thread antonio . fischetti
Rename dpdk_mp_put as dpdk_mp_free, add other comments to mempool functions. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib

[ovs-dev] [PATCH v3 4/5] netdev-dpdk: Reword mp_size as n_mbufs.

2017-10-05 Thread antonio . fischetti
Rename mp_size as n_mbufs in dpdk_mp structure. This parameter is passed to rte mempool creation functions and is meant to contain the number of elements inside the requested mempool. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c

[ovs-dev] [PATCH v3 3/5] netdev-dpdk: assert mempool names.

2017-10-05 Thread antonio . fischetti
Replace if statement with an assert. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 6a7cae4..46bd201 100644 --- a/lib

[ovs-dev] [PATCH v3 2/5] netdev-dpdk: skip init for existing mempools.

2017-10-05 Thread antonio . fischetti
Skip initialization of mempool packet areas if this was already done in a previous call to dpdk_mp_create. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a

[ovs-dev] [PATCH v3 1/5] netdev-dpdk: fix mempool management with vhu client.

2017-10-05 Thread antonio . fischetti
etdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- I've tested this patch by - changing at run-time the number of Rx queues: ovs-vsctl set Interface dpdk0 type=dpdk options:n_rxq=4 - reducing the MTU of the dpdk ports of 1 byte to

[ovs-dev] [PATCH v2 4/4] netdev-dpdk: Reword mp_size as n_mbufs.

2017-09-28 Thread antonio . fischetti
From: Antonio Fischetti Rename mp_size as n_mbufs in dpdk_mp structure. This parameter is passed to rte mempool creation functions and is meant to contain the number of elements inside the requested mempool. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti

[ovs-dev] [PATCH v2 3/4] netdev-dpdk: assert mempool names.

2017-09-28 Thread antonio . fischetti
From: Antonio Fischetti CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index 25fb9a8..dded37f 100644 --- a/lib/netdev

[ovs-dev] [PATCH v2 2/4] netdev-dpdk: if mempool already exists don't reinit packet areas.

2017-09-28 Thread antonio . fischetti
From: Antonio Fischetti Skip initialization of mempool objects if this was already done in a previous call to dpdk_mp_create. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 10 +- 1 file changed, 5 insertions(+), 5

[ovs-dev] [PATCH v2 1/4] netdev-dpdk: fix mempool management with vhu client.

2017-09-28 Thread antonio . fischetti
From: Antonio Fischetti In a PVP test where vhostuser ports are configured as clients, OvS crashes when QEMU is launched. This patch avoids the repeated calls to netdev_change_seq_changed after the requested mempool is already acquired. CC: Kevin Traynor CC: Aaron Conole Reported-by: Ciara

[ovs-dev] [PATCH 4/4] netdev-dpdk: Reword mp_size as n_mbufs.

2017-09-26 Thread antonio . fischetti
The mp_size parameter to be passed to rte mempool creation functions is meant to contain the number of elements inside the requested mempool. So it is renamed as n_mbufs. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- DPDK doc for

[ovs-dev] [PATCH 3/4] netdev-dpdk: log an err message when a mempool name is empty.

2017-09-26 Thread antonio . fischetti
Log an error message when the creation of a name for a new mempool fails. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index f3f42ee

[ovs-dev] [PATCH 2/4] netdev-dpdk: if mempool already exists don't reinit packet areas.

2017-09-26 Thread antonio . fischetti
Skip initialization of mempool objects if this was already done in a previous call to dpdk_mp_create. CC: Ciara Loftus CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Antonio Fischetti --- lib/netdev-dpdk.c | 15 +-- 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a

[ovs-dev] [PATCH 1/4] netdev-dpdk: fix mempool management with vhu client.

2017-09-26 Thread antonio . fischetti
etdev-dpdk: Create separate memory pool for each port.") Signed-off-by: Antonio Fischetti --- To replicate the bug scenario: PVP test setup -- CLIENT_SOCK_DIR=/tmp SOCK0=dpdkvhostuser0 SOCK1=dpdkvhostuser1 1 PMD Add 2 dpdk ports, n_rxq=1 Add 2 vhu ports both of type dpdkvhost

[ovs-dev] [PATCH v2 4/4] conntrack: read current nr of connections.

2017-09-26 Thread antonio . fischetti
Example: ovs-appctl dpctl/ct-get-glbl-cfg totconn CC: Kevin Traynor Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/lib/conntrack.c b/lib/conntrack.c index 684e468..b04ffb9 100644 --- a/lib/conntrack.c +++ b/lib/conntrack.c

[ovs-dev] [PATCH v2 2/4] conntrack: add commands to r/w CT parameters.

2017-09-26 Thread antonio . fischetti
Add infrastructure to implement: - dpctl/ct-get-glbl-cfg to read a current value of available conntrack parameters. - dpctl/ct-set-glbl-cfg to set a value to the available conntrack parameters. CC: Kevin Traynor Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 60

[ovs-dev] [PATCH v2 3/4] conntrack: r/w upper limit connection value.

2017-09-26 Thread antonio . fischetti
Read/Write the upper limit value for connections. Example: # set a new upper limit ovs-appctl dpctl/ct-set-glbl-cfg maxconn=100 # display cur upper limit ovs-appctl dpctl/ct-get-glbl-cfg maxconn CC: Kevin Traynor Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 22

[ovs-dev] [PATCH v2 1/4] dpctl: Add a comment to functions retrieving the datapath name.

2017-09-26 Thread antonio . fischetti
Signed-off-by: Antonio Fischetti --- lib/dpctl.c | 28 +++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/lib/dpctl.c b/lib/dpctl.c index 8951d6e..b6eecf0 100644 --- a/lib/dpctl.c +++ b/lib/dpctl.c @@ -825,6 +825,9 @@ dpctl_dump_flows(int argc, const char

[ovs-dev] [PATCH v2 0/4] Conntrack: add commands to r/w CT parameters.

2017-09-26 Thread antonio . fischetti
This series adds two new commands to allow read/write of some of the CT configuration parameters. This could be used for maintenance purposes or to find a better tuning of the current setup. V2: Reworked based on comments. V1: First implementation. Fischetti, Antonio (4): dpctl: Add a comment t

[ovs-dev] [PATCH v2] dpctl: manage ret value when dumping CT entries.

2017-09-26 Thread antonio . fischetti
Manage error value returned by ct_dpif_dump_next. Signed-off-by: Antonio Fischetti --- lib/dpctl.c | 27 --- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/lib/dpctl.c b/lib/dpctl.c index 8951d6e..d229c97 100644 --- a/lib/dpctl.c +++ b/lib/dpctl.c

[ovs-dev] [PATCH 5/5] conntrack: update manual and usage for R/W parameter.

2017-09-18 Thread antonio . fischetti
Update manual and usage for R/W parameters commands. Signed-off-by: Antonio Fischetti --- lib/dpctl.man | 8 utilities/ovs-dpctl.c | 2 ++ 2 files changed, 10 insertions(+) diff --git a/lib/dpctl.man b/lib/dpctl.man index 675fe5a..836cc08 100644 --- a/lib/dpctl.man +++ b/lib

[ovs-dev] [PATCH 4/5] conntrack: read current nr of connections.

2017-09-18 Thread antonio . fischetti
Read current number of connections managed by the CT module. Example: ovs-appctl dpctl/ct-get totconn Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/lib/conntrack.c b/lib/conntrack.c index 60eb376..412665a 100644 --- a/lib

[ovs-dev] [PATCH 3/5] conntrack: r/w clean-up interval.

2017-09-18 Thread antonio . fischetti
Read/Write conntrack clean-up interval used by the clean_thread_main() thread. Example: ovs-appctl dpctl/ct-set cleanup=4000 # Set a new value ovs-appctl dpctl/ct-get cleanup # Read Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 27 --- lib

[ovs-dev] [PATCH 2/5] conntrack: r/w upper limit value for connections.

2017-09-18 Thread antonio . fischetti
Read/Write the upper limit value for connections. Example: # set a new upper limit ovs-appctl dpctl/ct-set maxconn=100 # display cur upper limit ovs-appctl dpctl/ct-get maxconn Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 22 +- 1 file changed, 21

[ovs-dev] [PATCH 1/5] conntrack: add commands to r/w conntrack parameters.

2017-09-18 Thread antonio . fischetti
parameters. Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 67 + lib/conntrack.h | 3 ++ lib/ct-dpif.c | 28 ++ lib/ct-dpif.h | 2 ++ lib/dpctl.c | 85

[ovs-dev] [PATCH 2/2] dpctl: init CT entry variable.

2017-09-13 Thread antonio . fischetti
ct_dpif_entry_uninit could potentially be called even if ct_dpif_dump_next failed. As ct_dpif_entry_uninit receives a pointer to a CT entry - and just checks it is not null - it's safer to init to zero any instantiated ct_dpif_entry variable before its usage. Signed-off-by: Antonio Fisc

[ovs-dev] [PATCH 1/2] dpctl: manage ret value when dumping CT entries.

2017-09-13 Thread antonio . fischetti
Manage error value returned by ct_dpif_dump_next. Signed-off-by: Antonio Fischetti --- lib/dpctl.c | 28 +--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/lib/dpctl.c b/lib/dpctl.c index 8951d6e..86d0f90 100644 --- a/lib/dpctl.c +++ b/lib/dpctl.c

[ovs-dev] [PATCH v5] dpif-netdev: Avoid reading RSS hash when EMC is disabled

2017-09-12 Thread antonio . fischetti
When EMC is disabled the reading of RSS hash is skipped. Also, for packets that are not recirculated it retrieves the hash value without considering the recirc id. CC: Darrell Ball CC: Billy O Mahony Signed-off-by: Antonio Fischetti --- V5 - Removed OVS_LIKELY when checking cur_min. - I

[ovs-dev] [PATCH RFC] conntrack: Share conn info with EMC.

2017-09-11 Thread antonio . fischetti
C: Darrell Ball CC: Joe Stringer Signed-off-by: Antonio Fischetti Co-authored-by: Bhanuprakash Bodireddy Signed-off-by: Bhanuprakash Bodireddy --- - No testing is done with S-NAT, D-NAT cases. - The timeout value in CT_CONN_REFRESH_TIMEOUT_MS is an arbitrary value. - A further step could b

[ovs-dev] [PATCH v4] dpif-netdev: Avoid reading RSS hash when EMC is disabled

2017-08-25 Thread antonio . fischetti
When EMC is disabled the reading of RSS hash is skipped. Also, for packets that are not recirculated it retrieves the hash value without considering the recirc id. Signed-off-by: Antonio Fischetti --- V4 - reworked to remove dependencies from other patches in patchset "Skip EM

[ovs-dev] [PATCH v4] netdev-dpdk: Create separate memory pool for each port.

2017-08-25 Thread antonio . fischetti
Since it's possible to delete memory pool in DPDK we can try to estimate better required memory size when port is reconfigured, e.g. with different number of rx queues. CC: Kevin Traynor CC: Aaron Conole Signed-off-by: Robert Wojciechowicz Co-authored-by: Antonio Fischetti Signed-o

[ovs-dev] [PATCH v3 4/4] dp-packet: Use memcpy on dp_packet elements.

2017-08-11 Thread antonio . fischetti
memcpy replaces the several single copies inside dp_packet_clone_with_headroom(). Signed-off-by: Antonio Fischetti --- I tested this change by comparing the CPU Time over a 60 sec analysis with VTune. In original ovs: dp_packet_clone_with_headroom4.530s + this changes

[ovs-dev] [PATCH v3 3/4] conntrack: pass current time to conntrack_execute.

2017-08-11 Thread antonio . fischetti
Current time is passed to conntrack_execute so it doesn't have to recompute it again. Signed-off-by: Antonio Fischetti Acked by: Sugesh Chandran --- In a firewall testbench set up with table=0, priority=1 actions=drop table=0, priority=10,arp actions=NORMAL table=0, priority=100,ct_

[ovs-dev] [PATCH v3 2/4] dpif-netdev: Avoid reading RSS hash when EMC is disabled

2017-08-11 Thread antonio . fischetti
When EMC is disabled the reading of RSS hash is skipped. Also, for packets that are not recirculated it retrieves the hash value without considering the recirc id. Signed-off-by: Antonio Fischetti --- This patch depends on previous patch in this series. Port-to-Port Test

[ovs-dev] [PATCH v3 1/4] dpif-netdev: Skip EMC lookup/insert for recirc packets

2017-08-11 Thread antonio . fischetti
re sent to the classifier. This patch is based on patch "dpif-netdev: add EMC entry count and %full figure to pmd-stats-show" at: https://mail.openvswitch.org/pipermail/ovs-dev/2017-January/327570.html CC: Jan Scheurich Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodir

[ovs-dev] [PATCH v3 0/4] Skip EMC for recirc pkts and other optimizations.

2017-08-11 Thread antonio . fischetti
This patchset comes from an attempt to improve the ConnTracker performance in OvS-DPDK when used as a firewall. We focused on some aspects like the management of recirculated packets and some function tuning. Some of this changes may be a benefit also for cases other than the connection tracker fir

[ovs-dev] [PATCH] dpif-netdev: Fix comments in function headers

2017-08-11 Thread antonio . fischetti
Fix comments for emc_processing and dp_netdev_input__ regarding md_is_valid. Signed-off-by: Antonio Fischetti --- lib/dpif-netdev.c | 13 +++-- 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index e2cd931..5c5c20e 100644 --- a/lib

[ovs-dev] [PATCH v5] dpctl: Add new 'ct-bkts' command.

2017-07-24 Thread antonio . fischetti
With the command: ovs-appctl dpctl/ct-bkts shows the number of connections per bucket. By using a threshold: ovs-appctl dpctl/ct-bkts gt=N for each bucket shows the number of connections when they are greater than N. Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co

[ovs-dev] [PATCH RFC] conntrack: Block transmission of unreplied UDP packets.

2017-07-23 Thread antonio . fischetti
o-dir stream will succesfully pass through the firewall. This patch allows to send the 1st initiating packet, but blocks the transmission of the next UDP packets as long as the created connection is still unreplied. Signed-off-by: Antonio Fischetti --- lib/conntrack-other.c | 10 +- 1

[ovs-dev] [PATCH v4] dpctl: Add new 'ct-bkts' command.

2017-07-22 Thread antonio . fischetti
With the command: ovs-appctl dpctl/ct-bkts shows the number of connections per bucket. By using a threshold: ovs-appctl dpctl/ct-bkts gt=N for each bucket shows the number of connections when they are greater than N. Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co

[ovs-dev] [PATCH v2 5/5] dp-packet: Use memcpy on dp_packet elements.

2017-07-19 Thread antonio . fischetti
memcpy replaces the several single copies inside dp_packet_clone_with_headroom(). Signed-off-by: Antonio Fischetti --- lib/dp-packet.c | 18 +- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/lib/dp-packet.c b/lib/dp-packet.c index 67aa406..f4dbcb7 100644 --- a/lib

[ovs-dev] [PATCH v2 4/5] conntrack: pass current time to conntrack_execute.

2017-07-19 Thread antonio . fischetti
Current time is passed to conntrack_execute so it doesn't have to recompute it again. Signed-off-by: Antonio Fischetti Acked by: Sugesh Chandran --- In a firewall testbench set up with table=0, priority=1 actions=drop table=0, priority=10,arp actions=NORMAL table=0, priority=100,ct_

[ovs-dev] [PATCH v2 3/5] dpif-netdev: Skip EMC lookup/insert for recirc packets.

2017-07-19 Thread antonio . fischetti
ent to the classifier. This patch is based on patch "dpif-netdev: add EMC entry count and %full figure to pmd-stats-show" at: https://mail.openvswitch.org/pipermail/ovs-dev/2017-January/327570.html Also, this patch depends on the previous one in this series. Signed-off-by: Antonio Fisc

[ovs-dev] [PATCH v2 2/5] dpif-netdev: Avoid reading RSS hash when EMC is disabled.

2017-07-19 Thread antonio . fischetti
When EMC is disabled the reading of RSS hash is skipped. For packets that are not recirculated it retrieves the hash value without considering the recirc id. This is mostly a preliminary change for the next patch in this series. Signed-off-by: Antonio Fischetti --- lib/dpif-netdev.c | 42

[ovs-dev] [PATCH v2 1/5] dpif-netdev: move pkt metadata init out of emc_processing.

2017-07-19 Thread antonio . fischetti
Packet metadata initialization is moved into dp_netdev_input to improve performance. Signed-off-by: Antonio Fischetti --- In my testbench with the following port to port flow setup: in_port=1,action=output:2 in_port=2,action=output:1 I measured packet Rx rate (regardless of packet loss) in a

[ovs-dev] [PATCH v3] dpctl: Add new 'ct-bkts' command.

2017-07-18 Thread antonio . fischetti
From: Antonio Fischetti With the command: ovs-appctl dpctl/ct-bkts shows the number of connections per bucket. By using a threshold: ovs-appctl dpctl/ct-bkts gt=N for each bucket shows the number of connections when they are greater than N. Signed-off-by: Antonio Fischetti Signed-off-by

[ovs-dev] [PATCH v2] dpctl: Add new 'ct-bkts' command.

2017-07-17 Thread antonio . fischetti
With the command: ovs-appctl dpctl/ct-bkts shows the number of connections per bucket. By using a threshold: ovs-appctl dpctl/ct-bkts gt=N for each bucket shows the number of connections when they are greater than N. Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co

[ovs-dev] [PATCH 3/3] dpctl: Add new 'ct-bkts' command.

2017-06-23 Thread antonio . fischetti
From: Antonio Fischetti With the command: ovs-appctl dpctl/ct-bkts shows the number of connections per bucket. By using a threshold: ovs-appctl dpctl/ct-bkts gt=N for each bucket shows the number of connections when they are greater than N. Signed-off-by: Antonio Fischetti Signed-off-by

[ovs-dev] [PATCH 2/3] dpctl: add CT Stats for Connections per protocol.

2017-06-23 Thread antonio . fischetti
From: Antonio Fischetti Adds CT stats to report number of connections grouped by protocol. By using utilities/ovs-appctl dpctl/ct-stats-show it can display something like: Connections Stats: Total: 1808 TCP: 1808 With the verbose options: utilities/ovs-appctl dpctl/ct-stats-show

[ovs-dev] [PATCH 1/3] Fix: coding style and some typos.

2017-06-23 Thread antonio . fischetti
From: Antonio Fischetti Fixes some lines exceeding 80 chars and a couple of typos. Signed-off-by: Antonio Fischetti --- lib/conntrack.c | 2 +- lib/dpctl.c | 6 -- lib/dpif-netdev.c | 2 +- utilities/ovs-dpctl.c | 6 -- 4 files changed, 10 insertions(+), 6

[ovs-dev] [PATCH 4/4] dp-packet: Use memcpy to copy dp_packet fields.

2017-06-19 Thread antonio . fischetti
From: Antonio Fischetti memcpy replaces the single copies inside dp_packet_clone_with_headroom(). Signed-off-by: Antonio Fischetti --- lib/dp-packet.c | 17 + 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/dp-packet.c b/lib/dp-packet.c index 67aa406..5b1d416

[ovs-dev] [PATCH RFC 2/4] dpif-netdev: Skip EMC lookup/insert for recirculated packets.

2017-06-19 Thread antonio . fischetti
From: Antonio Fischetti When OVS is configured as a firewall, with thousands of active concurrent connections, the EMC gets quicly saturated and may come under heavy thrashing for the reason that original and recirculated packets keep overwrite existing active EMC entries due to its limited size

[ovs-dev] [PATCH 3/4] conntrack: pass current time to conntrack_execute.

2017-06-19 Thread antonio . fischetti
From: Antonio Fischetti Current time is passed to conntrack_execute so it doesn't have to recompute it again. Signed-off-by: Antonio Fischetti --- lib/conntrack.c| 4 ++-- lib/conntrack.h| 3 ++- lib/dpif-netdev.c | 2 +- tests/test-conntrack.c | 8 +--- 4

[ovs-dev] [PATCH 1/4] dpif-netdev: Avoid reading RSS hash when EMC is disabled.

2017-06-19 Thread antonio . fischetti
From: Antonio Fischetti When EMC is disabled the reading of RSS hash is skipped. For packets that are not recirculated it retrieves the hash value without considering the recirc id. This is mostly a preliminary change for the next patch in this series. Signed-off-by: Antonio Fischetti --- In

[ovs-dev] [PATCH RFC v2] Conntrack: Avoid recirculation for established connections.

2017-05-25 Thread antonio . fischetti
From: Antonio Fischetti With conntrack enabled, packets get recirculated and this impacts the performance with thousands of active concurrent connections. This patch is aimed at avoiding recirculation for packets belonging to established connections in steady state. This is achieved by

[ovs-dev] [PATCH RFC] Conntrack: Avoid recirculation for established connections.

2017-05-25 Thread antonio . fischetti
From: Antonio Fischetti With conntrack enabled, packets get recirculated and this impacts the performance with thousands of active concurrent connections. This patch is aimed at avoiding recirculation for packets belonging to established connections in steady state. This is achieved by

[ovs-dev] [PATCH v2 1/2] netdev-dpdk: Use intermediate queue during packet transmission.

2017-01-17 Thread antonio . fischetti
nd() is at 0.55 and the overall throughput improved significantly. Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co-authored-by: Bhanuprakash Bodireddy Signed-off-by: Markus Magnusson Co-authored-by: Markus Magnusson --- lib/dpif-netdev.

[ovs-dev] [PATCH v2 2/2] dp-packet: Fix comment on DPDK buffer data.

2017-01-17 Thread antonio . fischetti
Fix comments about the DPDK buffer data to refer to dp_packet_init_dpdk() function. Signed-off-by: Antonio Fischetti --- lib/dp-packet.c | 4 ++-- lib/dp-packet.h | 10 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/dp-packet.c b/lib/dp-packet.c index 793b54f

[ovs-dev] [PATCH v2 0/2] netdev-dpdk: Use intermediate queue during packet transmission.

2017-01-17 Thread antonio . fischetti
After packet classification packets are queued in to batches depending on the matching netdev flow. Thereafter each batch is processed to execute the related actions. This becomes particularly inefficient if there are few packets in each batch as rte_eth_tx_burst() incurs expensive MMIO writes. Th

[ovs-dev] [PATCH] dp-packet: Fix comment on DPDK buffer data.

2017-01-11 Thread antonio . fischetti
Small fix on the comments about the DPDK buffer data to refer to dp_packet_init_dpdk() function. Signed-off-by: Antonio Fischetti --- lib/dp-packet.c | 4 ++-- lib/dp-packet.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/dp-packet.c b/lib/dp-packet.c index 793b54f

[ovs-dev] [PATCH v3] dpcls: Avoid one 8-byte chunk in subtable mask.

2017-01-06 Thread antonio . fischetti
{dp_hash, in_port} portion of the miniflow. This doesn't contribute effectively in spreading hash values and avoiding collisions. v2: Using ovs_assert. v3: Fix for dumped flows missing the in_port match. Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co-author

[ovs-dev] [PATCH v2] dpcls: Avoid one 8-byte chunk in subtable mask.

2017-01-05 Thread antonio . fischetti
{dp_hash, in_port} portion of the miniflow. This doesn't contribute effectively in spreading hash values and avoiding collisions. v2: Using ovs_assert Signed-off-by: Antonio Fischetti Signed-off-by: Bhanuprakash Bodireddy Co-authored-by: Bhanuprakash Bodireddy Signed-off-by: Jarno Rajahalm

  1   2   >