Age | Commit message (Collapse) | Author | Files | Lines |
|
Accidentally removed pthread_mutex_unlock (&root_rp->mutex) in the
dead client scan case. Oops. Bad idea.
Change-Id: I488b7e39d01c267052785bd346e8846351db90a9
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I8292628ad359a19e02ff79568d773ad2b1af51ec
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This commit removes assumption that all packets have
data offset equal to RTE_PKTMBUF_HEADROOM. Some drivers
like fm10K receive packets with different data offset.
Change-Id: I0aba6296458dab9df6fff639b4b827b2084ddc3e
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I3ef9faceb085bd06b55e3ba7800389eaae56177a
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Remove usage of dummy encap string for output from BD to a tunnel which
has been deleted. Instead, use a node l2-outpt-del-tunnel so that if
there are stale entries in the L2FIB for any deleted tunnel sw_if_index,
l2-output will send packets using this entry to the l2-output-tunnel-del
node which just setup the proper drop reason before sending packets
to the error-drop node to drop the packet.
Change-Id: I590982ee25e924ab74e2855c55c58baf29a9fad4
Signed-off-by: John Lo <loj@cisco.com>
|
|
Locks are used while populating DB, which is once
once per entry. Therefore, it is not in the performance
critical path. Each thread is a PMD, therefore, spin locks
are used instead of mutexes.
Change-Id: I4bc297f73a8f3eafebed1f00e51ec75ca24163f6
Signed-off-by: Shesha Sreenivasamurthy <shesha@cisco.com>
|
|
Change-Id: I9fd0cd49e4636d5d8978567fa914487785035c8a
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Iaf72e7ffb2d30799733f641d66bbc74f40a4d6e1
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
experimental
IOAM code. Support dynamically adding options. By default
only process HBH if explicitly configured to. Otherwise we'll just set
ourselves up to be a victim of DOS.
Change-Id: I41cdfdc00aeaa0cf568e4463440b89be761b6b7d
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Change-Id: I5cba5eae5a981e41df3f227834a079e10982537f
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
This patch introduces following 2 startup options:
num-rx-desc
num-tx-desc
Which can be specified under the dpdk { dev PCI_ADDR {...} } or
dpdk { dev default {...} } .
"show hardware" output is extended to display what is set:
TenGigabitEthernet2/0/0 5 down TenGigabitEthernet2/0/0
Ethernet address 90:e2:ba:96:d0:54
Intel 82599
carrier up full duplex speed 10000 mtu 9216
rx queues 2, rx desc 512, tx queues 2, tx desc 1024
cpu socket 0
Change-Id: Ia832885c8e5cf0eb0575367e97581e7065934753
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Commit e36af5f3153 moved sample-plugin a dedicated directory.
The build system could not find sources for sample-plugin-* targets.
This commit adds a dedicated build-data/packages directory for
plugins and moves sample-plugin.mk there.
Change-Id: I9e3ee8858580e86ff6d4f7317300df0a5e239a01
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
|
|
Change-Id: I343418d409d682b00e74e41236382fdc6b3c780c
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
As BVI receive a packet with unicast DMAC from the BD, including unknown
unicast flood packet, the packet should not be L3 forwarded unless its
DMAC matches the MAC of the BVI.
Change-Id: I46e18629c901062592c8ebe3a238c5cfdc1096b4
Signed-off-by: John Lo <loj@cisco.com>
|
|
This change adds support for providing per-interface
parameters in the startup config.
Sample configuration:
dpdk {
dev default {
num-rx-queues 3
num-tx-queues 3
}
dev 0000:02:00.0 {
num-rx-queues 2
num-tx-queues 2
}
dev 0000:02:00.1
}
Change-Id: Ia7d9ae2ac9c4fd9baaa480d061a395f8a421a722
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
The tarball repository fast.dpdk.org is fast and reliable enough
to be used in VPP build process.
Change-Id: Ifaae57d6f8308127b93fc51b2a2a863da5766cd2
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
|
|
Sleep <nn> milliseconds after each dpdk input device poll, useful when
oversubscribing CPUs.
Change-Id: I90ad1f21dae7eeeda56bfe845911118aa46f83ec
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Fix previous change that does not work on little endian machines.
Use inline call ip4_is_fragment() which is endian neutral.
Change-Id: I5a35d89d936650ab6c628dfc388b8c992a74a589
Signed-off-by: John Lo <loj@cisco.com>
|
|
Change-Id: I6de20c9883d6918899c4b5b03e900814961e824d
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
https://gerrit.fd.io/r/#/c/1338/
Change-Id: I8b7fffe24cbeb435b18faaada9ef1cea9fd93d39
Signed-off-by: Ed Warnicke <eaw@cisco.com>
|
|
Some small fixes to the srv6 code to bring it toward
conformance with draft-previdi-6man-segment-routing-header-05.
- The first segment needs to remain in the segment list.
- The segment list template needs a space for the ultimate
destination.
- The ultimate destination needs to be inserted into that
space when adding the SRH.
Change-Id: I66db6912e0128da084f14ceca20918ef67ccff79
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Check packet for presence of VLAN tag in the MAC header and set
the PKT_RX_VLAN_PKT flag to trigger sub-interface lookup in VPP
ethernet-input node.
Change-Id: Iadbfc59d08ef85efb936c88323a90194f3cd656f
Signed-off-by: John Lo <loj@cisco.com>
|
|
The add_del function was not properly checking if a tunnel already
existed; instead it was checking if the given tunnel name existed.
If no tunnel name was given it flat out refused to add a tunnel
even though that is optional.
Cleanup the add/del parameter validation to "do what I expect" it
to do:
When adding a tunnel:
- If a "name" is given, it must not exist.
- The "key" is always checked, and must not exist.
When deleting a tunnel:
- If the "name" is given, and it exists, then use it.
- If the "name" is not given, use the "key".
- If the "name" and the "key" are given, then both must point to the
same thing.
Change-Id: I9b48ae0203f9664cf8af0f7dc49bf480ddec10d5
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Before VPP is enhenced to do IP reassembly of local packets, just set
the protocol path to "experimental" for now so they will be error-punted
as unknow IP protocol.
Change-Id: I2ffefb0b4205357653ba24d80c722cafd5972fba
Signed-off-by: John Lo <loj@cisco.com>
|
|
When providing uid or gid for the API SHM, if non-numeric values
are given look them up in the local system user database and if
found use the values discovered.
Change-Id: I95152f58646643bc44d2af4cbad6338901935c69
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Use the command line argument "api-segment { uid <nnn> gid <nnn> }" to
configure shared memory segment file ownership. Defaults to uid = gid
= 0. Shared-memory segments are explicitly set to 0770 mode, aka
"rwxrwx---".
Change-Id: Ic5d596b68139add61e7de6ace035c57dfd030111
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
When creating VXLAN over IPv6 the code was using storage for the
hash key that could later be moved. Since the key is larger than
the word size this was being referenced as a pointer; when the
storage moves that breaks the hash.
Instead allocate dedicated storage for the key.
This patch also includes other minor cleanups, including using
clib_memcpy in places it should be used and some whitespace
fixes.
Change-Id: I579f2cb515853ef56dedcca350fcad08aa6111a9
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
The box update requires an internet connection.
It is better to disable it on vagrant start.
It still can be updated with the manual command:
vagrant box update
Change-Id: I04e05ea08477bf36f25672c54d0a057d995d4a42
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
|
|
Change-Id: Id28f134e3a4aa19c5756014d53004501db0d0c88
Signed-off-by: Ed Warnicke <eaw@cisco.com>
|
|
Change-Id: I6e5ed2562c65dde6c9f6f085c8b9d40f80684894
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Ida11bddb52268e0e8513b7b379eeed6103bd48f1
Signed-off-by: John Lo <loj@cisco.com>
|
|
The loopback interface should use vnet_interface_output_no_flatten so
follow-on buffers of a jumbo packet do not get put on the output frame
and be sent back to ethernet-input or l2-input node.
The replication_recycle_callback() function should not assume follow-on
buffers of a jumbo packet are on the buffer free list.
Change-Id: Ide646a6d9b43e82782c0581ea3022a9e70f82582
Signed-off-by: John Lo <loj@cisco.com>
|
|
- consistent use of hash_*_mem methods.
- tunnel setup copies the key from the wrong location
- remove extraneous storage for keys copied from the vxlan
node that is not applicable here
Change-Id: I419fd30a52ba387104abe467c296de85233823d1
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I5aef12d3a9c8daefff52e5f958c504f5d2ff9fd0
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Check duplication locator and clean after locator when remove it.
Refactoring locator_set code.
Change-Id: Ib83cbcddc7a363a60fa5b6a366203d0dc0ea7ca6
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
|
|
Change-Id: Ia6eaaa9a741e84cbd0ff957cfd9a7143a3d0a977
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I4913fe6c4b1280939147887896aea9b79a9f7f10
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
When af_packet signals the kernel that there are packets in the tx
ring with sendto() the kernel sometimes responds with EAGAIN.
Previously the af_packet driver would treat any error from sendto()
as fatal.
Whilst there's not much we can do about this, count the errors
and let's try to not die on the spot or sit in a loop forever.
Change-Id: Id76ba5e07b744f1ed6f348ec838a1ac506a381c9
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I0e985b079da3224f4886e3ee2cece4d046e291eb
Signed-off-by: John Lo <loj@cisco.com>
|
|
Change-Id: I4210b3320d3fe841ba7ff1349b6a52affc047338
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
The VXLAN add_del API sometimes rejects calls with
VNET_API_ERROR_SAME_SRC_DST when the two parameters are obviously
different. This is because the API code is checking the "is_ip6" flag in
a not-yet initialized area of memory leading to random results.
Also fix help text for vxlan_add_del_tunnel in vat.
This does not change the API; it repairs intermittent failure.
Change-Id: I41863694f478c1f669078f82f69d8cca4841c989
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I6e6940c8467a331b37da153bb8a2154c1d165261
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I3ed6269f9a307b50b56ce04defc2576a139c6add
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
This is preparation work for moving DPDK
EAL and mempool initialization to vlib.
Change-Id: I2dc35aa53edec0e07fc2650d630aa625831154c3
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ib95338d7055dea9036eddb7dff5ca7ccbcb35639
Signed-off-by: Andrej Kozemcak <akozemca@cisco.com>
|
|
PatchSet4: consolidate code as per comments.
PatchSet3: simplify the code using ip_udp_encap_one/two
PatchSet2: consolidate comments and indent style
Change-Id: Ia8b43f854a46d77e838e198566200ad28fd72472
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
Change-Id: Ic67b3c0623d98c5ee3f1ffa1e1bd9cfb96b233bd
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Change-Id: Ib283c75505b787f715e34f5b325dda8a6c2fa125
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
Available only in vpp_lite platform
Change-Id: I09d112af5f7f4521ec25196ecdd8c02c20eedd5f
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
The current location in the vnet dynamic library does not override the dpdk
weak function as intented. Moving this function to the main app allows the
linker to find the non-weak symbol and override it.
Change-Id: I96c6dc5af2e511cc1f84bd66419c5a4ac96a9541
Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
|