Merge "build ovs with dpdk from mos"

This commit is contained in:
Jenkins 2017-01-23 00:17:00 +00:00 committed by Gerrit Code Review
commit 70176c98b5
5 changed files with 52 additions and 35 deletions

View File

@ -11,7 +11,7 @@ dpdk=$3
dpdk_socket_mem=${4:-''}
pmd_cpu_mask=${5:-'2'}
apt-get install -y dkms
apt-get install -y --allow-unauthenticated dkms
if [ $nsh = 'true' ]
then
@ -22,9 +22,7 @@ then
dpkg -i python-openvswitch_2.6.1-1.nsh_all.deb
if [ $dpdk = 'true' ]
then
dpkg -i libxenstore3.0*.deb
dpkg -i libdpdk0_16.07-1_amd64.deb
dpkg -i dpdk_16.07-1_amd64.deb
apt-get install -y --allow-unauthenticated dpdk dpdk-dev dpdk-dkms
dpkg -i openvswitch-switch-dpdk_2.6.1-1.nsh_amd64.deb
fi
else
@ -33,21 +31,23 @@ else
dpkg -i openvswitch-common_2.6.90-1_amd64.deb
dpkg -i openvswitch-switch_2.6.90-1_amd64.deb
dpkg -i python-openvswitch_2.6.90-1_all.deb
if [[ $dpdk = 'true' && -n $dpdk_socket_mem ]]
if [ $dpdk = 'true' ]
then
dpkg -i libxenstore3.0*.deb
dpkg -i libdpdk0_16.07-1_amd64.deb
dpkg -i dpdk_16.07-1_amd64.deb
apt-get install -y --allow-unauthenticated dpdk dpdk-dev dpdk-dkms
dpkg -i openvswitch-switch-dpdk_2.6.90-1_amd64.deb
#Set to 0, dpdk init script mount hugepages but don't change current allocation
sed -i "s/[# ]*\(NR_2M_PAGES=\).*/\10/" /etc/dpdk/dpdk.conf
service dpdk start
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="$dpdk_socket_mem"
ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask="$pmd_cpu_mask"
service openvswitch-switch restart
fi
fi
if [[ $dpdk = 'true' && -n $dpdk_socket_mem ]]
then
#Set to 0, dpdk init script mount hugepages but don't change current allocation
sed -i "s/[# ]*\(NR_2M_PAGES=\).*/\10/" /etc/dpdk/dpdk.conf
service dpdk start
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true
ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-socket-mem="$dpdk_socket_mem"
ovs-vsctl --no-wait set Open_vSwitch . other_config:pmd-cpu-mask="$pmd_cpu_mask"
service openvswitch-switch restart
fi

View File

