Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Stats: Spelling mistake: s/tx-unicast-miss/tx-unicast/
[vpp.git]
/
src
/
vnet
/
interface.h
diff --git
a/src/vnet/interface.h
b/src/vnet/interface.h
index
174e534
..
c32311c
100644
(file)
--- a/
src/vnet/interface.h
+++ b/
src/vnet/interface.h
@@
-131,7
+131,7
@@
static void __vnet_interface_function_deinit_##tag##_##f (void) \
{ \
vnet_main_t * vnm = vnet_get_main(); \
_vnet_interface_function_list_elt_t *next; \
{ \
vnet_main_t * vnm = vnet_get_main(); \
_vnet_interface_function_list_elt_t *next; \
- if (vnm->tag##_functions[p]->fp ==
(void *) &f)
\
+ if (vnm->tag##_functions[p]->fp ==
f)
\
{ \
vnm->tag##_functions[p] = \
vnm->tag##_functions[p]->next_interface_function; \
{ \
vnm->tag##_functions[p] = \
vnm->tag##_functions[p]->next_interface_function; \
@@
-140,7
+140,7
@@
static void __vnet_interface_function_deinit_##tag##_##f (void) \
next = vnm->tag##_functions[p]; \
while (next->next_interface_function) \
{ \
next = vnm->tag##_functions[p]; \
while (next->next_interface_function) \
{ \
- if (next->next_interface_function->fp ==
(void *) &f)
\
+ if (next->next_interface_function->fp ==
f)
\
{ \
next->next_interface_function = \
next->next_interface_function->next_interface_function; \
{ \
next->next_interface_function = \
next->next_interface_function->next_interface_function; \
@@
-302,9
+302,6
@@
CLIB_MARCH_SFX (devclass##_tx_fn_multiarch_register) (void) \
} \
uword CLIB_CPU_OPTIMIZED CLIB_MARCH_SFX (devclass##_tx_fn)
} \
uword CLIB_CPU_OPTIMIZED CLIB_MARCH_SFX (devclass##_tx_fn)
-/* FIXME to be removed */
-#define VLIB_DEVICE_TX_FUNCTION_MULTIARCH(dev, fn)
-
/**
* Link Type: A description of the protocol of packets on the link.
* On an ethernet link this maps directly into the ethertype. On a GRE tunnel
/**
* Link Type: A description of the protocol of packets on the link.
* On an ethernet link this maps directly into the ethertype. On a GRE tunnel
@@
-475,6
+472,9
@@
typedef enum vnet_hw_interface_flags_t_
/* tx checksum offload */
VNET_HW_INTERFACE_FLAG_SUPPORTS_TX_L4_CKSUM_OFFLOAD = (1 << 17),
/* tx checksum offload */
VNET_HW_INTERFACE_FLAG_SUPPORTS_TX_L4_CKSUM_OFFLOAD = (1 << 17),
+
+ /* gso */
+ VNET_HW_INTERFACE_FLAG_SUPPORTS_GSO = (1 << 18),
} vnet_hw_interface_flags_t;
#define VNET_HW_INTERFACE_FLAG_DUPLEX_SHIFT 1
} vnet_hw_interface_flags_t;
#define VNET_HW_INTERFACE_FLAG_DUPLEX_SHIFT 1
@@
-761,7
+761,7
@@
typedef enum
_(RX_MULTICAST, rx-multicast, if) \
_(RX_BROADCAST, rx-broadcast, if) \
_(TX, tx, if) \
_(RX_MULTICAST, rx-multicast, if) \
_(RX_BROADCAST, rx-broadcast, if) \
_(TX, tx, if) \
- _(TX_UNICAST, tx-unicast
-miss, if)
\
+ _(TX_UNICAST, tx-unicast
, if)
\
_(TX_MULTICAST, tx-multicast, if) \
_(TX_BROADCAST, tx-broadcast, if)
_(TX_MULTICAST, tx-multicast, if) \
_(TX_BROADCAST, tx-broadcast, if)
@@
-789,6
+789,12
@@
typedef struct
u32 tx_node_index;
} vnet_hw_interface_nodes_t;
u32 tx_node_index;
} vnet_hw_interface_nodes_t;
+typedef struct
+{
+ u32 *split_buffers;
+ u32 padding[14];
+} vnet_interface_per_thread_data_t;
+
typedef struct
{
/* Hardware interfaces. */
typedef struct
{
/* Hardware interfaces. */
@@
-827,6
+833,12
@@
typedef struct
u32 pcap_pkts_to_capture;
uword *pcap_drop_filter_hash;
u32 pcap_pkts_to_capture;
uword *pcap_drop_filter_hash;
+ /* per-thread data */
+ vnet_interface_per_thread_data_t *per_thread_data;
+
+ /* enable GSO processing in packet path if this count is > 0 */
+ u32 gso_interface_count;
+
/* feature_arc_index */
u8 output_feature_arc_index;
} vnet_interface_main_t;
/* feature_arc_index */
u8 output_feature_arc_index;
} vnet_interface_main_t;