On 9/30/2021 6:05 PM, Eric Sender wrote:
Hi Greg,
Well, I'm not sure if the errors are bad or neutral just yet. I plan to
create RPMs with DPDK compiled in and then test it in our system. When I
see these testing errors get flagged, there are instructions to email the
logs to you. That's all. By the way, I was having problems using the
v2.16.x version of OVS with our system so I reverted back to 2.14.0.
All that being said, I re-ran these tests with a version of 2.14 with dpdk
compiled in with these flags: ./configure --with-linux=/lib/modules/`uname
-r`/build --enable-silent-rules --with-dpdk=shared CFLAGS="-Ofast -msse4.2
-mpopcnt". See attached.
Eric,
The system traffic tests depend on certain utilities for them to run
correctly and netcat aka "nc" is not accepting an option and fails.
From the log:
+nc: invalid option -- 'q'
+usage: nc [-46cDdFhklNnrStUuvz] [-C certfile] [-e name] [-H hash] [-I
length]
+ [-i interval] [-K keyfile] [-M ttl] [-m minttl] [-O length]
+ [-o staplefile] [-P proxy_username] [-p source_port] [-R CAfile]
+ [-s sourceaddr] [-T keyword] [-V rtable] [-W recvlimit] [-w timeout]
+ [-X proxy_protocol] [-x proxy_address[:port]] [-Z peercertfile]
+ [destination] [port]
/usr/src/ovs-2.14.0/tests/system-traffic.at:2366: exit code was 1,
expected 0
You may want to check your version of netcat and make sure it accepts
the '-q' option.
Hope this helps.
- Greg
On Thu, Sep 30, 2021 at 12:57 PM Gregory Rose <[email protected]> wrote:
On 9/30/2021 10:30 AM, Eric Sender wrote:
Greg, thank you for this. I ran the cherry-pick command and the code is
in
place. Now, I am still getting the following errors (attached)
Subject: [openvswitch 2.14.0] system-kmod-testsuite: 29 78 130 faile /
system-userspace-testsuite: 130 failed
Hi Eric,
Let's not drop the list.
A few make check errors will not generally be an issue unless those
make check errors are directly related to what you're trying to
do. The system-userspace-testsuite is not always up to date for
older branches.
If you're building packages such as RPMs you can build them without
the make check this way:
make rpm-fedora RPMBUILD_OPT="--without check"
- Greg
On Thu, Sep 30, 2021 at 9:25 AM Gregory Rose <[email protected]>
wrote:
On 9/29/2021 6:36 PM, Eric Sender wrote:
Hello,
I think my issue is two fold:
1. In order to get OVS to compile, I needed to make a few changes
to
the
code. Namely, to change skb->l4_rxhash to skb->l4_hash?
- I feel I shouldn't have needed to do that in order to compile
2. Not sure if its related, but I found 4 errors which I have
attached.
- Any thoughts on those errors?
Here is a diff of the following changes I needed to make (basically a
ctrl-F replace of l4_rxhash to l4_hash.
*diff --git a/acinclude.m4 b/acinclude.m4*
index 84f344da0..b14fab8f3 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -874,7 +874,7 @@ AC_DEFUN([OVS_CHECK_LINUX_COMPAT], [
OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [skb_clear_hash])
OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h],
[int.skb_zerocopy(],
[OVS_DEFINE([HAVE_SKB_ZEROCOPY])])
- OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [u8.*l4_rxhash],
+ OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [u8.*l4_hash],
[OVS_DEFINE([HAVE_L4_RXHASH])])
OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h],
[skb_ensure_writable])
OVS_GREP_IFELSE([$KSRC/include/linux/skbuff.h], [skb_vlan_pop])
Hi Eric,
you're missing this commit:
f365b41f9dff ('compat: Fix build issue on RHEL 7.7.')
It's not in branch 2.14. You can cherry pick it from master
or you could just update to branch 2.15.
Regards,
- Greg
*diff --git a/datapath/datapath.c b/datapath/datapath.c*
index 05c1e4274..0796c199c 100644
--- a/datapath/datapath.c
+++ b/datapath/datapath.c
@@ -533,7 +533,7 @@ static int queue_userspace_packet(struct datapath
*dp,
struct sk_buff *skb,
#endif
#ifdef HAVE_L4_RXHASH
- if (skb->l4_rxhash)
+ if (skb->l4_hash)
#else
if (skb->l4_hash)
#endif
*diff --git a/datapath/linux/compat/include/linux/skbuff.h*
b/datapath/linux/compat/include/linux/skbuff.h
index 6d248b3ed..328a631d8 100644
--- a/datapath/linux/compat/include/linux/skbuff.h
+++ b/datapath/linux/compat/include/linux/skbuff.h
@@ -279,7 +279,7 @@ static inline void skb_clear_hash(struct sk_buff
*skb)
skb->rxhash = 0;
#endif
#if defined(HAVE_L4_RXHASH) && !defined(HAVE_RHEL_OVS_HOOK)
- skb->l4_rxhash = 0;
+ skb->l4_hash = 0;
#endif
}
#endif
@@ -371,7 +371,7 @@ static inline void skb_pop_mac_header(struct
sk_buff
*skb)
#ifndef HAVE_SKB_CLEAR_HASH_IF_NOT_L4
static inline void skb_clear_hash_if_not_l4(struct sk_buff *skb)
{
- if (!skb->l4_rxhash)
+ if (!skb->l4_hash)
skb_clear_hash(skb);
}
#endif
@@ -466,7 +466,7 @@ __skb_set_hash(struct sk_buff *skb, __u32 hash,
bool
is_sw, bool is_l4)
skb->hash = hash;
#endif
#if defined(HAVE_L4_RXHASH)
- skb->l4_rxhash = is_l4;
+ skb->l4_hash = is_l4;
#else
skb->l4_hash = is_l4;
#endif
Essentially, I needed to change all references to skb->l4_rxhash to
skb->l4_hash because of the following errors during make:
$ make
...
/root/build/datapath/linux/datapath.c: In function
‘queue_userspace_packet’:
/root/build/datapath/linux/datapath.c:536:9: error: ‘struct sk_buff’
has
no
member named ‘l4_rxhash’
if (skb->l4_rxhash)
^
...
make[5]: *** [/root/build/datapath/linux/datapath.o] Error 1
make[4]: *** [_module_/root/build/datapath/linux] Error 2
make[4]: Leaving directory
`/usr/src/kernels/3.10.0-1160.36.2.el7.x86_64'
make[3]: *** [default] Error 2
make[3]: Leaving directory `/root/build/datapath/linux'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/build/datapath'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/build'
make: *** [all] Error 2
Thank you,
Eric
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss