diff options
Diffstat (limited to 'src/vnet/pg/pg.h')
-rw-r--r-- | src/vnet/pg/pg.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/vnet/pg/pg.h b/src/vnet/pg/pg.h index a6616d9ced7..06e61261b7d 100644 --- a/src/vnet/pg/pg.h +++ b/src/vnet/pg/pg.h @@ -45,6 +45,7 @@ #include <vppinfra/fifo.h> /* for buffer_fifo */ #include <vppinfra/pcap.h> #include <vnet/interface.h> +#include <vnet/gso/gro.h> extern vnet_device_class_t pg_dev_class; @@ -305,6 +306,8 @@ typedef struct /* Identifies stream for this interface. */ u32 id; + u8 coalesce_enabled; + gro_flow_table_t *flow_table; u8 gso_enabled; u32 gso_size; pcap_main_t pcap_main; @@ -358,9 +361,14 @@ void pg_stream_change (pg_main_t * pg, pg_stream_t * s); void pg_stream_enable_disable (pg_main_t * pg, pg_stream_t * s, int is_enable); +/* Enable/disable packet coalesce on given interface */ +void pg_interface_enable_disable_coalesce (pg_interface_t * pi, u8 enable, + u32 tx_node_index); + /* Find/create free packet-generator interface index. */ u32 pg_interface_add_or_get (pg_main_t * pg, uword stream_index, - u8 gso_enabled, u32 gso_size); + u8 gso_enabled, u32 gso_size, + u8 coalesce_enabled); always_inline pg_node_t * pg_get_node (uword node_index) |