On Mon, Jun 9, 2014 at 9:56 PM, YAMAMOTO Takashi wrote:
>> On Mon, Jun 9, 2014 at 5:26 PM, YAMAMOTO Takashi
>> wrote:
Add a macro to waiting until all ports supplied are connected.
CC: Jarno Rajahalme
Signed-off-by: Andy Zhou
---
tests/ofproto-macros.at | 9 +
> On Mon, Jun 9, 2014 at 5:26 PM, YAMAMOTO Takashi
> wrote:
>>> Add a macro to waiting until all ports supplied are connected.
>>>
>>> CC: Jarno Rajahalme
>>> Signed-off-by: Andy Zhou
>>> ---
>>> tests/ofproto-macros.at | 9 +
>>> 1 file changed, 9 insertions(+)
>>>
>>> diff --git a/te
On Mon, Jun 9, 2014 at 5:26 PM, YAMAMOTO Takashi wrote:
>> Add a macro to waiting until all ports supplied are connected.
>>
>> CC: Jarno Rajahalme
>> Signed-off-by: Andy Zhou
>> ---
>> tests/ofproto-macros.at | 9 +
>> 1 file changed, 9 insertions(+)
>>
>> diff --git a/tests/ofproto-ma
> Add a macro to waiting until all ports supplied are connected.
>
> CC: Jarno Rajahalme
> Signed-off-by: Andy Zhou
> ---
> tests/ofproto-macros.at | 9 +
> 1 file changed, 9 insertions(+)
>
> diff --git a/tests/ofproto-macros.at b/tests/ofproto-macros.at
> index b4b6dab..af1e4f8 10064
On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> When a flow with a "learn" action is deleted, one often wants the flows
> that it created (the "learned flows") to be deleted as well. This commit
> makes that possible.
>
> I am aware of a race condition that could lead to a learned flow not being
> pro
On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> The delete_flow__() function had two callers, each of which had to
> correctly call ofmonitor_flush() when completely done. An upcoming commit
> will add another function that the callers need to call. This is easier
> if delete_flow__() only has one cal
On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> Nothing actually used it.
>
> An upcoming commit will use part of the hole for a new member.
>
> Signed-off-by: Ben Pfaff
LGTM in general
The commit description is slightly misleading as 'hole' suggests that
none of struct rule_action's member offsets
On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> This commit finishes the removal of asynchronous flow table operations
> begun in the previous commit, by removing ofoperation and ofopgroup
> entirely and all of the code that depended on them. Following this commit,
> all the internal documentation and
Acked-by: Pritesh Kothari
On Jun 9, 2014, at 3:58 PM, Ben Pfaff wrote:
> I think these were leftovers from the removal of %z for MSVC that happened
> some time ago.
>
> VMware-BZ: 1265762
> Signed-off-by: Ben Pfaff
> ---
> lib/netdev-bsd.c |4 ++--
> lib/netdev-linux.c |2 +-
> li
I think these were leftovers from the removal of %z for MSVC that happened
some time ago.
VMware-BZ: 1265762
Signed-off-by: Ben Pfaff
---
lib/netdev-bsd.c |4 ++--
lib/netdev-linux.c |2 +-
lib/netlink-socket.c |2 +-
lib/netlink.c|2 +-
4 files changed, 5 insertion
On Fri, May 30, 2014 at 12:06:24PM -0700, Gurucharan Shetty wrote:
> This just makes ovs-benchmark compile on windows.
> This lets us go ahead with just a 'make' instead of
> picking and choosing executables that are tested to work on
> windows as arguments for make.
>
> This commit does not make
On Fri, May 30, 2014 at 12:06:23PM -0700, Gurucharan Shetty wrote:
> We do not yet have a port for unixctl in Python. Till
> deemed necessary, there is no plan to port it.
>
> Signed-off-by: Gurucharan Shetty
Same comment about splitting AT_SKIP_IF into two cases.
Acked-by: Ben Pfaff
_
On Fri, May 30, 2014 at 12:06:22PM -0700, Gurucharan Shetty wrote:
> Some of the tests in test-lockfile.c uses fork to test a
> child's ability to acquire lock. We do not fork in Windows.
> We also do not support symlinks on Windows. So, comment out
> those tests.
>
> The error messages output is
On Fri, May 30, 2014 at 12:06:21PM -0700, Gurucharan Shetty wrote:
> And also disable the corresponding python tests.
Same comment as before for AT_SKIP_IF.
Do we want to skip every Python test on Windows? If so, should we
change tests/atlocal.at to set HAVE_PYTHON=no if IS_WIN32=yes?
Acked-by:
On 06/09/14 at 03:26pm, Andy Zhou wrote:
> On Mon, Jun 9, 2014 at 2:58 PM, Thomas Graf wrote:
> > On 06/06/14 at 02:37pm, Andy Zhou wrote:
> >> +static void tbl_mask_array_delete_mask(struct mask_array *ma,
> >> +const struct sw_flow_mask *mask)
> >> +{
> >> +
On Fri, May 30, 2014 at 12:06:20PM -0700, Gurucharan Shetty wrote:
> Signed-off-by: Gurucharan Shetty
Acked-by: Ben Pfaff
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
On Fri, May 30, 2014 at 12:06:19PM -0700, Gurucharan Shetty wrote:
> file_name.at tests dirname(), basename() and symlinks tests
> that are POSIX related.
>
> Though we run the unit tests on msys, msys
> automatically converts '/' to a Windows equivalent 'C:/foo/bar'
> So, dirname() and basename()
On Mon, Jun 9, 2014 at 2:58 PM, Thomas Graf wrote:
> On 06/06/14 at 02:37pm, Andy Zhou wrote:
>> +static void tbl_mask_array_delete_mask(struct mask_array *ma,
>> +const struct sw_flow_mask *mask)
>> +{
>> + int i = 0;
>> +
>> + /* Delete a mask pointer
On Fri, May 30, 2014 at 12:06:18PM -0700, Gurucharan Shetty wrote:
> Python daemon functions haven't been ported for Windows. As of now,
> there is no use for it on Windows. If such a use case comes up,
> we will have to port them. Till then don't run those tests on
> Windows.
>
> Signed-off-by: G
On Fri, May 30, 2014 at 12:06:17PM -0700, Gurucharan Shetty wrote:
> Skip some of the tests that uses '--monitor' as an option as
> it is not implemented on Windows.
>
> When a 'kill pid' is done on windows (through 'taskkill //F'),
> pidfiles are not deleted (because it is force kill), so use
> '
On Fri, May 30, 2014 at 12:06:16PM -0700, Gurucharan Shetty wrote:
> When a OVS daemon is configured to run as a Windows service,
> when the service is stopped by calling service_stop(), the
> windows services manager does not give enough time to do
> everything in the atexit handler. So call the e
On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> Open vSwitch has supported datapaths that cannot update their flow tables
> synchronously for many versions. In that time, I have talked to many
> hardware implementers. None of them has ever mentioned the asynchronous
> interface. Furthermore, the only
On Fri, May 30, 2014 at 12:06:15PM -0700, Gurucharan Shetty wrote:
> According to msdn documentation, one is discouraged from using
> IP_TOS for ipv4 sockets (it apparently does not actually set
> anything). Also, IPV6_TCLASS does not exist in
> Windows. Looks like Microsoft recommends QoS2 APIs to
On Fri, May 30, 2014 at 12:06:14PM -0700, Gurucharan Shetty wrote:
> Fix the bug which did not kill the processes with pids that had
> a zero in them. Also, some tests do a AT_CHECK([kill `cat pid`]) which
> on windows prints something on the stdout causing the tests to fail.
> So supress it.
>
>
On Fri, May 30, 2014 at 12:06:13PM -0700, Gurucharan Shetty wrote:
> With Visual Studio and Msys combination, something is going
> wrong when we do a '3 fails. I do not know the exact reason for the failure. But the
> workaround is straightforward.
>
> Signed-off-by: Gurucharan Shetty
I remember
On Fri, May 30, 2014 at 12:06:12PM -0700, Gurucharan Shetty wrote:
> There is no 'kill -l' type functionality available on Windows.
> So instead of looking for the string 'ABRT', check for the exit
> code which when run on msys (unit test environment) is 9.
We could unify this a bit: on Unix-like
Yes it will work. I'll do check-all on transaction failure.
I'll also combine this commit with the previous one for clarity.
Thanks,
Alex Wang,
On Mon, Jun 9, 2014 at 2:39 PM, Ben Pfaff wrote:
> On Sun, Jun 01, 2014 at 10:04:30PM -0700, Alex Wang wrote:
> > This commit adds logic that marks
On Mon, Jun 9, 2014 at 2:36 PM, Ben Pfaff wrote:
> On Sun, Jun 01, 2014 at 10:04:29PM -0700, Alex Wang wrote:
> > This commit adds logic that checks the return value of status_txn
> > transaction and runs the update again if the transaction fails.
> >
> > Signed-off-by: Alex Wang
>
> I am not su
When reaching the end of a prefix trie, we checked one bit off the end
to the intended data. However, since the trie node in that case has
NULLs for both edge links, this did not result in incorrect
functionality.
Found via check-valgrind.
Reported-by: Ben Pfaff
Signed-off-by: Jarno Rajahalme
On Mon, Jun 09, 2014 at 02:58:40PM -0700, Ben Pfaff wrote:
> On Fri, May 30, 2014 at 12:06:10PM -0700, Gurucharan Shetty wrote:
> > There are a couple of upcoming users.
> >
> > Signed-off-by: Gurucharan Shetty
>
> Acked-by: Ben Pfaff
Should we call WSAStartup() from an OVS_CONSTRUCTOR()?
(We
On Fri, May 30, 2014 at 12:06:11PM -0700, Gurucharan Shetty wrote:
> After the change, both of them compile. test-netflow related
> unit tests pass.
>
> test-sflow related tests do not pass because
> of LOOPBACK_INTERFACE constraints for 'agent'.
> (It should be revisited later.)
>
> Signed-off-b
On Fri, May 30, 2014 at 12:06:10PM -0700, Gurucharan Shetty wrote:
> There are a couple of upcoming users.
>
> Signed-off-by: Gurucharan Shetty
Acked-by: Ben Pfaff
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
On 06/06/14 at 02:37pm, Andy Zhou wrote:
> +static void tbl_mask_array_delete_mask(struct mask_array *ma,
> +const struct sw_flow_mask *mask)
> +{
> + int i = 0;
> +
> + /* Delete a mask pointer from the valid section.
> + *
> + * Also move the
On Fri, May 30, 2014 at 12:06:09PM -0700, Gurucharan Shetty wrote:
> The constant MAX_PATH is already defined in Windows.
>
> Signed-off-by: Gurucharan Shetty
The name MAXPATH will just make me wonder why there's a missing _.
How about MAX_DEPTH?
___
d
On Mon, Jun 09, 2014 at 10:28:25PM +0100, Thomas Graf wrote:
> On 06/06/14 at 03:25pm, Ben Pfaff wrote:
> > On Fri, Jun 06, 2014 at 11:11:57AM +0100, Thomas Graf wrote:
> > > On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> > > > +/* By default, criteria initialized by rule_criteria_init() will match
>
On Sun, Jun 01, 2014 at 10:04:29PM -0700, Alex Wang wrote:
> This commit adds logic that checks the return value of status_txn
> transaction and runs the update again if the transaction fails.
>
> Signed-off-by: Alex Wang
I am not sure that you understand what TXN_INCOMPLETE means. It means
tha
On Mon, Jun 9, 2014 at 2:09 PM, Thomas Graf wrote:
> Acked-by: Thomas Graf
Thanks!
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
On Sun, Jun 01, 2014 at 10:04:30PM -0700, Alex Wang wrote:
> This commit adds logic that marks the 'struct iface's when their
> status need to be updated but the current status update transaction
> fails. So, the main thread can re-try the update in the next run.
>
> Bug #1256577
>
> Signed-off-
On Sun, Jun 01, 2014 at 10:04:28PM -0700, Alex Wang wrote:
> Currently, ofproto_port_get_bfd/cfm_status() is used to check the
> bfd/cfm status change and query the status change. Users decide
> what to do with the filled status struct based on the return value
> of the funciton. Such design is c
On 06/06/14 at 03:25pm, Ben Pfaff wrote:
> On Fri, Jun 06, 2014 at 11:11:57AM +0100, Thomas Graf wrote:
> > On 06/05/14 at 10:02pm, Ben Pfaff wrote:
> > > +/* By default, criteria initialized by rule_criteria_init() will match
> > > flows
> > > + * that are read-only, on the assumption that the co
Non-leader revalidator thread uses pthread_barrier_* functions in their
main loop to synchronize with leader thread. However, since those threads
only call poll_block() intermittently, the poll interval check in
poll_block() can wrongly take the time since last call as poll interval
and issue the
On 06/06/14 at 02:59pm, Ben Pfaff wrote:
> I only changed it for cosmetic reasons, because I thought that the
> code "looked better" that way, so that's a good question.
>
> I do not think that the order matters because both of these are used
> only with ofproto_mutex held:
>
> * The list
On Mon, Jun 9, 2014 at 1:59 PM, Ben Pfaff wrote:
> On Mon, Jun 09, 2014 at 12:40:46PM -0700, Ben Pfaff wrote:
> > On Thu, May 29, 2014 at 04:15:46PM -0700, Alex Wang wrote:
> > > Non-leader revalidator thread uses pthread_barrier_* functions in their
> > > main loop to synchronize with leader thr
On Mon, Jun 09, 2014 at 12:40:46PM -0700, Ben Pfaff wrote:
> On Thu, May 29, 2014 at 04:15:46PM -0700, Alex Wang wrote:
> > Non-leader revalidator thread uses pthread_barrier_* functions in their
> > main loop to synchronize with leader thread. However, since those threads
> > only call poll_block
On 06/06/14 at 01:59pm, Andy Zhou wrote:
> On Fri, Jun 6, 2014 at 3:46 AM, Thomas Graf wrote:
> > On 06/04/14 at 01:53pm, Andy Zhou wrote:
> >> Signed-off-by: Andy Zhou
> >
> > I would personally value a commit message here since this looks like
> > more than just a simplification ;-)
>
> The al
On Thu, May 29, 2014 at 04:15:46PM -0700, Alex Wang wrote:
> Non-leader revalidator thread uses pthread_barrier_* functions in their
> main loop to synchronize with leader thread. However, since those threads
> only call poll_block() intermittently, the poll interval check in
> poll_block() can wr
When, during a classifier lookup, we narrow down to a single potential
rule, it is enough to match on ("unwildcard") one bit that differs
between the packet and the rule.
This is a special case of the more general algorithm, where it is
sufficient to match on enough bits that separates the packet
Use cmap instead of hmap & hindex in classifier. Performance impact
with current locking strategy is not yet tested. Later patches will
introduce RCU into the classifer.
Signed-off-by: Jarno Rajahalme
---
lib/classifier.c| 194 +--
lib/class
This further eases porting existing hmap code to use cmap instead.
The iterator variants taking an explicit cursor are retained (renamed)
as they are needed when iteration is to be continued from the last
iterated node.
Signed-off-by: Jarno Rajahalme
---
lib/cmap.h| 43 +++
Reduce the number of goto statements by returning via a new helper
fill_range_wc() when no match is found.
Signed-off-by: Jarno Rajahalme
---
lib/classifier.c | 37 ++---
1 file changed, 22 insertions(+), 15 deletions(-)
diff --git a/lib/classifier.c b/lib/clas
This bug did not manifest due to 'hmap_node' being in the same offset
in both struct cls_partition and struct cls_subtable.
Signed-off-by: Jarno Rajahalme
---
lib/classifier.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/classifier.c b/lib/classifier.c
index 00d47ac
Factor out the priority vector code from the classifier.
Making the classifier use RCU instead of locking requires parallel
access to the priority vector, pointing to subtables in descending
priority order. When a new subtable is added, a new copy of the
priority vector is allocated, while the cu
Remove unnecessary includes from lib/classifier.h and add them to
lib/classifier.c as needed.
Signed-off-by: Jarno Rajahalme
---
lib/classifier.c |5 +
lib/classifier.h |9 -
2 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/lib/classifier.c b/lib/classifier.c
in
miniflow_and_mask_matches_flow_wc() fills in the masks in flow
wildcards, so a separate step to that effect is no longer needed.
Signed-off-by: Jarno Rajahalme
---
lib/classifier.c | 57 +
tests/ofproto-dpif.at |6 +++---
2 files changed
On Tue, Jun 03, 2014 at 11:29:53AM -0700, Daniele Di Proietto wrote:
> On some systems libintel_dpdk.a fails to link with libopenvswitch
> unless -ldl is used. This should address the issue
>
> Signed-off-by: Daniele Di Proietto
Applied, thanks!
___
de
The most common time that I get core dumps is when I'm developing new
code and a new test. Usually when I do that I'm only running a single
test at a time. So I don't think that this would help enough.
I wish there were a way to run some code after autotest was done.
There's a "hook" for running
On Thu, May 29, 2014 at 05:16:09PM -0700, Jarno Rajahalme wrote:
> On May 29, 2014, at 3:06 PM, Ben Pfaff wrote:
>
> > Jarno, you might want to take a look at this, since it is a simple
> > patch that improves the test cases in a way that you suggested.
> >
>
> And I wondered why was this not i
Sorry about the delay. I took a few minutes to properly understand
the situation this morning. I applied the following form of your
patch to master and branch-2.[123]:
--8<--cut here-->8--
From: Anoob Soman
Date: Tue, 20 May 2014 12:40:35 +0100
S
This change in dpif-netdev allows faster packet processing for devices which
implement batching (netdev-dpdk currently).
Signed-off-by: Daniele Di Proietto
---
lib/dpif-netdev.c| 352 +++
lib/dpif.c | 12 +-
lib/odp-execute.c
The netdev_send function has been modified to accept multiple packets, to
allow netdev providers to amortize locking and queuing costs.
This is especially true for netdev-dpdk.
Later commits exploit the new API.
Signed-off-by: Daniele Di Proietto
---
lib/dpif-netdev.c | 4 +-
lib/netdev-b
Changes from v3:
struct dpif_packet has its own header
removed many dpif_packet functions (using ofpbuf directly instead)
avoided copying in dpif_execute()
Changes from v2:
introduce struct dpif_packet for storing non-shared packet metadata
Daniele Di Proietto (3):
dpif-netdev: use dpif_packe
This commit introduces a new data structure used for receiving packets from
netdevs and passing them to dpifs.
The purpose of this change is to allow storing some private data for each
packet. The subsequent commits make use of it.
Signed-off-by: Daniele Di Proietto
---
lib/automake.mk
On Fri, Jun 6, 2014 at 2:37 PM, Andy Zhou wrote:
> Simplify flow mask cache replacement without using expensive atomic
> memory access to the mask pointers.
>
> Signed-off-by: Andy Zhou
> ---
> datapath/flow_table.c | 52
> ---
> 1 file changed, 2
Ofproto-dpif bond tests relies on netdev-dummy ports to set up
socket connection before actual tests. The time required
for socket connection varies depends on system load, making the test
prone to failure with simple sleep calls. On the other hand,
conservative sleep value for the slowest machine
Using without any parameter, this command list the connection
state of all netdev-dummy devices that are configured to make
active connections.
Optionally, the name of the netdev-dummy device can be supplied
as a parameter.
The states will be displayed as:
"connected": The socket has been connec
Add a macro to waiting until all ports supplied are connected.
CC: Jarno Rajahalme
Signed-off-by: Andy Zhou
---
tests/ofproto-macros.at | 9 +
1 file changed, 9 insertions(+)
diff --git a/tests/ofproto-macros.at b/tests/ofproto-macros.at
index b4b6dab..af1e4f8 100644
--- a/tests/ofprot
On Sun, Jun 8, 2014 at 1:32 PM, Jarno Rajahalme wrote:
>
>
> Sent from my iPhone
>
> On Jun 8, 2014, at 12:32 AM, Andy Zhou wrote:
>
>>> What needs locking here? Could the locking be moved closer into the new
>>> function?
>>
>>
>> The conn member is declared with OVS_GUARDED in netdev_dummy. T
Added details to dpdk poll mode setup and use to make it easier for some not
familiar to get it operating.
Signed-off-by: Mike A. Polehn
diff --git a/INSTALL.DPDK b/INSTALL.DPDK
index 3e0247a..df497fb 100644
--- a/INSTALL.DPDK
+++ b/INSTALL.DPDK
@@ -17,7 +17,8 @@ Building and Installing:
Recom
Yes, good catch!
Mike Polehn
-Original Message-
From: John W. Linville [mailto:linvi...@tuxdriver.com]
Sent: Monday, June 09, 2014 8:16 AM
To: Polehn, Mike A
Cc: dev@openvswitch.org
Subject: Re: [ovs-dev] Patch [ 1/1] User space dpdk setup documentation addition
On Mon, Jun 09, 2014 at
On Mon, Jun 09, 2014 at 02:47:05PM +, Polehn, Mike A wrote:
> @@ -69,11 +123,72 @@ Now you can add dpdk devices. OVS expect DPDK device
> name start with dpdk
> and end with portid. vswitchd should print number of dpdk devices found.
>
> ovs-vsctl add-port br0 dpdk0 -- set Interface d
Added details to dpdk poll mode setup and use to make it easier for some not
familiar to get it operating.
Signed-off-by: Mike A. Polehn
diff --git a/INSTALL.DPDK b/INSTALL.DPDK
index 3e0247a..689d95d 100644
--- a/INSTALL.DPDK
+++ b/INSTALL.DPDK
@@ -17,7 +17,8 @@ Building and Installing:
Recom
Added details to dpdk poll mode setup and use to make it easier for some not
familiar to get it operating.
Signed-off-by: Mike A. Polehn
diff --git a/INSTALL.DPDK b/INSTALL.DPDK
index 3e0247a..f55ae8b 100644
--- a/INSTALL.DPDK
+++ b/INSTALL.DPDK
@@ -17,7 +17,8 @@ Building and Installing:
Recom
72 matches
Mail list logo