@ -10,15 +10,23 @@ BUILD_HOME=${BUILD_HOME:-/tmp/ovs-dpdk}
export DEB_BUILD_OPTIONS='parallel=8 nocheck'
sudo apt-get -y install devscripts dpkg-dev git wget
sudo apt-get -y install devscripts dpkg-dev git wget dkms
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb
cd ${BUILD_HOME}
wget -c http://fast.dpdk.org/rel/dpdk-16.07.tar.xz
xz -d dpdk-16.07.tar.xz; tar xvf dpdk-16.07.tar
cd dpdk-16.07
cp -r ${BUILD_SRC}/dpdk_16.07/debian .
cp -r ${BUILD_SRC}/dpdk_16.07.fuel/debian .
cat << EOF > debian/changelog
dpdk (16.07-0ubuntu5~u1604+fuel10) xenial; urgency=low
* Rebuild debian package
* update librte-eal2.symbols
-- Ruijing Guo <ruijing.guo@intel.com> $(date --rfc-2822)
EOF
# copy from debian/control
sudo apt-get install -y debhelper \
@ -38,8 +46,9 @@ sudo apt-get install -y debhelper \
debian/rules build; fakeroot debian/rules binary
cd ${BUILD_HOME}
sudo apt-get install -y hwdata
sudo dpkg -i *.deb
apt-get download libxenstore3.0
mv *.deb ${BUILD_DEST}
# copy from debian/control
sudo apt-get install -y autoconf \
@ -80,5 +89,6 @@ debian/rules build; fakeroot debian/rules binary
cd ${BUILD_HOME}/ovs
debian/rules build; fakeroot debian/rules binary
cp -r ${BUILD_HOME}/*.deb ${BUILD_DEST}
rm -rf ${BUILD_HOME}
cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb
cd ${BUILD_HOME}/deb
tar czvf ${BUILD_DEST}/ovs-dpdk.tar.gz .;

View File

@ -10,15 +10,23 @@ BUILD_HOME=${BUILD_HOME:-/tmp/ovs-dpdk}
export DEB_BUILD_OPTIONS='parallel=8 nocheck'
sudo apt-get -y install devscripts dpkg-dev git wget
sudo apt-get -y install devscripts dpkg-dev git wget dkms
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}
rm -rf ${BUILD_HOME}; mkdir -p ${BUILD_HOME}/deb
cd ${BUILD_HOME}
wget -c http://fast.dpdk.org/rel/dpdk-16.07.tar.xz
xz -d dpdk-16.07.tar.xz; tar xvf dpdk-16.07.tar
cd dpdk-16.07
cp -r ${BUILD_SRC}/dpdk_16.07/debian .
cp -r ${BUILD_SRC}/dpdk_16.07.fuel/debian .
cat << EOF > debian/changelog
dpdk (16.07-0ubuntu5~u1604+fuel10) xenial; urgency=low
* Rebuild debian package
* update librte-eal2.symbols
-- Ruijing Guo <ruijing.guo@intel.com> $(date --rfc-2822)
EOF
# copy from debian/control
sudo apt-get install -y debhelper \
@ -38,8 +46,9 @@ sudo apt-get install -y debhelper \
debian/rules build; fakeroot debian/rules binary
cd ${BUILD_HOME}
sudo apt-get install -y hwdata
sudo dpkg -i *.deb
apt-get download libxenstore3.0
mv *.deb ${BUILD_DEST}
# copy from debian/control
sudo apt-get install -y autoconf \
@ -92,5 +101,6 @@ openvswitch (${OVS_VER}-1.nsh) unstable; urgency=low
EOF
debian/rules build; fakeroot debian/rules binary
cp -r ${BUILD_HOME}/*.deb ${BUILD_DEST}
rm -rf ${BUILD_HOME}
cp -r ${BUILD_HOME}/*.deb ${BUILD_HOME}/deb
cd ${BUILD_HOME}/deb
tar czvf ${BUILD_DEST}/ovs-nsh-dpdk.tar.gz .;

View File

@ -62,7 +62,6 @@ librte_eal.so.2 librte-eal2 #MINVER#
rte_eal_primary_proc_alive@DPDK_16.04 16.04
rte_eal_process_type@DPDK_2.0 16.04
rte_eal_remote_launch@DPDK_2.0 16.04
rte_eal_set_socket_permissions@DPDK_2.2 16.04
rte_eal_tailq_lookup@DPDK_2.0 16.04
rte_eal_tailq_register@DPDK_2.0 16.04
rte_eal_vdev_init@DPDK_2.0 16.04

View File

@ -16,14 +16,12 @@ function build_pkg {
DEB_DIR=${DIR}/deb-ovs-dpdk
rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR};
sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-dpdk.sh
cd ${DEB_DIR}; tar czvf ../repositories/ubuntu/ovs-dpdk.tar.gz .;
cd ..; rm -rf ${DEB_DIR}
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
DEB_DIR=${DIR}/deb-ovs-nsh-dpdk
rm -rf ${DEB_DIR}; mkdir -p ${DEB_DIR}; chmod 777 ${DEB_DIR};
sudo docker run -v ${DEB_DIR}:/deb -t ovs_build /ovs_build/build-ovs-nsh-dpdk.sh
cd ${DEB_DIR}; tar czvf ../repositories/ubuntu/ovs-nsh-dpdk.tar.gz .;
cd ..; rm -rf ${DEB_DIR}
cp -r ${DEB_DIR}/* ${DIR}/repositories/ubuntu/
rm -rf ${DEB_DIR}
;;
*) echo "Not supported system"; exit 1;;