diff options
author | Chenmin Sun <chenmin.sun@intel.com> | 2020-11-20 05:06:41 +0800 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2021-03-26 08:30:54 +0000 |
commit | 245fb34b33e062d9831da7e834c3b1fd9cf4c2b4 (patch) | |
tree | abf2e1e3509b99481c274e1b00ca71ca62531701 /src/plugins/avf/avf.h | |
parent | ffe9a5489499467dfb5a2ee0fed14e397f5f825c (diff) |
avf: handle flow id in data path
Type: improvement
Signed-off-by: Chenmin Sun <chenmin.sun@intel.com>
Change-Id: I24fa52fee88dabad8f0b84446f796ee055819617
Diffstat (limited to 'src/plugins/avf/avf.h')
-rw-r--r-- | src/plugins/avf/avf.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/avf/avf.h b/src/plugins/avf/avf.h index 6c09084eb8c..51a81c65e29 100644 --- a/src/plugins/avf/avf.h +++ b/src/plugins/avf/avf.h @@ -47,6 +47,7 @@ #define AVF_RXD_STATUS(x) (1ULL << x) #define AVF_RXD_STATUS_DD AVF_RXD_STATUS(0) #define AVF_RXD_STATUS_EOP AVF_RXD_STATUS(1) +#define AVF_RXD_STATUS_FLM AVF_RXD_STATUS (11) #define AVF_RXD_ERROR_SHIFT 19 #define AVF_RXD_PTYPE_SHIFT 30 #define AVF_RXD_LEN_SHIFT 38 @@ -134,6 +135,10 @@ typedef volatile struct u64 rsv2:3; u64 ptype:8; u64 length:26; + + u64 rsv3 : 64; + u32 flex_lo; + u32 fdid_flex_hi; }; u64 qword[4]; #ifdef CLIB_HAVE_VEC256 @@ -298,7 +303,9 @@ typedef struct { CLIB_CACHE_LINE_ALIGN_MARK (cacheline0); vlib_buffer_t *bufs[AVF_RX_VECTOR_SZ]; + u16 next[AVF_RX_VECTOR_SZ]; u64 qw1s[AVF_RX_VECTOR_SZ]; + u32 flow_ids[AVF_RX_VECTOR_SZ]; avf_rx_tail_t tails[AVF_RX_VECTOR_SZ]; vlib_buffer_t buffer_template; } avf_per_thread_data_t; @@ -436,6 +443,7 @@ typedef struct u16 qid; u16 next_index; u32 hw_if_index; + u32 flow_id; u64 qw1s[AVF_RX_MAX_DESC_IN_CHAIN]; } avf_input_trace_t; |