DPDK  18.05.1
rte_pdump.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2016 Intel Corporation
3  */
4 
5 #ifndef _RTE_PDUMP_H_
6 #define _RTE_PDUMP_H_
7 
15 #include <stdint.h>
16 #include <rte_mempool.h>
17 #include <rte_ring.h>
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #define RTE_PDUMP_ALL_QUEUES UINT16_MAX
24 
25 enum {
26  RTE_PDUMP_FLAG_RX = 1, /* receive direction */
27  RTE_PDUMP_FLAG_TX = 2, /* transmit direction */
28  /* both receive and transmit directions */
29  RTE_PDUMP_FLAG_RXTX = (RTE_PDUMP_FLAG_RX|RTE_PDUMP_FLAG_TX)
30 };
31 
32 enum rte_pdump_socktype {
33  RTE_PDUMP_SOCKET_SERVER = 1,
34  RTE_PDUMP_SOCKET_CLIENT = 2
35 };
36 
49 int
50 rte_pdump_init(const char *path);
51 
60 int
61 rte_pdump_uninit(void);
62 
86 int
87 rte_pdump_enable(uint16_t port, uint16_t queue, uint32_t flags,
88  struct rte_ring *ring,
89  struct rte_mempool *mp,
90  void *filter);
91 
109 int
110 rte_pdump_disable(uint16_t port, uint16_t queue, uint32_t flags);
111 
136 int
137 rte_pdump_enable_by_deviceid(char *device_id, uint16_t queue,
138  uint32_t flags,
139  struct rte_ring *ring,
140  struct rte_mempool *mp,
141  void *filter);
142 
161 int
162 rte_pdump_disable_by_deviceid(char *device_id, uint16_t queue,
163  uint32_t flags);
164 
185 __rte_deprecated int
186 rte_pdump_set_socket_dir(const char *path, enum rte_pdump_socktype type);
187 
188 #ifdef __cplusplus
189 }
190 #endif
191 
192 #endif /* _RTE_PDUMP_H_ */