Commit Graph

395 Commits

Author SHA1 Message Date
159fcf4074 VPP 18.04 release notes
- Notes for the 18.04 release
- Fixes for table layout of previous API summary
- Update list_api_changes.py script

Change-Id: Id99ed4df2e76e2704f949ee940eedf9ede7e8f4b
Signed-off-by: Chris Luke <chrisy@flirble.org>
(cherry picked from commit ac2b7363f4)
2018-04-26 01:38:48 +00:00
435f500215 libmemif: fix implicit declaration of memfd_create
Change-Id: Icdeaad1d5df63bd5e9426958a3b73582bbd226b7
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-04-24 18:40:01 +00:00
d5ae97cfbf Script to list patches that changed api files.
- Add Ole Troan's script from vpp-dev email:
  https://lists.fd.io/pipermail/vpp-dev/2017-October/007037.html

Change-Id: I0cbf5118169dc25f0edd659a5a9f5cde8619f780
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit b0a517b6c8)
2018-04-24 04:05:45 +00:00
5e1f69a4eb libmemif: fix clang compilation errors/warnings
Change-Id: I09444281a932d367162a10b90c3759db71c03350
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-04-12 14:05:05 +00:00
b42b77b31c Restore building of debuginfo RPMs
JIRA: VPP-1227

Remove rpm tmp dir build debuginfo rpms.
Reverses commits to fix a build problem with old versions of rpmbuild
that prevented builds in chrooted environments with short paths
and short project names.

Change-Id: I852696dccc984bf4882fd3ca9ec4c8da080bdb41
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-08 13:34:45 +00:00
6673178d48 Remove subunit from Centos requirements.
JIRA: VPP-1229

Subunit and Subunit-devel in Fedora and Epel but not Centos.
This patch moves the Fedora from the Centos specific requirements.

Change-Id: I093a4571cddf14af5ee2827ba8ee00c7bcbe6fc0
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-08 13:34:07 +00:00
5f56c091ce Remove mbedtls from build requirement for Centos
Although mbedtls is in Fedora and Epel, it is not
in Centos yet. It is not strictly necessary for TLS
which also can use openssl.

Change-Id: Id62d52000f9ecda2fc10d1938f02be1142fa5bdb
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2018-04-06 02:56:03 +00:00
104404348f Fix bugs in emacs plugin templates
use api_helper_macros.h
declare plugin_main_t external in the header file
declare plugin_main_t instance in plugin.c
setup main_t->vlib_main, main_t->vnet_main in the init routine

Change-Id: Ib8c742a60c63adfe9724447e1a2acc8c7723e90c
Signed-off-by: Dave Barach <dave@barachs.net>
2018-04-03 19:56:11 +00:00
3744fc7abc libmemif: zero-copy-slave mode + header space
Slave is now able to dequeue buffers from rx queue and enqueue them to tx queue
(zero-copy operation). Slave can produce buffers with headroom, which will allow adding
 encap without copy.

Change-Id: Ia189f8de1a68be787545ed46cf78d36403e7e9bf
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-30 20:48:36 +00:00
4dc8397629 Fix minor issues.
Change-Id: I1ce5106d99dd4d4b1c033d4873b4511e9a170afc
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-03-30 20:46:03 +00:00
23d4e8a6b5 Build libmemif as part of verify job
Change-Id: I7e808b5bcbb74343a4ed6782f115ed07e9bfe3a6
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-28 13:41:15 +00:00
ab7c2b012d libmemif: add private header size field
Change-Id: I09567c8ee9c92e91918840f80942a005069d9842
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-28 13:35:40 +00:00
ecfa2aaa63 libmemif: version 2
Change-Id: Ia2532695aa9199d2a7b684aebef43df0b8235531
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-26 12:01:49 +00:00
1ac36d7421 VPP-1197: SELinux: 'create tap' (vhost-net backend TAP) fails when
SELinux is enable

Update the SELinux Policy to allow management of the new vhost-net
backend TAP interface.

