Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
Indirect buffers are used to store indirect descriptors
to xmit big packets.
This patch moves the indirect buffer allocation from
interface creation to device node. Now it allocates
or deallocates buffers during tx for chained buffers.
Change-Id: I55cec208a2a7432e12fe9254a7f8ef84a9302bd5
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
(cherry picked from commit 55203e745f5e3f1f6c4dbe99d6eab8dee4d13ea6)
|
|
rdma interfaces filter packets per MAC by default to share the physical
interface between multiple users (eg. VPP and Linux).
When configured in promiscuous mode, all packets will go to this
interface, regardless of the MAC. All other interface will not receive
anymore packet while it is in promiscuous mode.
Promiscuous mode is needed (and automatically turned on) for L2 path
(l2patch, xconnect, bridge...).
Change-Id: I4c0eb4421f51d116e635e7828d00f202f4a97ded
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
Add a registration overwritten warning to ip4_icmp_register_type(...)
Change-Id: I6c2aabdb979b54ec49e827225acc74559ac4caab
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Type: fix
Change-Id: I383d5b189efc90ad418725b7e52888138dee0f75
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
The change https://gerrit.fd.io/r/18352 has introduced a check
which raises when neither apifiles nor apidir are set.
This change removes that check, as it broke CSIT.
If such a check is intended, find_api_dir() should be removed.
Also, make sure you do not break CSIT next time.
Change-Id: I0faab7c41d199e3aa5d5bc6aab0defd1ab9e10da
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
show_dpdk_hqos_queue_stats
Change-Id: Ic1a900e0fb85ee016af21535764dfca2e6282194
Signed-off-by: cohu <cong.hu@tieto.com>
|
|
Change-Id: Iead43a2b524b735a2069e611d899cd41d3a8efdc
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
We must do lock fib while vrf id ~0, otherwise it crashes while unlocking fib.
Change-Id: Iec9754ccd67634a132bc5384a4f796d4a65943ae
Signed-off-by: jackiechen1985 <xiaobo.chen@tieto.com>
|
|
Replace enqueue code with marcro vlib_validate_buffer_enqueue_x1
Change-Id: I4b454b1d73fa5adbaf5f40cf45dc8975878ac93b
Signed-off-by: jackiechen1985 <xiaobo.chen@tieto.com>
|
|
Type: fix
Change-Id: I8199c233f6968ac147fb1867a4f10ef04d67642f
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
Type: fix
Change-Id: Ib3a2777317f8c57e91ce43820ad7ca5d10ac8677
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
|
|
when try_resplit
Signed-off-by: dongjuan <dong.juan1@zte.com.cn>
Change-Id: I3ebbe7d2d11453700503df7f3be549781d8b73a7
|
|
Change-Id: I2945c2a2062ee5eda78f783c55cf16c2d60f959c
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
|
|
Change-Id: Id95fd604ed181a2f70c24e2c8cc4321755b7ba7f
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: Id42a597c130d0053d074446e552a81c7264549e7
Signed-off-by: Christian E. Hopps <chopps@chopps.org>
|
|
The current code only allowed access to the main thread error counters.
That is not so useful for a multi worker instance.
No return a vector indexed by thread of counter_t values.
Type: fix
Change-Id: Ie322c8889c0c8175e1116e71de04a2cf453b9ed7
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
This fixes a typo introduced in https://gerrit.fd.io/r/18198
Change-Id: I634a06be95154d3e1c5e5711ea69f19c9c4cca44
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
+ Sort subpage list.
+ Fix copypaste error in quic doc label.
Change-Id: Id8bdb4ad0d744f9886db3631ddad0e29bbb3c938
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
|
|
vnet_buffer2 -> gso_l4_hdr_sz is not set correctly because
vnet_buffer->l4_hdr_offset is not set yet at the top. Move the code to set
vnet_buffer->gso_l4_hdr_sz further down.
Change-Id: I0110e4687572bb93cb593d7d4d14a3d5083af13a
Signed-off-by: Steven Luong <sluong@cisco.com>
|
|
vlib_get_buffers helps save 1.4 clocks/pkt from 34.6 to 33.2
clocks/pkt on Skylake.
Change-Id: I741d10d20373f12d30ec8b04ad8c7444ffb42246
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
Change-Id: Ic00f8827f572e13b07d55c6c2f10fb6cdebf7e72
Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
|
|
Since 3DES has 8 bytes of initialization vector and
code contains hardcode for 16 bytes, check added to
determine if crypto algorythm is 3DES_CBC and set
corresponding iv_len param
Change-Id: Iac50c8a8241e321e3b4d576c88f2496852bd905c
Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com>
|
|
Change-Id: I3a4883426b558476040af5b89bb7ccc8f151c5cc
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
limit max # of fragments to 3 per packet by default
add API option to configure the limit at runtime
Change-Id: Ie4b9507bf5c6095b9a5925972b37fe0032f4f9e8
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
1. remove unnecessary cast for void * pointer.
2. remove the unused input parameter.
Change-Id: Ic0324364fc0c772200d30fb18a0ba959ed4f7ea4
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
|
|
replace all pthread_mutex_lock/unlock to be svm_queue_lock/unlock
So there all operation is based on defined mutux, and it can help us
to debug or replace mutux locking method
Change-Id: I9aeeb03bbbbf3d7a824c06a535e5d6a6b463b42c
Signed-off-by: Ping Yu <ping.yu@intel.com>
|
|
Out-of-tree plugins can refer to IP types in their API. The .api and
associated headers must be exported.
Change-Id: I75004343b040defd9eebac6a8a95c2ecf3c8079a
Signed-off-by: Benoît Ganne <bganne@cisco.com>
|
|
leak-check { <any-debug-cli-command-and-args> }
Hint: "set term history off" or you'll have to sort through a bunch of
bogus leaks related to the debug cli history mechanism.
Cleaned up a set of reported leaks in the "show interface" command. At
some point, we thought about making a per-thread vlib_mains vector,
but we never did that. Several interface-related CLI's maintained
local static cache vectors. Not a bad idea, but not useful as things
shook out. Removed the static vectors.
Change-Id: I756bf2721a0d91993ecfded34c79da406f30a548
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I1455cb507f6ecffbb053b0e3e2de833dd40fa5f5
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
|
|
* Configure tests to raise exception if cli_inband fails.
* Fix failing tests.
* Add filename detail to pcap.stat clib_error_return for debugging.
Note: this change identifies spurious issues with packet-generator such as:
CliFailedCommandError: packet-generator capture: pcap file
'/tmp/vpp-unittest-Test6RD-v09RPA/pg0_out.pcap' does not exist.
These issues resolve themselves on remaining test passes.
Change-Id: Iecbd09daee954d892306d11baff3864a43c5b603
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
|
|
More to the point: fix the Python API binding for the plugins.
The http_static and ct6 plugin setup_message_id_table calls didn't
have "_"'s between message names and CRCs. I would have expected this
to originate in the emacs skeleton, but the skeleton is correct.
Punctuation saves lives: "Let's eat Grandma..." != "Let's eat,
Grandma..." More or less.
Change-Id: Icd87813308701d203cf6f147b2bb90d39d51ddeb
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
After the related data-plane plugins have initialized their message IDs.
Change-Id: I4202a9e46ef6cdb12a5186be0f2370e2f9ccbb78
Signed-off-by: Dave Barach <dave@barachs.net>
|