The #include headers net/genetlink.h and linux/genetlink.h both were
included twice, so delete each of the duplicate.
Signed-off-by: Jean Sacren
Cc: Pravin Shelar
Cc: dev@openvswitch.org
---
net/openvswitch/datapath.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/net/openvswitch/datapath
No worries. This kind of thing happens on backports.
On Wed, Aug 6, 2014 at 6:27 PM, Andy Zhou wrote:
> Ben, thanks a lot for fixing it. Sorry I introduced the bug.
>
> On Wed, Aug 6, 2014 at 9:57 AM, Ben Pfaff wrote:
>> Thanks, applied to branch-2.3.
>>
>> On Wed, Aug 06, 2014 at 09:54:28AM -0
Hello guys!
I would also like to thank you for sharing with us your design in such a short
period of time!
I believe it is a great idea to have event registration for IOCTL (for
notifications / waits).
I have a few things that I would need some clarifications with:
o) "Transaction based DPIF pr
On 05/08/14 22:16, Flavio Leitner wrote:
On Mon, Aug 04, 2014 at 12:08:48PM -0700, Andy Zhou wrote:
Zoltan,
Sorry it took a while to get back to you. I am just coming up to
speed on OVS LACP implementation, so my understanding may not be
correct. Please feel free to point them out If I am wro
Hi Sam,
Here are some clarifications:
>o) "Transaction based DPIF primitive": does this mean that we do Reads and
>Writes here?
Transaction based DPIF primitives are mapped into synchronous device I/O
control system calls.
The NL reply would be returned in the output buffer of the IOCTL parame
On Wed, Aug 6, 2014 at 2:55 PM, Justin Pettit wrote:
> Commit fea393b1 (datapath: Describe policy for extending flow key,
> implement needed changes.) changed the key 'OVS_KEY_ATTR_8021Q' to
> 'OVS_KEY_ATTR_VLAN' and the size of the attribute structure. A couple
> of comments were missed, so this
On Thu, Jul 24, 2014 at 12:53:30PM -0700, Ben Pfaff wrote:
> The umask is a process-wide value, so bind_unix_socket() races with file
> creation in other Open vSwitch threads. This fixes the race.
>
> The workaround for non-Linux systems is not ideal, but I do not know any
> other general solutio
Hi Ankur,
I would prefer to enhance odp-netlink.h if possible.
One other idea that comes to mind is to create mockup files of the missing
header
files openvswitch.h(odp-netlink.h) is including and adding them to a directory.
This directory can be used under the forwarding extension solution.
Thi
Hello Saurabh,
[QUOTE]For the set case, we actually send out the packet to all the existing
output ports before going ahead with the set. This is what the function
OvsOutputBeforeSetAction does. So, at any given point we only have one NBL to
deal with.[/QUOTE]
This may still not solve the probl
"it sometimes happens for packets to come in FilterSentNetBufferLists callback:
NBL1, NBL2, NBL3 and NBL4, and only after NBL4 was finished being sent
via NdisFSendNetBufferLists, FilterSentNetBufferListsComplete starts to be
called."
I mean, to enter the FilterSentNetBufferLists callback 4 time
Hi Eithan,
Do you have any particular reason to support both devices for start instead of
focusing on the Netlink interface?
On the patches progressing a bit slower than expected spent a bit too much time
on the issue https://github.com/openvswitch/ovs-issues/issues/10 but I may have
an idea w
Alin,
The two-device approach is for us to make sure that we are getting things
correctly. Eg. what is the output of flow dump in one device, v/s the other
device. I don't think any of the userspace code will have to worry about it.
Like Eitan was mentioning in the previous mail, if we can get a
Hi Alin, yes, we want to exercise the interface when OVS is running. For
example we would like to dump the flow table is not empty.
On the other issue (NBL with multiple NBs, Github issue #10) I think we need to
talk how to support it. After you came across this issue we even know how to
pro
Hi Alin,
Thanks a lot for your reply.
==
[COMMENT]: I would prefer to enhance odp-netlink.h if possible.
[REPLY]: Sure I had a discussion on this with nithin. I'll talk to ben and
confirm if he is ok with having ifdefs in od
OVS need to flow key for flow lookup in recic action. OVS
does key extract in recic action. Most of cases we could
use OVS_CB packet key directly and can avoid packet flow key
extract. SET action we can update flow-key along with packet
to keep it consistent. But there are some action like MPLS
pop
Add usage info for ovs-vswitchd dpdk option. Update
INSTALL.DPDK file.
Reported-by: Hari Sasank Bhamidipalli
Signed-off-by: Pravin B Shelar
---
AUTHORS | 1 +
INSTALL.DPDK| 5 ++---
vswitchd/ovs-vswitchd.c | 2 ++
3 files changed, 5 insertions(+), 3 deletions(-)
dif
There are two separate API to allocate and copy actions list. Anytime
OVS needs to copy action list, it needs to call both functions.
Following patch moves action allocation to copy function to avoid
code duplication.
Signed-off-by: Pravin B Shelar
---
datapath/datapath.c | 49 +-
On Thu, Aug 07, 2014 at 12:40:34PM -0700, Pravin B Shelar wrote:
> Add usage info for ovs-vswitchd dpdk option. Update
> INSTALL.DPDK file.
>
> Reported-by: Hari Sasank Bhamidipalli
> Signed-off-by: Pravin B Shelar
I see that this references INSTALL.DPDK from the --help message. It
looks like
On Thu, Aug 07, 2014 at 06:20:41AM +, Wenyu Zhang wrote:
> > > I'm not sure why tnl_xlate_init() has this new code:
> > > /* The tp_src and tp_dst members in flow_tnl are set to be always
> > > * wildcarded, not to unwildcard them here. */
> > > wc->masks.tunnel.tp_src
Most of the time we do not need the updated key (i.e., when there is no recirc
action). Do you think it would be worthwhile to only update the key when
needed, e.g. by adding a “bool update_key;” member to struct sw_flow_actions?
More comments below,
Jarno
On Aug 7, 2014, at 12:32 PM, Pravin
On Thu, Aug 7, 2014 at 12:55 PM, Ben Pfaff wrote:
> On Thu, Aug 07, 2014 at 12:40:34PM -0700, Pravin B Shelar wrote:
>> Add usage info for ovs-vswitchd dpdk option. Update
>> INSTALL.DPDK file.
>>
>> Reported-by: Hari Sasank Bhamidipalli
>> Signed-off-by: Pravin B Shelar
>
> I see that this refe
On Thu, Aug 07, 2014 at 01:46:52PM -0700, Pravin Shelar wrote:
> On Thu, Aug 7, 2014 at 12:55 PM, Ben Pfaff wrote:
> > On Thu, Aug 07, 2014 at 12:40:34PM -0700, Pravin B Shelar wrote:
> >> Add usage info for ovs-vswitchd dpdk option. Update
> >> INSTALL.DPDK file.
> >>
> >> Reported-by: Hari Sasan
On Thu, Aug 7, 2014 at 12:32 PM, Pravin B Shelar wrote:
> OVS need to flow key for flow lookup in recic action. OVS
> does key extract in recic action. Most of cases we could
> use OVS_CB packet key directly and can avoid packet flow key
> extract. SET action we can update flow-key along with pack
On Thu, Aug 7, 2014 at 1:27 PM, Jarno Rajahalme wrote:
> Most of the time we do not need the updated key (i.e., when there is no
> recirc action). Do you think it would be worthwhile to only update the key
> when needed, e.g. by adding a “bool update_key;” member to struct
> sw_flow_actions?
>
On August 7, 2014 at 10:09:17 AM, Pravin Shelar (pshe...@nicira.com) wrote:
> On Wed, Aug 6, 2014 at 2:55 PM, Justin Pettit wrote:
> > Commit fea393b1 (datapath: Describe policy for extending flow key,
> > implement needed changes.) changed the key 'OVS_KEY_ATTR_8021Q' to
> > 'OVS_KEY_ATTR_VLAN' an
Acked-by: Jarno Rajahalme
On Aug 7, 2014, at 12:51 PM, Pravin B Shelar wrote:
> There are two separate API to allocate and copy actions list. Anytime
> OVS needs to copy action list, it needs to call both functions.
> Following patch moves action allocation to copy function to avoid
> code dupl
On Thu, Aug 7, 2014 at 2:01 PM, Andy Zhou wrote:
> On Thu, Aug 7, 2014 at 12:32 PM, Pravin B Shelar wrote:
>> OVS need to flow key for flow lookup in recic action. OVS
>> does key extract in recic action. Most of cases we could
>> use OVS_CB packet key directly and can avoid packet flow key
>> ex
Acked-by: Jarno Rajahalme
On Aug 4, 2014, at 9:21 AM, Ben Pfaff wrote:
> Signed-off-by: Ben Pfaff
> ---
> lib/ofp-util.h | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/lib/ofp-util.h b/lib/ofp-util.h
> index 23396bb..39e50ed 100644
> --- a/lib/ofp-util.h
> +++ b/lib/ofp-util.h
> @@
On Thu, Aug 07, 2014 at 01:46:52PM -0700, Pravin Shelar wrote:
> On Thu, Aug 7, 2014 at 12:55 PM, Ben Pfaff wrote:
> > On Thu, Aug 07, 2014 at 12:40:34PM -0700, Pravin B Shelar wrote:
> >> Add usage info for ovs-vswitchd dpdk option. Update
> >> INSTALL.DPDK file.
> >>
> >> Reported-by: Hari Sasan
OVS need to flow key for flow lookup in recic action. OVS
does key extract in recic action. Most of cases we could
use OVS_CB packet key directly and can avoid packet flow key
extract. SET action we can update flow-key along with packet
to keep it consistent. But there are some action like MPLS
pop
On Thu, Aug 7, 2014 at 2:58 PM, Jarno Rajahalme wrote:
> Acked-by: Jarno Rajahalme
>
I pushed it to master.
Thanks.
> On Aug 7, 2014, at 12:51 PM, Pravin B Shelar wrote:
>
>> There are two separate API to allocate and copy actions list. Anytime
>> OVS needs to copy action list, it needs to call
Acked-by: Jarno Rajahalme
Three minor comments below,
Jarno
On Aug 4, 2014, at 9:21 AM, Ben Pfaff wrote:
> Until now, sets of actions have been abstracted separately outside
> ofp-actions, as enum ofputil_action_bitmap. Drawing sets of actions into
> ofp-actions, as done in this commit, ma
Acked-by: Jarno Rajahalme
Two small nits below,
Jarno
On Aug 4, 2014, at 9:21 AM, Ben Pfaff wrote:
> This will allow, later, to centralize all of the knowledge of instruction
> encoding inside ofp-actions.
>
> OFPIT11_ALL and OFPIT13_ALL are no longer used, so this commit removes
> them.
Acked-by: Jarno Rajahalme
On Aug 4, 2014, at 9:21 AM, Ben Pfaff wrote:
> OFPTC11_TABLE_MISS_MASK isn't a valid value at all, let alone always the
> value in use. We should report the value actually in use, as this commit
> does.
>
> There is a remaining problem: the default table configuratio
v1->v2:
Rebased.
Added 7 patches that completely refactor OpenFlow action handling
and implement the OpenFlow 1.5 (draft) Copy-Field action.
Ben Pfaff (16):
ofp-util: Remove prototypes for unimplemented functions.
ofp-actions: Add action bitmap abstraction.
ofp-actions: Add instr
OFPTC11_TABLE_MISS_MASK isn't a valid value at all, let alone always the
value in use. We should report the value actually in use, as this commit
does.
There is a remaining problem: the default table configuration is
OFPROTO_TABLE_MISS_DEFAULT, which doesn't correspond to any particular
OFPTC11_*
Until now, sets of actions have been abstracted separately outside
ofp-actions, as enum ofputil_action_bitmap. Drawing sets of actions into
ofp-actions, as done in this commit, makes for a better overall
abstraction of actions, with better consistency.
A big part of this commit is shifting from u
Table features replies can be packed back-to-back within a single
multipart reply. The code here didn't properly parse properties when this
occurred. This fixes the problem.
Signed-off-by: Ben Pfaff
---
lib/ofp-util.c |8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git
The call to parse_oxms() inside ofputil_decode_table_features() sets only
one bit in either 'match' or 'mask' for a given field that is matchable:
in 'mask' if the field is arbitrarily maskable or in 'match' otherwise.
The code at the end of ofputil_decode_table_features() mishandled this,
assuming
Parsing of actions was wrong because OF1.3 says that non-experimenter
actions are 4 bytes and don't include padding. This fixes the problem.
Parsing of instructions seems wrong too because OF1.3 says that
non-experimenter instructions are 4 bytes (though it is not explicit about
padding as it is
Signed-off-by: Ben Pfaff
---
lib/ofp-util.h |3 ---
1 file changed, 3 deletions(-)
diff --git a/lib/ofp-util.h b/lib/ofp-util.h
index 23396bb..39e50ed 100644
--- a/lib/ofp-util.h
+++ b/lib/ofp-util.h
@@ -687,9 +687,6 @@ void ofputil_append_table_features_reply(
c
This will allow, later, to centralize all of the knowledge of instruction
encoding inside ofp-actions.
OFPIT11_ALL and OFPIT13_ALL are no longer used, so this commit removes
them. Their definitions were wrong (they did not shift each bit into
position correctly), so this commit is also a small bu
The ofproto implementation has had an abstraction layer on top of
OFPTC11_TABLE_MISS for a while. This commit pushes that abstraction layer
farther down, into ofp-util. This will be more useful in an upcoming
commit.
During the conversion I realized that the previous implementation was
not entir
"apply_actions" is assumed, any other instruction has to be specified
explicitly.
Signed-off-by: Ben Pfaff
---
utilities/ovs-ofctl.8.in |3 ---
1 file changed, 3 deletions(-)
diff --git a/utilities/ovs-ofctl.8.in b/utilities/ovs-ofctl.8.in
index 5251c53..aafda23 100644
--- a/utilities/ovs-o
An upcoming commit will use them from ofp-actions.
Signed-off-by: Ben Pfaff
---
lib/ofp-parse.c | 14 +++---
lib/ofp-parse.h | 13 -
2 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/lib/ofp-parse.c b/lib/ofp-parse.c
index 2925157..fa453de 100644
--- a/lib/o
Signed-off-by: Ben Pfaff
---
utilities/ovs-ofctl.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/utilities/ovs-ofctl.c b/utilities/ovs-ofctl.c
index 7b4a006..4dc547d 100644
--- a/utilities/ovs-ofctl.c
+++ b/utilities/ovs-ofctl.c
@@ -2965,7 +2965,7 @@ ofctl_parse_ofp10_act
Signed-off-by: Ben Pfaff
---
NEWS |1 +
OPENFLOW-1.1+ |3 --
lib/ofp-util.c| 132 +
lib/ofp-util.h|7 ++-
ofproto/ofproto.c | 36 ++-
tests/ofproto.at | 105 ++
This allows callers to be more uniform, because they don't have to pick
out whether they should parse actions or instructions based on the OpenFlow
version in use. It also allows the Write-Metadata instruction emulation
in OpenFlow 1.0 to be treated just as in OpenFlow 1.1 in the sense that
it is
ONF-JIRA: EXT-320
Signed-off-by: Ben Pfaff
---
NEWS |1 +
lib/ofp-actions.c| 80 ++
tests/ofp-actions.at | 24 +++
3 files changed, 93 insertions(+), 12 deletions(-)
diff --git a/NEWS b/NEWS
index 94232b7..15
Until now, there were four of these commands: parse-ofp10-actions,
parse-ofp10-instructions, parse-ofp11-actions, parse-ofp11-instructions.
This is painful to add support for new OpenFlow versions and has a ton of
cut-and-paste code. This commit generalizes the code to improve on both
of those poi
Thanks for the reviews!
I've sent out a v2 of this series that adds 7 more patches. None of
the ones previously posted have changed, though (other than rebasing),
so you can continue to review from this version if you like.
On Thu, Aug 07, 2014 at 04:13:49PM -0700, Jarno Rajahalme wrote:
> Acked
Thanks, applied to master.
On Thu, Aug 07, 2014 at 03:06:27PM -0700, Jarno Rajahalme wrote:
> Acked-by: Jarno Rajahalme
>
> On Aug 4, 2014, at 9:21 AM, Ben Pfaff wrote:
>
> > Signed-off-by: Ben Pfaff
> > ---
> > lib/ofp-util.h | 3 ---
> > 1 file changed, 3 deletions(-)
> >
> > diff --git a/l
On Thu, Aug 07, 2014 at 04:13:47PM -0700, Ben Pfaff wrote:
> Signed-off-by: Ben Pfaff
Jarno reviewed this in the v1 series, so I applied it to master.
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
On Thu, Aug 07, 2014 at 02:31:24PM -0300, Flavio Leitner wrote:
> On Thu, Jul 24, 2014 at 12:53:30PM -0700, Ben Pfaff wrote:
> > The umask is a process-wide value, so bind_unix_socket() races with file
> > creation in other Open vSwitch threads. This fixes the race.
> >
> > The workaround for non
I’ll let Andy review the recirculation part in the bottom. For set actions:
Acked-by: Jarno Rajahalme
On Aug 7, 2014, at 3:46 PM, Pravin B Shelar wrote:
> OVS need to flow key for flow lookup in recic action. OVS
> does key extract in recic action. Most of cases we could
> use OVS_CB packet ke
On Wed, Aug 06, 2014 at 04:30:34PM -0700, Ankur Sharma wrote:
> odp-netlink.h: Autogenerate a version of odp-netlink for windows kernel.
>
> Autogenerated odp-netlink.h will not compile with windows kernel, as
> it refers to some userspace files like openvswitch/types.h and
> packets.h which hyper
On Thu, Aug 07, 2014 at 01:17:03AM +, Alin Serdean wrote:
> I was wondering why not generate the #ifdef over the file that
> already generates a copy of openvswitch.h (odp-netlink.h) needed for
> the extension?
I'm inclined to regard the userspace and the (Windows or Linux) kernel
header as pr
Hi Ben,
Thanks a lot.
I'll submit a V2 patch with the recommended changes.
Regards,
Ankur
From: Ben Pfaff
Sent: Thursday, August 7, 2014 4:40 PM
To: Ankur Sharma
Cc: dev@openvswitch.org
Subject: Re: [ovs-dev] [PATCH] odp-netlink.h: Autogenerate a version
On Wed, Aug 06, 2014 at 07:40:23PM -0700, Ethan Jackson wrote:
> This problem is uncovered by a future patch.
>
> Signed-off-by: Ethan Jackson
Acked-by: Ben Pfaff
___
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev
On Thu, Aug 07, 2014 at 07:20:41PM -0300, Flavio Leitner wrote:
> On Thu, Aug 07, 2014 at 01:46:52PM -0700, Pravin Shelar wrote:
> > On Thu, Aug 7, 2014 at 12:55 PM, Ben Pfaff wrote:
> > > On Thu, Aug 07, 2014 at 12:40:34PM -0700, Pravin B Shelar wrote:
> > >> Add usage info for ovs-vswitchd dpdk
On Thu, Aug 07, 2014 at 04:47:02PM -0700, Ben Pfaff wrote:
> On Thu, Aug 07, 2014 at 07:20:41PM -0300, Flavio Leitner wrote:
> > On Thu, Aug 07, 2014 at 01:46:52PM -0700, Pravin Shelar wrote:
> > > On Thu, Aug 7, 2014 at 12:55 PM, Ben Pfaff wrote:
> > > > On Thu, Aug 07, 2014 at 12:40:34PM -0700,
This commit introduces the BUILD_MESSAGE() macro. It uses _Pragma("message"),
with compilers that support that, to output a warning-like compile-time message
without blocking the compilation.
Used by next commit.
Signed-off-by: Daniele Di Proietto
---
configure.ac | 1 +
lib/compiler.h
Signed-off-by: Daniele Di Proietto
---
lib/flow.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/flow.c b/lib/flow.c
index 2e5ca0a..78b132e 100644
--- a/lib/flow.c
+++ b/lib/flow.c
@@ -123,6 +123,9 @@ struct mf_ctx {
#if (FLOW_WC_SEQ != 27)
#define MINIFLOW_ASSERT(X) ovs_assert(X)
Signed-off-by: Daniele Di Proietto
---
lib/flow.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/flow.c b/lib/flow.c
index 5e04015..2e5ca0a 100644
--- a/lib/flow.c
+++ b/lib/flow.c
@@ -118,10 +118,10 @@ struct mf_ctx {
/* miniflow_push_* macros allow filling in a min
If FLOW_WC_SEQ is not updated in lib/flow.c miniflow_extract() will run with
assertions enabled. This is done to help testing changes to struct flow during
development, but can hurt performance a lot, since miniflow_extract() is at the
heart of the userspace fast path.
This patch series, beside up
On Thu, Aug 07, 2014 at 04:19:17PM +0100, Zoltan Kiss wrote:
> On 05/08/14 22:16, Flavio Leitner wrote:
> >On Mon, Aug 04, 2014 at 12:08:48PM -0700, Andy Zhou wrote:
> >>Zoltan,
> >>
> >>Sorry it took a while to get back to you. I am just coming up to
> >>speed on OVS LACP implementation, so my un
On Thu, Aug 7, 2014 at 12:51 PM, Pravin B Shelar wrote:
> There are two separate API to allocate and copy actions list. Anytime
> OVS needs to copy action list, it needs to call both functions.
> Following patch moves action allocation to copy function to avoid
> code duplication.
>
> Signed-off-b
commit (datapath: Refactor action alloc and copy api) effectively
reverted 1d2a1b5f5252e4c6ce8bbf8d91ca27aba52496e6 (datapath: Factor out
allocation and verification of actions.). This results in following
warning:
CC [M] /home/jesse/openvswitch/datapath/linux/datapath.o
/home/jesse/openvswitch/d
On Thu, Aug 7, 2014 at 7:21 PM, Jesse Gross wrote:
> On Thu, Aug 7, 2014 at 12:51 PM, Pravin B Shelar wrote:
>> There are two separate API to allocate and copy actions list. Anytime
>> OVS needs to copy action list, it needs to call both functions.
>> Following patch moves action allocation to co
On Thu, Aug 7, 2014 at 8:34 PM, Pravin B Shelar wrote:
> commit (datapath: Refactor action alloc and copy api) effectively
> reverted 1d2a1b5f5252e4c6ce8bbf8d91ca27aba52496e6 (datapath: Factor out
> allocation and verification of actions.). This results in following
> warning:
>
> CC [M] /home/je
OVS does mask validation even if it does not need to convert
netlink mask attributes to mask structure. ovs_nla_get_match()
caller can pass NULL mask structure pointer if the caller does
not need mask. Therefore NULL check is required in SW_FLOW_KEY*
macros. Following patch does not convert mask
On Thu, Aug 7, 2014 at 9:03 PM, Jesse Gross wrote:
> On Thu, Aug 7, 2014 at 8:34 PM, Pravin B Shelar wrote:
>> commit (datapath: Refactor action alloc and copy api) effectively
>> reverted 1d2a1b5f5252e4c6ce8bbf8d91ca27aba52496e6 (datapath: Factor out
>> allocation and verification of actions.).
72 matches
Mail list logo