summaryrefslogtreecommitdiffstats
path: root/src/vnet/pg/pg.h
AgeCommit message (Collapse)AuthorFilesLines
2021-02-15vlib: refactor checksum offload supportMohsin Kazmi1-1/+4
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>
2020-10-12misc: clang-11 and gcc-10 supportDamjan Marion1-1/+1
clang-11 complains: error: field 'buffer_template' with variable sized type 'vlib_buffer_t' not at the end of a struct or class is a GNU extension [-Werror,-Wgnu-variable-sized-type-not-at-end] Type: improvement Change-Id: I2cb6b4fde723a05b42cf33dd8130df074f0362ab Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-10-08fib: Register multicast MAC with interface for accepting interfacesNeale Ranns1-0/+4
Type: fix Signed-off-by: Neale Ranns <nranns@cisco.com> Change-Id: Ic6c76b65e2dcc08916373153944507a297c962c0
2020-08-14gso: packet coalesce libraryMohsin Kazmi1-1/+9
Type: feature Change-Id: Ia19d3611e596d9ec47509889b34e8fe793a0ccc3 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2020-04-15pg: set vnet buffer flags in pg streamsDave Barach1-0/+3
See .../extras/pg/checksum_offload.pg for a nontrivial example, which deliberately sets bogus ip and udp checksums in the generated packets, then fixes the mess with (software emulated) hardware checksum offload. Validated via "pcap dispatch trace on max 1000 buffer-trace pg-input 100". Packets stuffed into loop1-output have the configured bogus ip and udp checksums. vnet_calc_checksums_inline(...) fixes the checksums, which are correct when packets visit loop1-tx. The packet generator is a dumb robot in this regard. If you ask for a ridiculous flag combination - example: ip4 and ip6 - your mileage may vary. Type: feature Signed-off-by: Dave Barach <dave@barachs.net> Change-Id: I6d9e790f373bcd9e445a89113ca8e4c8f9aa9419
2020-02-26pg: API cleanupJakub Grajciar1-2/+2
Use consistent API types. Type: fix Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com> Change-Id: Ibf693e4b178d2579bc3afb9653bffc07fbb7dd0a Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
2019-10-03misc: add "maxframe" and "rate" to packet-generator cli.Christian E. Hopps1-0/+3
Allow for setting the maximum number of generated packets to be included in the frame passed to next nodes. This is very important for testing code which may be susceptible to multi-frame vs single-frame bugs (e.g., code that is doing re-ordering where packets may be buffered between frames). Update: - remove redundant packet "rate" option. - reduce n_max_frame to u32 as that's what pulled from the CLI. Type: feature Signed-off-by: Christian E. Hopps <chopps@chopps.org> Change-Id: Ie362bbb110b2cf01d9f65c559bbe9101e17b7fdc Signed-off-by: Christian Hopps <chopps@labn.net>
2019-07-28pg: add GSO supportMohsin Kazmi1-1/+4
Type: feature Change-Id: I72676495a85fbecc946aa266a75234cce70c3a5e Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2019-02-20pg: remove no-recycle optionDamjan Marion1-1/+0
Change-Id: Ic47bde2d08b2719b5c6c87cb2e9a8af0d2160e6e Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-23pg: cli improvementKingwel Xie1-0/+1
1. show packet-generator verbose, display all edit-groups and hdr-size 2. unformat_pg_payload, always mark payload hdr-size as 0 3. packet-generator now can change rate/limit/size at runtime 4. validate_stream checks buffer min-size/max-size against all edit groups' header size 5. remove incorrect max packet size limit check in validate_stream(...) Change-Id: Ic45e4f2b98bc0fd7330e0b480dd677fa3c69a677 Signed-off-by: Kingwel Xie <kingwel.xie@ericsson.com> Signed-off-by: Dave Barach <dave@barachs.net>
2019-01-06pktgen: support mixed multi/single chunk pcap replayDave Barach1-0/+3
Change-Id: I3d387b5e2b17f89ed688ea6cfee3fb6d782fe326 Signed-off-by: Dave Barach <dave@barachs.net>
2019-01-01buffers: remove unused codeDamjan Marion1-2/+0
Change-Id: If2bbfbc52994f5de0879763e0b7a7864498debb6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-11-17pcap-based dispatch tracerDave Barach1-1/+1
To facilitate dispatch trajectory tracing, vlib_buffer_t decoding, etc. through Wireshark Change-Id: I31356b9fa1f40cba8830aaf10a86a9fbb7546438 Signed-off-by: Dave Barach <dave@barachs.net>
2018-10-23c11 safe string handling supportDave Barach1-1/+1
Change-Id: Ied34720ca5a6e6e717eea4e86003e854031b6eab Signed-off-by: Dave Barach <dave@barachs.net>
2018-05-17Packet generator: preserve pcap file timestampsDave Barach1-0/+6
Set vnet_buffer2(b0)->pg_replay_timestamp, for use when desired. Fix a memory leak in pg_stream_free(...), which wasn't freeing the replay packet templates. Change-Id: I01822a9e91a52de4774d2b95cf0c2ee254a915e9 Signed-off-by: Dave Barach <dave@barachs.net>
2018-02-07Refactor vlib_buffer flagsDamjan Marion1-1/+1
Change-Id: I853386aebfe488ebb10328435b81b6e3403c5dd0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-02-03pg: add trace information for pg tx nodeDamjan Marion1-0/+7
Change-Id: I31730d58c34331f25f5b02cd065be94251f1302c Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-28Reorganize source tree to use single autotools instanceDamjan Marion1-0/+383
Change-Id: I7b51f88292e057c6443b12224486f2d0c9f8ae23 Signed-off-by: Damjan Marion <damarion@cisco.com>