Change-Id: I2d0633a7fce2ee2a4d6e0008ab13599647c14f42
Signed-off-by: Billy McFall <bmcfall@redhat.com>
2018-03-14 18:43:39 +00:00
1941871e26 libmemif: ubuntu 18.04 build fix
Change-Id: I6624cacd625eea6a9b8214f67d14ec162e2c0195
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2018-03-13 16:13:46 +01:00
8d0f2f0031 License text cleanup
Change-Id: I105375c653b1a1dce8f0f71005b281ff137c6f42
Signed-off-by: Dave Barach <dave@barachs.net>
2018-03-12 15:08:44 +00:00
30ec82161f Add RPM buildtime dependency on mbedtls-devel
Update RPM spec to know about it

Change-Id: I61c7c1ce96071e3b84d792c18ff8880217b14fce
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-03-02 16:48:25 +00:00
8996cb6f77 Change tcp config to reflect some recent changes.
Change-Id: Ic151be9ff7114c1fdec22d5ad056654960cf12b2
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-03-01 15:06:31 -05:00
7c172cb245 Adjust vpp-selinux-policy postinstall
Only run semodule command on hosts where selinux
is enabled.

Change-Id: I7bcfc758e44bb0f41ec657ad395352ddb92766eb
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2018-02-28 21:47:43 +00:00
3f8562eaab Fix SELinux capabilities. Creating a tap interface with 'tap connect' was returning an error when VPP was launched as a service (tested on CentOS 7.3). Adding 'net_admin' to SELinux capabilities for VPP solves the issue.
Change-Id: Icd0529b49adb86e7b371283a6f39af03816951c5
Signed-off-by: Victor Nguyen <victong2@cisco.com>
2018-02-28 14:35:30 +00:00
9fa5cf4669 Add iperf VM/vhost creation
Change-Id: I27a59203f406120558f73bfcc12dca8835ae6361
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-02-16 08:09:27 +00:00
5dca5465f5 libmemif: cleanup queue info while memif connecting
Change-Id: I4265fd0606f87f80f43f7f59ced1c3a73de82776
Signed-off-by: Chun Li <chunl2@cisco.com>
2018-02-07 10:02:20 +08:00
190282cb0a RPMS: Also install C.py, JSON.py for vppapipgen.
When building plugins outside of the VPP tree, the vppapigen
tool requires the use of the C.py / JSON.py code.  To that end,
install it in /usr/share/vpp as referenced.

Change-Id: I457d58e7bde7140c7811fa0a93b4f44d1310784a
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2018-01-31 19:14:17 +00:00
28cf3b7da2 VPP-899: Run VPP under SELinux
Add an SELinux profile such that VPP can run under SELinux on RPM based
platforms. The SELinux Policy is currently only implemented for RPM
packages, specifically, Fedora, CentOS and RHEL. Doxygen User
Documentation has been included (selinux_doc.md). Once some discussion
on file locations has completed (see vpp-devlist), updates to the Debug
CLI documentation will also need to be updated.

Additional changes:
Patch Set 2:
- Rework selinux_doc.md such that each line is only 80 characters
  instead of each sentence on a line. Made additonal minor chnages
  to the text.
- Update vHost Debug CLI documentation to reflex new socket location.
  Cleaned up some text from when I originally wrote it, to better
  reflex proper use.
- Update exec Debug CLI documentation to be more inline with suggested
  helptext, added text regarding recommended script file location.
- For Debian builds, create the /var/log/vpp/ directory. I don't use
  Debian very much, so please pay extra attention to
  build-data/platforms.mk and build-root/deb/debian/.gitignore.
- Per discussion on VPP call, changed the default log location to
  /var/log/vpp/vpp.log.
- Changed the socket location for vHost in AutoConfig to
  /var/run/vpp/.
Patch Set 3:
- Update selinux_doc.md based on comments.

Change-Id: I400520dc33f1ca51012d09ef8fe5a7b7b96c631e
Signed-off-by: Billy McFall <bmcfall@redhat.com>
2018-01-30 13:26:20 +00:00
a7da67fcc6 Add support for 18.01.
Fixed bugs.
Improved some config as the result of Tetration experience.

