Age | Commit message (Collapse) | Author | Files | Lines |
|
Add tooling for feature metadata configuration files.
The main tool is in src/scripts/fts.py
make checkfeaturelist to validate against schema.
make featurelist to dump all feature lists to stdout.
Example feature definition:
name: IP in IP tunnelling
maintainer: Ole Troan <ot@cisco.com>
features:
- IPv4/IPv6 over IPv4/IPv6 encapsulation:
- Fragmentation and Reassembly
- Configurable MTU
- Inner to outer Traffic Class / TOS copy
- Configurable Traffic Class / TOS
- ICMPv4 / ICMPv6 proxying
- 6RD (RFC5969):
- Border Relay
description: "Implements IP{v4,v6} over IP{v4,v6} tunnelling as
described in RFC2473. This module also implement the border relay of
6RD (RFC5969)."
state: production
properties: [API, CLI, STATS, MULTITHREAD]
missing:
- Tunnel PMTUD
- Tracking of FIB state for tunnel state
- IPv6 extension headers (Tunnel encapsulation limit option)
JSON schema is embedded in fts.py
Example markdown: https://github.com/otroan/scratch/blob/master/features.md
Change-Id: I903b4ee6b316a9378c259e86dc937092e5d4b7da
Type: make
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Type: fix
Fixes: d5023a72
Change-Id: I17cf7887d1274cf3ca9301ec87b8c8f539359456
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Explains a variety of hard-to-diagnose problems with certain Atom and
Denverton NIC types.
I finally tripped over a highly-repeatable failure: home gateway
use-case bitten by refusal to negotiate a DHCP lease for the trunk
port.
The dhcp client won't send pkts unless VNET_HW_INTERFACE_FLAG_LINK_UP
is set on the tx hw interface:
/* Interface(s) down? */
if ((hw->flags & VNET_HW_INTERFACE_FLAG_LINK_UP) == 0)
return;
Change-Id: I17ef2ba7b39078555fa27d2d874a60c67e1530ee
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
This patch enables bonding numa awareness on multi-socket
server working in active-backeup mode.
The VPP adds capability for automatically preferring slave
with local numa node in order to reduces the load on the
QPI-bus and improve system overall performance in multi-socket
use cases. Users doesn't need to add any extra operation as
usual.
Change-Id: Iec267375fc399a9a0c0a7dca649fadb994d36671
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: Iac6bd29389839c9eb8c1ff2105b4da69b6e1ce3e
Signed-off-by: jackiechen1985 <xiaobo.chen@tieto.com>
|
|
before and after:
ip4-load-balance 1.54e1
ip4-load-balance 1.36e1
p.s. Quad loops were not beneficial
Change-Id: I7bc01fc26288f0490af74db2b1b7993526c3d982
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
and document scaling
Change-Id: I65d8999e65616d77e525963c770d91e9b0d5e593
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I07681d94301e19389dda0caacd5a93b21d9aff1f
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Use explicit types in .api definition.
Change-Id: Ib4c3c4ab6282a6d443e3d19af029dc091b462dac
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Use explicit types vl_api_address/prefix in ipip.api.
Change-Id: Ib3133cebdbe4437742924efd49cde4009c4cc31b
Type: refactor
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
We have native implementation and we should not maintain both....
Change-Id: Ic09ebffda52cdc733b3cfeff06690e0d3cc08084
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I70817579a09a7026f5fa7c8e71babded891ea285
Signed-off-by: Alexander Chernavin <achernavin@netgate.com>
|
|
Change-Id: Iab27b405fb3ca7aed94ae974d57c286c41298c3a
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
For tunnel mode, after decryption the buffer length was being adjusted
by adding (iv length + esp header size). Subtract it instead.
Required for BFD to work on an IPsec tunnel interface. BFD verifies
that the amount of received data is the expected size. It drops the
packet if the buffer metadata says that the packet buffer contains
more data than the packet headers say it should.
Change-Id: I3146d5c3cbf1cceccc9989eefbc9a59e604e9975
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
|
|
Change-Id: I363a4444f4d296f04371acd65c702b1a1ce70913
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: Ib9297b712ff7d08bf085fb0b6c9e6ffd83c5fa57
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Type: fix
Fixes: 47feb11
Change-Id: I6b3b97cd361eef19c910c14fd06edb001a4c191b
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I219b270f905dad5939ab38e933712845c314286d
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
This patch helps save 4.1 clocks/pkt from 62.9 to 58.8
clocks/pkt on Skylake.
Change-Id: I749a88a8fa6c78243441a89d6afcd04f106af3da
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: I0e28d059143fb7489d27a10c5b4a152d0d7dfb1f
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Maintain the MAINTAINERS file. Removed src/plugins/*.am listings. Added
a couple of plugins.
Add vlib_process_create (vlib_main_t *vm, char *name,
vlib_node_function_t *f, u32 log2_n_stack_bytes);
/** @brief Create a vlib process
* @param vm &vlib_global_main
* @param f the process node function
* @param log2_n_stack_bytes size of the process stack, defaults to 16K
* @return newly-create node index
* @warning call only on the main thread. Barrier sync required.
*/
This function makes it easy to spin up periodic processes when features
are enabled for the first time. That coding pattern is highly recommended.
Update the emacs-lisp plugin generator to use vlib_process_create,
instead of generating static periodic process nodes.
Change-Id: Icda33e93b9034779d3a3e228cd1110af14b058a5
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
* Add optional tag to api call in tests
* Add test for map_domain_dump() for api code coverage.
Type: fix
Change-Id: I2f7784aecdca4bf9e94de3319f959786e3d2c607
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
|
|
This is not my core competency.
Reviews/feedback/suggestions welcomed. ;)
Tested with:
rv = self.vapi.http_static_enable(
fifo_size = 1,
cache_size_limit = 1000000,
prealloc_fifos = 0,
private_segment_size = 0,
uri="tcp://0.0.0.0/80",
www_root = "/var/tmp/run/vpp/html"
)
DBGvpp# show http static server
www_root /var/tmp/run/vpp/html, cache size 0 bytes, limit 1000000 bytes, evictions 0
Change-Id: I0f660753317ceedab89da1b65701a24d6f7145de
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
|
|
Extreme BDP flows requires more buffer memory.
Change-Id: I1134be248c6bdd719fa1a033bca41414ceb73371
Signed-off-by: Korian Edeline <korian.edeline@ulg.ac.be>
|
|
Change-Id: I2e48eb772dc44912192d0684b8ee631d8d975e9e
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
|
|
call crypto backend only once per node call
Change-Id: I0faab89f603424f6c6ac0db28cc1a2b2c025093e
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Initial commit of VPP API language documentation.
Change-Id: Ied67203265319a8603086486c9031e723484c501
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
- add to the Punt API to allow different descriptions of the desired packets: UDP or exceptions
- move the punt nodes into punt_node.c
- improve tests (test that the correct packets are punted to the registered socket)
Change-Id: I1a133dec88106874993cba1f5a439cd26b2fef72
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Add a minimal ip6 hbh header processing test.
ioam plugin: use ip6_local_hop_by_hop_register_protocol() in
udp_ping_init().
Please test the ioam plugin udp_ping path AYEC, so I can
publish the patch.
Change-Id: I74e35276d6c38c31022026cfd238fad5e4a54485
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
It defaults to using interface-output as the next node. If other
output features are enabled on the ip4-output arc, they get skipped.
That makes me sad.
Change-Id: I3f4d3320fb8092918e1e0663c66baca1c74c26ec
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
|
|
Change-Id: Id5c0f420e32e0504cea660fed2013f3ad28088aa
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
|
|
Change-Id: I331efb20b98a7e3c507d9158d0221ee7d5353b18
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
In tap tx routine, virtio_interface_tx_inline, there used to be an
interface spinlock to ensure packets are processed in an orderly fashion
clib_spinlock_lock_if_init (&vif->lockp);
When virtio code was introduced in 19.04, that line is changed to
clib_spinlock_lock_if_init (&vring->lockp);
to accommodate multi-queues.
Unfortunately, althrough the spinlock exists in the vring, it was never
initialized for tap, only for virtio. As a result, many nasty things can
happen when running tap interface in multi-thread environment. Crash is
inevitable.
The fix is to initialize vring->lockp for tap and remove vif->lockp as it
is not used anymore.
Change-Id: I82b15d3e9b0fb6add9b9ac49bf602a538946634a
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
(cherry picked from commit c2c89782d34df0dc7197b18b042b4c2464a101ef)
|
|
Change-Id: Ia0cadebab8b800e34e9574601cdebee5ca90cc6a
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: I3906adf9aa20b4221eeb7a8b5b353c6f0cb32d04
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: I527b7e43dfba05eab12591e193f07f5036e33f56
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: Ida6a8f96bd858246e993250087bed45e7084ede1
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I7b735f5a540e8c278bac88245acb3f8c041c49c0
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
Change-Id: I055014ff0bc7f6d32d59eaf3511ecb91e268d49b
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: If59fea9bb733f6a134d9cb5a9f61dfabf3441820
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This patch can help save 2.7 clocks/pkt from 51.5 to 48.5
clocks/pkt on Skylake server.
Change-Id: I10173c8a147a0e54f925c7841c26f133eb75cbed
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
1. Using vlib_get_buffers replaces original logic.
2. Simplify some implementation.
Change-Id: I46cd3487c1d3289074d9dff22aa384688be326dd
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
copy vlan strip config from default device
Change-Id: I4ad1c159bad964fd1900b5ae4960b7014dd9f9b1
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
|
|
Reorder foreach_dpdk_rss_hf to fix rss configuration error issue.
Change-Id: Idec45534cd7dfe810b25584b1b27ac52b1c45110
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
|
|
Change-Id: I005f96480e81f3e750c18261e78d0e401da7528e
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: Ie7a6c7b92a6beeb356f01384216a4982fb3d420e
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
This patch improves performance by prefetching encap header area
and taking full advantage of optimized function vlib_get_buffers.
After applying the patch, the function vxlan_gpe_encap can save
4.1 clocks/pkt from 41.7 to 37.6 clocks/pkt on Skylake.
Change-Id: I85d486b21a2524d64f2e246dfb4183539ec2532d
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: I9e6a0fb583b0b6dd9b5e16aa9169bdf7b99a7664
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
When multichained fragments comes into reassembly, followed by buffer Linearization or dropping the buffer for other reasons inbetween disturbs the multichained mbuf linking.
When packet is transmitted, followed by freeing of the buffers, woudl result in double free and packet corruptions
Change-Id: Ib5711d54e61fdd6a67deb30dad0b2a14afb9c2da
Signed-off-by: Vijayabhaskar Katamreddy <vkatamre@cisco.com>
|
|
Change-Id: Iddeb3a1b0e20706e72ec8f74dabc60b342f003ba
Signed-off-by: Dave Barach <dave@barachs.net>
|