summaryrefslogtreecommitdiff
path: root/ring_rx.h
diff options
context:
space:
mode:
Diffstat (limited to 'ring_rx.h')
-rw-r--r--ring_rx.h36
1 files changed, 35 insertions, 1 deletions
diff --git a/ring_rx.h b/ring_rx.h
index edd0feb..1f33018 100644
--- a/ring_rx.h
+++ b/ring_rx.h
@@ -13,7 +13,7 @@
extern void ring_rx_setup(struct ring *ring, int sock, size_t size, int ifindex,
struct pollfd *poll, bool v3, bool jumbo_support,
- bool verbose);
+ bool verbose, uint32_t fanout_group, uint32_t fanout_type);
extern void destroy_rx_ring(int sock, struct ring *ring);
extern void sock_rx_net_stats(int sock, unsigned long seen);
@@ -39,4 +39,38 @@ static inline void kernel_may_pull_from_rx_block(struct block_desc *pbd)
}
#endif /* HAVE_TPACKET3 */
+/* Fanout types. */
+
+#ifndef PACKET_FANOUT_HASH
+# define PACKET_FANOUT_HASH 0
+#endif
+
+#ifndef PACKET_FANOUT_LB
+# define PACKET_FANOUT_LB 1
+#endif
+
+#ifndef PACKET_FANOUT_CPU
+# define PACKET_FANOUT_CPU 2
+#endif
+
+#ifndef PACKET_FANOUT_ROLLOVER
+# define PACKET_FANOUT_ROLLOVER 3
+#endif
+
+#ifndef PACKET_FANOUT_RND
+# define PACKET_FANOUT_RND 4
+#endif
+
+#ifndef PACKET_FANOUT_QM
+# define PACKET_FANOUT_QM 5
+#endif
+
+#ifndef PACKET_FANOUT_FLAG_ROLLOVER
+# define PACKET_FANOUT_FLAG_ROLLOVER 0x1000
+#endif
+
+#ifndef PACKET_FANOUT_FLAG_DEFRAG
+# define PACKET_FANOUT_FLAG_DEFRAG 0x8000
+#endif
+
#endif /* RX_RING_H */