Hello,

                Has anyone successfully built a OpenContrail 3.0 vrouter with 
dpdk support and used it successfully?   Although, I can get something to 
compile, it does not seem to have all the necessary startup scripts and 
configuration files connected to it.  I must be missing something?  Any 
suggestions on how to compile this correctly?  Or maybe there is a repository 
that already has the packages for 3.0 somewhere?  The standard PPA and the 
tcpcloud PPA don't seem to have the dpdk vrouter package in them ...

Thank you!

Jay


From: Rhine, Jay (Nokia - US)
Sent: Tuesday, May 31, 2016 8:59 AM
To: '[email protected]'; [email protected]
Subject: RE: Problems compiling OpenContrail 3.0 with DPDK Support

Hello,

                I'm resending this, since it was probably missed by many people 
since it was sent during a US holiday.  Any help or suggestions is appreciated.

Thank you!

--------------------
Folks,

                Happy Memorial Day weekend!

                I'm hoping someone here can help me with a problem that I'm 
running into.  I've had some success with installing OpenContrail 2.x from the 
available Ubuntu packages. However, now I am trying to trying to compile 
OpenContrail 3.0 from source and I'm running into problems.  Any suggestions 
would be appreciated.  I am roughly following the directions from 
http://juniper.github.io/contrail-vnc/README.html.

I have been able to build most of the the packages following the documentation 
at that link.  However, I ran into a problem where it was not trying to build 
the contrail-vrouter-dpdk package.  The best I could tell, this was initially 
failing because the dpdk directory was missing from the "third_party" 
directory.  There is no mention on the docs to install this (I would have 
thought fetch_packages would have downloaded it), but I added it manually, and 
then it appears that the vrouter with dpdk attempts to build.  It gets pretty 
far, but then it fails with the following error:

gcc -o build/debug/vrouter/dpdk/vr_dpdk_flow_mem.o -c -g -O0 -DDEBUG -Werror 
-Wall -msse4.2 -DCOMPILE_DEBUG_LOGS -Ivrouter/include 
-Ibuild/debug/vrouter/sandesh/gen-c -Ivrouter/sandesh/gen-c -Itools 
-Itools/sandesh/library/c 
-Ibuild/debug/vrouter/dpdk/x86_64-native-linuxapp-gcc/include 
-Ivrouter/dpdk/x86_64-native-linuxapp-gcc/include 
vrouter/dpdk/vr_dpdk_flow_mem.c
gcc -o build/debug/vrouter/dpdk/vr_dpdk_fragment_assembler.o -c -g -O0 -DDEBUG 
-Werror -Wall -msse4.2 -DCOMPILE_DEBUG_LOGS -Ivrouter/include 
-Ibuild/debug/vrouter/sandesh/gen-c -Ivrouter/sandesh/gen-c -Itools 
-Itools/sandesh/library/c 
-Ibuild/debug/vrouter/dpdk/x86_64-native-linuxapp-gcc/include 
-Ivrouter/dpdk/x86_64-native-linuxapp-gcc/include 
vrouter/dpdk/vr_dpdk_fragment_assembler.c
gcc -o build/debug/vrouter/dpdk/vr_dpdk_host.o -c -g -O0 -DDEBUG -Werror -Wall 
-msse4.2 -DCOMPILE_DEBUG_LOGS -Ivrouter/include 
-Ibuild/debug/vrouter/sandesh/gen-c -Ivrouter/sandesh/gen-c -Itools 
-Itools/sandesh/library/c 
-Ibuild/debug/vrouter/dpdk/x86_64-native-linuxapp-gcc/include 
-Ivrouter/dpdk/x86_64-native-linuxapp-gcc/include vrouter/dpdk/vr_dpdk_host.c
vrouter/dpdk/vr_dpdk_host.c: In function 'dpdk_soft_reset':
vrouter/dpdk/vr_dpdk_host.c:1182:5: error: implicit declaration of function 
'rcu_barrier' [-Werror=implicit-function-declaration]
     rcu_barrier();
     ^
cc1: all warnings being treated as errors
scons: *** [build/debug/vrouter/dpdk/vr_dpdk_host.o] Error 1
scons: building terminated because of errors.
kwc@HP-RBC-07:~/contrail_30.current$<mailto:kwc@HP-RBC-07:~/contrail_30.current$>

I'm not sure why its trying to call rcu_barrier exactly, but as far as I can 
tell rcu_barrier is a function that is part of the linux kernel.  The 
rcu_barrier function is not defined anywhere in the contrail source code, and 
there does not appear to be anything including the linux kernel headers.    I'm 
running this on Linux Ubuntu Trusty 14.04.01 (latest patches installed) with 
kernel 3.16.0-70-generic.


This is roughly the procedure that I am following:

apt-add-repository ppa:opencontrail/ppa
apt-get update
apt-get install <lots of packages>
Manually install libuv, cassandra-cpp-driver, and cassandra-cpp-driver-dev

repo init -u 
[email protected]:Juniper/contrail-vnc<mailto:[email protected]:Juniper/contrail-vnc>
repo sync
Python third_party/fetch_packages.py
wget http://downloadmirror.intel.com/22777/eng/dpdk-2.0.0.tar.gz
tar xfvz dpdk-2.0.0.tar.gz
cp -pr  dpdk-2.0.0 third_party/dpdk

scons vrouter

Any suggestions or comments would be very much appreciated.

Thank you,

Jay Rhine
Nokia
_______________________________________________
Dev mailing list
[email protected]
http://lists.opencontrail.org/mailman/listinfo/dev_lists.opencontrail.org

Reply via email to