Change-Id: Ie4b8d2d77ca3ad165675c42fa2d9a4798d871f9d
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2018-01-26 14:55:33 -05:00
6cd396cec3 docs: Clean up TOC
Change-Id: I5415c002a431d84372f56d4a77dc2aabd6ef55f7
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
(cherry picked from commit 1eb970d160)
2018-01-24 01:23:34 +00:00
9d42087149 VPPAPIGEN: vppapigen replacement in Python PLY.
This is a version of the VPP API generator in Python PLY. It supports
the existing language, and has a plugin architecture for generators.
Currently C and JSON are supported.

Changes:
 - vl_api_version to option version = "major.minor.patch"
 - enum support
 - Added error checking and reporting
 - import support (removed the C pre-processor)
 - services (tying request/reply together)

Version:
 option version = "1.0.0";

Enum:
 enum colours {
   RED,
   BLUE = 50,
 };
 define foo {
  vl_api_colours_t colours;
 };

Services:
 service {
  rpc foo returns foo_reply;
  rpc foo_dump returns stream foo_details;
  rpc want_stats returns want_stats_reply
      events ip4_counters, ip6_counters;
 };

Future planned features:
 - unions
 - bool, text
 - array support (including length)
 - proto3 output plugin
 - Refactor C/C++ generator as a plugin
 - Refactor Java generator as a plugin

Change-Id: Ifa289966c790e1b1a8e2938a91e69331e3a58bdf
Signed-off-by: Ole Troan <ot@cisco.com>
2018-01-23 13:03:53 +00:00
bf246dff1b dpdk plugin depends on numactl-libs
dpdk_plugin.so depends on libnuma.so.1

Change-Id: Ia1fd3b5cec043b294cc14cd947908675b451deac
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2018-01-18 11:00:17 +01:00
891f0a1caa apps: refactor uri and update build infra
Change-Id: Ifa9966a27586a1a65038d069cf4a1e6e21a72d45
Signed-off-by: Florin Coras <fcoras@cisco.com>
2017-12-15 19:05:57 +00:00
e266ea3795 Optimize RPM build process
* Remove unused variable OS_VERSION_ID
* Do all RPM building in build-root/rpmbuild
* Add build-root/rpmbuild to .gitignore
* Move redundant code to a target called 'spec'
* Copy spec file to SPECS instead of SOURCES
* Only set %{_topdir} macro when it's undefined, and because of that
  remove sed call to delete definition on spec file
* Pass _version and _release using --define parameter instead of using
  sed to add them to .spec
* Move rpm files to build-root after build finishes
* Add dist tarball to .gitignore

Change-Id: I230d60b62914056b353f7f8701d14754b0bf7f8c
Signed-off-by: Renato Botelho do Couto <renato@netgate.com>
2017-12-04 11:36:28 +00:00
aba730fc0d Cleanup and simplify
This patch addresses two things:
1) It simplifies the Makefile to build RPMs by removing duplication and
use environment variables instead;
2) It aligns openSUSE with others with regards to invoke "pkg-rpm" by
the build.sh for Vagrant

Change-Id: I51557f54e4ddf49d83bb69fa0035c8fff122857e
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-11-30 08:48:49 +00:00
176fd570e6 Using $(CURDIR) to fix the absolute path issue
Change-Id: Ic26edd34a2980fc8cf34514433a7b7076660316e
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-11-29 10:10:53 +00:00
c62a63dd05 libmemif: unit test update, continue configure if check module missing
Change-Id: I11ef4e7dcf1759eb3545be5db2a7196d1217a6dd
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-21 14:34:57 +00:00
ddecfb3d9f Add a non interactive mode
Change-Id: I2ebcb1acb43b4316e3dd48e83909d710dbef4e2f
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2017-11-17 14:08:35 +00:00
b8bbd6521f subunit is required on centos as well as fedora
Remove fedora dependency restriction on subunit and subunit-devel packages.
libsunit is only called in test/ext/Makefile on all platforms safe opensuse.

