aboutsummaryrefslogtreecommitdiffstats
path: root/extras
AgeCommit message (Collapse)AuthorFilesLines
2021-05-01vlib: refactor trajectory trace debug featureBenoît Ganne2-16/+0
trajectory trace has been broken for a while because we used to save the buffer trajectory in a vector pointed to in opaque2. This does not work well when opaque2 is copied (eg. because of a clone) as 2 buffers end up sharing the same vector. This dedicates a full cacheline in the buffer metadata instead when trajectory is compiled in. No dynamic allocation, no sharing, no tears. Type: refactor Change-Id: I6a028ca1b48d38f393a36979e5e452c2dd48ad3f Signed-off-by: Benoît Ganne <bganne@cisco.com>
2021-04-30misc: experimental configure scriptDamjan Marion1-28/+0
Type: make Change-Id: Iaeb9d22eec9a7a763b63899814a44e78c8050f1f Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-28vppinfra: don't fail if config.h is missing, fallback to defaults insteadDamjan Marion1-7/+0
Type: improvement Change-Id: Idc82d40a16cbc8a401a8fb359bc63083f47361b9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-27build: Makefile cleanupDamjan Marion1-0/+1
Type: make Change-Id: I751b0a25161c6eb8614ca19f7c77a4de82401f3d Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-18vppinfra: remove linux/syscall.hDamjan Marion1-2/+0
For portabiliy reasons it is better to have all wrapped in clib code. I.e. instead of using getcpu() we have clib_get_current_numa_node () and clib_get_current_cpu_id(). Type: refactor Change-Id: I29b52d7f29bc7f93873402c4070561f564b71c63 Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-04-12tests: support attaching to existing vppKlement Sekera1-2/+2
Introduce a new option DEBUG=attach to run a test against existing already running vpp. A new target 'make test-start-gdb' will spawn VPP in gdb for this purpose. Customization options explained in test-help. Type: improvement Change-Id: Ia160a85b33da3b2df292d44bb95729af9dd9da96 Signed-off-by: Klement Sekera <ksekera@cisco.com>
2021-04-07misc: add build_static_vppctl.shDamjan Marion1-0/+36
Type: make Change-Id: I47cf68ecd546cad05732a572579569594f96a1ff Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-03-30misc: vpptop makefile targetVladimir Lavor3-0/+276
Type: feature Added make target to install VPPTop - real-time viewer of VPP metrics. New targets in /extras/vpptop/Makefile: * make start - starts the installed VPPTop binary * make install - does the installation using the local VPP API * make cleanup - removes the VPPTop local directory * make help - prints the VPPTop help info Signed-off-by: Vladimir Lavor <vlavor@cisco.com> Change-Id: I1b93eaf67214e1fe0567d43409763882caea6416
2021-03-24misc: fuse fs for the stats segmentArthur de Kerhor4-0/+633
This extra allows to mount a FUSE filesystem reflecting the state of the stats segment. Type: feature Signed-off-by: Arthur de Kerhor <arthurdekerhor@gmail.com> Change-Id: I692f9ca5a65c1123b3cf28c761455eec36049791
2021-03-23misc: allow explicitelly setting CLANG_FORMAT_VERDamjan Marion1-1/+1
Type: improvement Change-Id: I356b1b1804a2b09b25f5a285ada12db6879e2f6a Signed-off-by: Damjan Marion <damarion@cisco.com>
2021-03-16misc: fix checkstyle on fedoraRay Kinsella1-3/+51
The fedora clang-format command helpfully does not include the version suffix, and places clang-format-diff in /usr/share/clang. Have summited #1939018 in Fedora, to fix upstream. https://bugzilla.redhat.com/show_bug.cgi?id=1939018 Until then ... Type: fix Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: Ibceae0fc15e7461c24288ee04f4d28943f889c36
2021-03-15misc: finish removing deprecated cop APIDave Barach1-4/+7
Fix bug in crcchecker. It must be possible to remove a non-production .api file Type: improvement Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I00b953e58017cc53051e6f4d8a70403dce8219a0
2021-03-15libmemif: fix the include for ssize_tAndrew Yourtchenko1-0/+1
Change-Id: I83830e64fb0fc302474837ebfa4f8cb133b1dccf Type: fix Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2021-03-12libmemif: add an include of sys/types.h header fileAndrew Yourtchenko1-0/+1
the ssize_t is defined there. Change-Id: Ie46d196347ab91d0a92c15f331db14fe3b57061c Type: fix Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2021-03-05api: crchcecker ignore version < 1.0.0 and outside of src directoryOle Troan2-93/+174
- For check patchset ignore files outside of src directory - For check patchset ignore files that have version < 1.0.0 - fix Pylint warnings - Modify vppapigen_crc to include version in JSON output Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I171cf6397e129e2438b2a494c5656236a7810f7b
2021-03-04misc: add ikev2 tests usecasesFilip Tehlar26-0/+640
Type: test Ticket: VPP-1893 Change-Id: Ib6ffd00e73f7110bf9e702f4a0fd5c68395d6786 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2021-03-04libmemif: verify length of transmitted buffersJakub Grajciar1-3/+4
In memif_tx_burst verify that total buffer size (data_offset + data_len) does not exceed buffer size. If not valid returns MEMIF_ERR_INVAL_ARG. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: Ifae8f92344a401febbc1efd22c301356ccf83d44
2021-03-04dpdk: deprecate ipsec backendFan Zhang8-0/+4057
Type: refactor DPDK crypto devices are now accessible via the async infra, so there is no need for the DPDK ipsec plugin. In addition this patch fixes the problem that cryptodev backend not working when master core and worker cores lies in different numa nodes. Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Neale Ranns <neale@graphiant.com> Change-Id: Ie8516bea706248c7bc25abac53a9c656bb8247d9
2021-03-04libmemif: socket filename length 108Jakub Grajciar2-27/+3
Dynamic size array was causing trouble in strlcpy. LINUX allows for max 108 filename length, so we can use that to make the array constant size. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: I76b1fc41f9d93cfbc9ad11bdca0c96a1fc261e84
2021-02-15vlib: refactor checksum offload supportMohsin Kazmi1-1/+2
Type: refactor This patch refactors the offload flags in vlib_buffer_t. There are two main reasons behind this refactoring. First, offload flags are insufficient to represent outer and inner headers offloads. Second, room for these flags in first cacheline of vlib_buffer_t is also limited. This patch introduces a generic offload flag in first cacheline. And detailed offload flags in 2nd cacheline of the structure for performance optimization. Change-Id: Icc363a142fb9208ec7113ab5bbfc8230181f6004 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2021-02-08libmemif: fix insecure uses of strncpyAndrew Yourtchenko4-45/+67
A calling patterm of "strncpy(dst, src, strlen(src))" invites a lot of troubles. However, even using the target size may result in a problem if the string is longer, since then the termination is not done. Use strlcpy(dst, src, sizeof(dst)), which will always null-terminate the string. Change-Id: I8ddaf3dc8380a78af08914e81849279dae7ab24a Type: fix Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2021-02-08libmemif: set data offset for memif bufferJakub Grajciar1-2/+25
Update descriptor offset based on data pointer in memif_buffer_t. Slave only, master will not modify the descriptor. Type: feature Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: Ice1e94cec366face650c58df81795f4dea727010
2021-02-05libmemif: fix memif_refill_queueJakub Grajciar1-5/+6
Fix arithmetic error in memif_refill_queue., where some of the buffers didn't get properly refilled. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: I9815a8ac9b899216581452c352e75e2a0454cbce
2021-02-05libmemif: set next free bufferJakub Grajciar2-0/+41
Adds memif_set_next_free_buffer - set internal pointer to next free descriptor for any tx queue. Type: feature Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: Ia24345a886a52c25c1723c6dbce023f2aed4a42c
2021-01-26misc: fix snap image buildDave Barach3-5/+92
Clean up snapcraft.yaml bit rot, switch to Ubuntu 20.04, add README.md Type: improvement Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I2e0d3925cf43541e70b59083f8c91af539aa34e6
2021-01-21libmemif: buffer enqueue refactorJakub Grajciar3-75/+121
Refactored memif_buffer_enq_tx - dequeue buffers from any queue (rx/tx) and enqueue them to any tx queue. Added memif_buffer_requeue - swap descriptors of provided buffers. Type: refactor Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: I8482824df920aaaf8325d52a297ed57a815aaba6
2021-01-15misc: checkstyle ignore .patch files in trailing whitespace checkNeale Ranns1-1/+1
Type: fix Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: I9226e94e59a35648ad2945ebfdf928dc80ad635c
2021-01-14bash: move jjb sandbox bash functions to ci-management repoDave Wallace1-87/+1
Type: refactor Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I9b4ce818036509c0afcb204664efcc49625179ef
2020-12-28vlib: add missing file template descriptionsPaul Vinciguerra1-0/+1
Add descriptions to clib_file_t template structures so that sockets can be identified via the 'show unix file' cli command. Type: fix Change-Id: Ibf82d55aa6c7b1126bd252b76d0dc8b7076f5046 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-18misc: deprecate old perfmonDamjan Marion25-0/+25549
Type: refactor Change-Id: I1303219f9f2a25d821737665903b0264edd3de32 Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-12-18misc: migrate from GNU indent to clang-formatDamjan Marion1-0/+90
Type: make Change-Id: I085dcd6fe826da14d456f84a23355310bdc5d1e9 Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-12-15api: crchcecker ignore version < 1.0.0 and outside of src directoryOle Tr�an2-171/+93
This reverts commit 510aaa8911843206f7b9ff48b41e3c7b8c4a99fe. Reason for revert: failed in case of no api file in changeset. Change-Id: I2c6f01b25a35128df870418eef0008766bb590df Type: fix Signed-off-by: Ole Troan <ot@cisco.com>
2020-12-15api: crchcecker ignore version < 1.0.0 and outside of src directoryOle Troan2-93/+171
- For check patchset ignore files outside of src directory - For check patchset ignore files that have version < 1.0.0 - fix Pylint warnings - Modify vppapigen_crc to include version in JSON output Type: fix Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: I93f7bebeeaeedc19b2b1e5e135ea1035517d7f76 Signed-off-by: Ole Troan <ot@cisco.com>
2020-12-14build: stop trying to build py2 versions of vpp_papiPaul Vinciguerra1-26/+0
Python2 was EOL's in Jan 2020. RHEL6 was EOL'd in Nov 2020. Type: fix Change-Id: Id6910258cfe808c1e6a8fe16334c23d7991509dc Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-12-09bash: Update jjb version in jjb-sandbox-env functionDave Wallace1-1/+1
- The version of jjb deployed in jenkins.fd.io was upgraded to 3.5.0. Make the sandbox setup function use the same version. Type: fix Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I486faffc6b5a0cce7425dd526adf9dbc034b2d85
2020-12-04libmemif: clean up typosPaul Vinciguerra10-46/+46
Type: style Change-Id: I0d25d922312dfd60a665916cf47c3d2faa29ea49 Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
2020-11-25api: vat2 and json autogeneration for api messagesOle Troan1-1/+2
VAT2: A completely auto-generated replacement of VAT. Reads input message in JSON from stdin and outputs received messages in JSON. A VAT2 plugin is automatically built for a .api file. There no longer a need for a separate _test.c. Example: vat2 show_version {} { "_msgname": "show_version_reply", "retval": 0, "program": "vpe", "version": "21.01-rc0~411-gf6eb348a6", "build_date": "2020-11-19T09:49:25", "build_directory": "/vpp/autogen3" } vat2 sw_interface_dump '{"sw_if_index": -1, "name_filter_valid": 0, "name_filter": ""}' [{ "_msgname": "sw_interface_details", "sw_if_index": 0, "sup_sw_if_index": 0, "l2_address": "00:00:00:00:00:00", "flags": "Invalid ENUM", "type": "IF_API_TYPE_HARDWARE", "link_duplex": "LINK_DUPLEX_API_UNKNOWN", "link_speed": 0, "link_mtu": 0, "mtu": [0, 0, 0, 0], "sub_id": 0, "sub_number_of_tags": 0, "sub_outer_vlan_id": 0, "sub_inner_vlan_id": 0, "sub_if_flags": "Invalid ENUM", "vtr_op": 0, "vtr_push_dot1q": 0, "vtr_tag1": 0, "vtr_tag2": 0, "outer_tag": 0, "b_dmac": "00:00:00:00:00:00", "b_smac": "00:00:00:00:00:00", "b_vlanid": 0, "i_sid": 0, "interface_name": "local0", "interface_dev_type": "local", "tag": "" }] This is the first phase and vat2 is not integrated in packaging yet. Type: feature Signed-off-by: Ole Troan <ot@cisco.com> Change-Id: Ib45ddeafb180ea7da8c5dc274a9274d7a4edc876 Signed-off-by: Ole Troan <ot@cisco.com>
2020-10-24build: add compile_commands.json cleanup scriptDamjan Marion1-0/+28
Type: make Change-Id: I8d6a5018bddf029e106df3cb8b8eded4fa28067d Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-10-17misc: move gmod to extras/Damjan Marion4-0/+222
Type: make Change-Id: I057237ec5cef4dbecf6b6cd5a0adb4b7dfa78337 Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-10-16misc: deprecate VOMDamjan Marion263-250/+2635
Type: make Change-Id: Ifb3e52af93d24fcc2f2e6a0c408e16902a2fe553 Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-09-23vppapigen: crcchecker: harmonize the in_progress markingAndrew Yourtchenko2-6/+44
The format for deprecation is "option deprecated" now, so harmonize the in-progress marking to logically be "option in_progress" At the same time recognize the legacy/erroneous types of marking, print the warning. Change-Id: If418dfadd69ffb112550164d63d13420e51cefd7 Type: fix Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2020-09-21build: touch files when extracting rpm tarballsDave Wallace1-2/+5
Type: fix - Long story short, intermittently centos jobs have been failing with clock skew issues. When someone commits a patch on a machine with the date ahead of UTC, then clock skew will be encountered when extracting the RPM source tarball. See [0] and [1] for details. - Replace 'make bootstrap' with 'make install-dep' in RPM package build specfile. [0] https://unix.stackexchange.com/questions/164807/does-git-archive-use-the-wrong-file-timestamp [1] https://git.fd.io/vpp/tree/Makefile#n380 Change-Id: Iebfb9eb2e26c1f2e4488e871da86d0c60b9f4048 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2020-09-21build: remove opensuse build infraDave Wallace5-344/+3
- VPP on opensuse has not been supported for several releases. Type: fix Signed-off-by: Dave Wallace <dwallacelf@gmail.com> Change-Id: I2b5316ad5c20a843b8936f4ceb473f932a5338d9
2020-09-16vppapigen: crcchecker: report in-progress messagesAndrew Yourtchenko1-0/+6
in-progress messages do not give any API stability guarantees, by design, to allow easy iteration. Provide an easy way to know which messages are in-progress. If as a user you see "in-progress" message that you want to use in production, please contact the feature owner and discuss the path to removing the "in-progress" status before that. Change-Id: I27729995e26a70af373e642b871dbb5cc5526959 Type: improvement Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2020-09-16vppapigen: crcchecker: report deprecated messagesAndrew Yourtchenko1-5/+15
Report if the messages were marked as deprecated, but not yet deleted. Useful for building the release notes and comparing between the releases. Also, put the dict_compare() call into the report(), since latter always consumes the output of the former. Change-Id: Iceab3e94ff66da931a4669b612026bd162dd5d1a Type: improvement Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2020-09-15build: fix the the build on centos/rhel 8Yichen Wang1-2/+1
1. Remove uncessary runtime dependency; 2. Add missing build dependency; 3. Fix runtime dependency for api-python3 RPM; Type: make Change-Id: I2700f1a15112effba8d1527aca6467158f81f486 Signed-off-by: Yichen Wang <yicwang@cisco.com>
2020-09-11misc: selinux fixes (packet_socket r/w)Martin Millnert1-1/+1
vpp-20.05 on up-to-date Centos 7.8 host with enforcing SELinux fails to create a host-interface due to two missing SELinux-permissions: vpp_t self:packet_socket { read write } This simple patch adds these two permissions. Tested successfully on local installation. The steps to reproduce: $ ip link add vpeer-host type veth peer name vpeer-vpp vpp# create host-interface name vpeer-vpp create host-interface: Permission denied (errno 13) [...] $ semodule -i vpp-packet-socket.pp vpp# create host-interface name vpeer-vpp host-vpeer-vpp Type: fix Ticket: VPP-1931 Change-Id: I2b3d92b27b9a9f26aa1c85af2946b15e83e27944 Signed-off-by: Martin Millnert <martin@millnert.se>
2020-09-09docs: Fix create memif cliNathan Skrzypczak3-4/+4
Type: docs Change-Id: I91a954abf77335e1ddcbd1468633d9d7980bbac2 Signed-off-by: Nathan Skrzypczak <nathan.skrzypczak@gmail.com>
2020-08-31vpp_config: update node variants to skx and iclRay Kinsella1-2/+2
Node variant names have changed to skx and icl. Type: fix Signed-off-by: Ray Kinsella <mdr@ashroe.eu> Change-Id: I5be832aa59e4e440df53869077d801c011e3defa
2020-08-31af_xdp: AF_XDP input pluginBenoît Ganne2-0/+105
Type: feature Change-Id: I85aa4ad6b68c1aa0e51938002dc691a4b11c545c Signed-off-by: Damjan Marion <damarion@cisco.com> Signed-off-by: Benoît Ganne <bganne@cisco.com>