summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPrzemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>2017-03-16 09:52:46 +0000
committerPrzemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>2017-03-23 14:53:59 +0000
commit8414803c9c474214df76e669a5dc0a4dca3f980d (patch)
treebb1b1e2d7f296af51f152127c12e5fd672ad51b5
parent9e7e7ae9e4115b09e35622ed8dbe43c6c2dd3fea (diff)
dpdkevents: add example config and update makefile
Change-Id: I85edcbbf52dc3bd4d0e53c5076267b9f3f6c2284 Signed-off-by: Przemyslaw Szczerbik <przemyslawx.szczerbik@intel.com>
-rw-r--r--docs/release/userguide/feature.userguide.rst10
-rw-r--r--src/collectd/collectd_sample_configs/dpdkevents.conf35
-rw-r--r--src/dpdk/Makefile3
3 files changed, 43 insertions, 5 deletions
diff --git a/docs/release/userguide/feature.userguide.rst b/docs/release/userguide/feature.userguide.rst
index 4e9b0d01..c71af190 100644
--- a/docs/release/userguide/feature.userguide.rst
+++ b/docs/release/userguide/feature.userguide.rst
@@ -46,7 +46,7 @@ Barometer has enabled the following collectd plugins:
* *mcelog plugin*: A read plugin that uses mcelog client protocol to check for
memory Machine Check Exceptions and sends the stats for reported exceptions
-* *RDT plugin*: A read plugin that provides the last level cache utilitzation and
+* *RDT plugin*: A read plugin that provides the last level cache utilization and
memory bandwidth utilization
All the plugins above are available on the collectd master, except for the
@@ -86,7 +86,7 @@ collectd capabilities and usage
them as shown in the examples below.
The collectd plugins in OPNFV are configured with reasonable defaults, but can
- be overriden.
+ be overridden.
Building all Barometer upstreamed plugins from scratch
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -190,7 +190,7 @@ https://github.com/collectd/collectd/blob/master/src/collectd.conf.pod
you will need to specify the specific paths to the header files and libraries
using LIBDPDK_CPPFLAGS and LIBDPDK_LDFLAGS. You will also need to add the DPDK
library symbols to the shared library path using ldconfig. Note that this
- update to the shared library path is not persistant (i.e. it will not survive a
+ update to the shared library path is not persistent (i.e. it will not survive a
reboot).
DPDK events plugin
@@ -208,7 +208,7 @@ Building and installing collectd:
.. code:: bash
- $ git clone https://github.com/maryamtahhan/collectd.git
+ $ git clone https://github.com/collectd/collectd.git
$ cd collectd
$ ./build.sh
$ ./configure --enable-syslog --enable-logfile --enable-debug
@@ -253,7 +253,7 @@ https://github.com/collectd/collectd/blob/master/src/collectd.conf.pod
you will need to specify the specific paths to the header files and libraries
using LIBDPDK_CPPFLAGS and LIBDPDK_LDFLAGS. You will also need to add the DPDK
library symbols to the shared library path using ldconfig. Note that this
- update to the shared library path is not persistant (i.e. it will not survive a
+ update to the shared library path is not persistent (i.e. it will not survive a
reboot).
.. code:: bash
diff --git a/src/collectd/collectd_sample_configs/dpdkevents.conf b/src/collectd/collectd_sample_configs/dpdkevents.conf
new file mode 100644
index 00000000..fdb6f3db
--- /dev/null
+++ b/src/collectd/collectd_sample_configs/dpdkevents.conf
@@ -0,0 +1,35 @@
+# Copyright 2017 OPNFV
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+<LoadPlugin dpdkevents>
+ Interval 1
+</LoadPlugin>
+
+<Plugin "dpdkevents">
+ <EAL>
+# Coremask "0x1"
+# MemoryChannels "4"
+# FilePrefix "rte"
+ </EAL>
+ <Event "link_status">
+ SendEventsOnUpdate false
+ EnabledPortMask 0xffff
+ SendNotification true
+ </Event>
+ <Event "keep_alive">
+ SendEventsOnUpdate false
+ LCoreMask "0xf"
+ KeepAliveShmName "/dpdk_keepalive_shm_name"
+ SendNotification true
+ </Event>
+</Plugin>
diff --git a/src/dpdk/Makefile b/src/dpdk/Makefile
index b8524322..a23a6290 100644
--- a/src/dpdk/Makefile
+++ b/src/dpdk/Makefile
@@ -44,6 +44,7 @@ INSTALL_TARGET = force_make
force_make: $(TAG_DONE_FLAG)
$(AT)cd $(WORK_DIR) && git pull $(DPDK_URL) $(DPDK_TAG)
$(AT)sed -i -e 's/CONFIG_RTE_BUILD_SHARED_LIB=./CONFIG_RTE_BUILD_SHARED_LIB=y/g' $(CONFIG_FILE_LINUXAPP)
+ $(AT)sed -i -e 's/CONFIG_RTE_EAL_PMD_PATH=.*/CONFIG_RTE_EAL_PMD_PATH=\"\/usr\/lib\/dpdk-pmd\/\"/g' $(CONFIG_FILE_LINUXAPP)
$(AT)sed -i -e 's/CONFIG_RTE_LIBRTE_KNI=./CONFIG_RTE_LIBRTE_KNI=n/g' $(CONFIG_FILE_LINUXAPP)
$(AT)cd $(WORK_DIR); make config T=$(DPDK_TARGET) -j; make -j
$(AT)cd `dirname $(CONFIG_FILE_LINUXAPP)` && git checkout `basename $(CONFIG_FILE_LINUXAPP)` && cd -
@@ -51,6 +52,8 @@ force_make: $(TAG_DONE_FLAG)
install: $(INSTALL_TARGET)
$(AT)cd $(WORK_DIR); sudo make -j install prefix=/usr; cd -
+ $(AT)sudo mkdir -p /usr/lib/dpdk-pmd
+ $(AT)find /usr/lib -type f -name 'librte_pmd*' | while read path; do sudo ln -fs $$path /usr/lib/dpdk-pmd/$$(echo $$path | grep -o 'librte_.*so'); done
$(AT)sudo cp -a $(WORK_DIR)/build/kmod $(INSTALL_DIR)/lib/modules/$(KERNEL_VERSION)
@echo "install done"