NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
flow.c File Reference
#include <arpa/inet.h>
#include <rte_ethdev.h>
#include <doca_flow.h>
#include "common.h"
#include "dpdk_tcp/tcp_session_table.h"
Include dependency graph for flow.c:

Go to the source code of this file.

Functions

 DOCA_LOG_REGISTER (GPU_PACKET_PROCESSING_FLOW)
 
struct doca_flow_port * init_doca_flow (uint16_t port_id, uint8_t rxq_num)
 
doca_error_t create_udp_pipe (struct rxq_udp_queues *udp_queues, struct doca_flow_port *port)
 
doca_error_t create_tcp_cpu_pipe (struct rxq_tcp_queues *tcp_queues, struct doca_flow_port *port)
 
doca_error_t create_tcp_gpu_pipe (struct rxq_tcp_queues *tcp_queues, struct doca_flow_port *port, bool connection_based_flows)
 
doca_error_t create_icmp_gpu_pipe (struct rxq_icmp_queues *icmp_queues, struct doca_flow_port *port)
 
doca_error_t create_root_pipe (struct rxq_udp_queues *udp_queues, struct rxq_tcp_queues *tcp_queues, struct rxq_icmp_queues *icmp_queues, struct doca_flow_port *port)
 
doca_error_t enable_tcp_gpu_offload (struct doca_flow_port *port, uint16_t queue_id, struct doca_flow_pipe *gpu_rss_pipe, struct tcp_session_entry *session_entry)
 
doca_error_t disable_tcp_gpu_offload (struct doca_flow_port *port, uint16_t queue_id, struct tcp_session_entry *session_entry)
 
doca_error_t destroy_flow_queue (struct doca_flow_port *port_df, struct rxq_icmp_queues *icmp_queues, struct rxq_udp_queues *udp_queues, struct rxq_tcp_queues *tcp_queues, bool http_server, struct txq_http_queues *http_queues)
 

Variables

static uint64_t default_flow_timeout_usec
 

Function Documentation

◆ create_icmp_gpu_pipe()

doca_error_t create_icmp_gpu_pipe ( struct rxq_icmp_queues icmp_queues,
struct doca_flow_port *  port 
)

Definition at line 526 of file flow.c.

◆ create_root_pipe()

doca_error_t create_root_pipe ( struct rxq_udp_queues udp_queues,
struct rxq_tcp_queues tcp_queues,
struct rxq_icmp_queues icmp_queues,
struct doca_flow_port *  port 
)

Definition at line 632 of file flow.c.

◆ create_tcp_cpu_pipe()

doca_error_t create_tcp_cpu_pipe ( struct rxq_tcp_queues tcp_queues,
struct doca_flow_port *  port 
)

Definition at line 280 of file flow.c.

◆ create_tcp_gpu_pipe()

doca_error_t create_tcp_gpu_pipe ( struct rxq_tcp_queues tcp_queues,
struct doca_flow_port *  port,
bool  connection_based_flows 
)

Definition at line 395 of file flow.c.

◆ create_udp_pipe()

doca_error_t create_udp_pipe ( struct rxq_udp_queues udp_queues,
struct doca_flow_port *  port 
)

Definition at line 176 of file flow.c.

◆ destroy_flow_queue()

doca_error_t destroy_flow_queue ( struct doca_flow_port *  port_df,
struct rxq_icmp_queues icmp_queues,
struct rxq_udp_queues udp_queues,
struct rxq_tcp_queues tcp_queues,
bool  http_server,
struct txq_http_queues http_queues 
)

Definition at line 944 of file flow.c.

◆ disable_tcp_gpu_offload()

doca_error_t disable_tcp_gpu_offload ( struct doca_flow_port *  port,
uint16_t  queue_id,
struct tcp_session_entry session_entry 
)

Definition at line 901 of file flow.c.

◆ DOCA_LOG_REGISTER()

DOCA_LOG_REGISTER ( GPU_PACKET_PROCESSING_FLOW  )

◆ enable_tcp_gpu_offload()

doca_error_t enable_tcp_gpu_offload ( struct doca_flow_port *  port,
uint16_t  queue_id,
struct doca_flow_pipe *  gpu_rss_pipe,
struct tcp_session_entry session_entry 
)

Definition at line 841 of file flow.c.

◆ init_doca_flow()

struct doca_flow_port* init_doca_flow ( uint16_t  port_id,
uint8_t  rxq_num 
)

Definition at line 37 of file flow.c.

Variable Documentation

◆ default_flow_timeout_usec

uint64_t default_flow_timeout_usec
static

Definition at line 35 of file flow.c.