Change-Id: I483f42f20f6ba8bd112c18a9c51753a5d816d1c1
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
Signed-off-by: Romain Ly <romain.ly@enea.com>
2017-11-17 08:39:06 +00:00
8419755d4c libmemif: unmask head/tail pointers fix, additional ring info in memif_queue_details_t
Change-Id: I1dbf91c2a1575d5a82af70bfccdd990310323a8c
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-16 14:22:46 +00:00
3bd43b88ff VCL: clean up disconnect_session debug output.
- Run VPP in xfce4-terminal in VCL unit tests.

Change-Id: Iba6a870617a811261de0a54fa38cdb5109ae1d07
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-11-11 22:45:38 -05:00
6d56fa4b0a memif: do not mask head and tail pointers
Change-Id: Ie849ab713ff086187c18a91ab32e58207fe94033
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-08 19:52:38 +00:00
2ea2e423a9 VOM rpm build fixes
Change-Id: I1f76aabecfd7d33b924a4856a4c3fc683b9b8802
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2017-11-08 10:19:30 +00:00
6e39d62643 libmmeif: Makefile fix
Change-Id: Id3fae50714802a4e2a5a82fcdfcee5b640f47e37
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-07 17:06:46 +00:00
fab3890eab libmemif: add dep to Makefile
Change-Id: I7a14474e4545016f0de97f92602e1dfcc0ffac12
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-07 12:23:53 +00:00
e4bb5bc7c1 libmemif: example app can generate ICMP, dev perf tests (using icmpr-epoll)
Change-Id: Ib72ede51559754f606c0a1d57f4fb624d032caa6
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-11-05 11:35:47 +00:00
6184db357d dpdk: build nasm from source
As not all distros have the minimum required nasm version (2.12.01)
available, build nasm from sources when building Intel IPsec MB library.

Change-Id: Iaa9da87f612c0f84da5704162c3bf430b3351076
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-11-05 11:35:12 +00:00
c6b2a206b6 A bit of cleanup, updated the README, started vhost test.
Change-Id: I49b998644b8b79c778c1186fc09831b1cd8fc015
Signed-off-by: John DeNisco <jdenisco@cisco.com>
2017-11-01 18:06:33 +00:00
04b68bdc48 libmemif: perf optimization
Change-Id: Ie3bd75e0e98c7ecb4c66dba701131363e5ec89a2
Signed-off-by: Jakub Grajciar <Jakub.Grajciar@pantheon.tech>
2017-10-30 11:06:47 +00:00
4f6c3a9a13 VCL: Fix vcl test scripts to check vcl.am instead of uri.am
Change-Id: I34ab79ddf0a612be1f2a4223e46811516e5b317e
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-25 19:12:57 +00:00
5c7cf1cc53 VCL-LDPRELOAD: statically link vppcom into libvcl-ldpreload.so
- Move VCL & VCL-LDPRELOAD source into src/vcl
- Statically link vppcom into libvcl-ldpreload.so

Change-Id: I778300b37e8b06640d9dbc01caf297edf7a6edb7
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-24 18:25:31 +00:00
e22aa74154 VCL-LDPRELOAD: Refactor vcom_socket* and fix crash in vppcom_select
- filter verbose debug output with VCOM_DEBUG > 2
- clean up nomenclature, renaming vppcom_*() functions to
  vcom_session_*()
- fix vppcom_select crash with NULL maps.

Change-Id: I6e416a096d6fd800aa26991c2439e24e8fc38cc5
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-20 18:51:33 +00:00
1d35963766 LD_PRELOAD poll implementation
- add poll implementation
- implementation based on vppcom_poll
- implementation based on vppcom_select
- currently vppcom_select implementation is picked

Change-Id: If6c2862ae72e9969335aca5b8085957c98287dc0
Signed-off-by: shrinivasan ganapathy <shrinivasanganapathy@gmail.com>
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-19 17:42:23 +00:00
86b8e26b33 vcl-ldpreload: test script enhancements
Change-Id: Iff302a35cd5d35bf0671a63e8ba81a0c60a231eb
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-10-19 14:27:51 +00:00