~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/netdev.h

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
  2 /* Do not edit directly, auto-generated from: */
  3 /*      Documentation/netlink/specs/netdev.yaml */
  4 /* YNL-GEN uapi header */
  5 
  6 #ifndef _UAPI_LINUX_NETDEV_H
  7 #define _UAPI_LINUX_NETDEV_H
  8 
  9 #define NETDEV_FAMILY_NAME      "netdev"
 10 #define NETDEV_FAMILY_VERSION   1
 11 
 12 /**
 13  * enum netdev_xdp_act
 14  * @NETDEV_XDP_ACT_BASIC: XDP features set supported by all drivers
 15  *   (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX)
 16  * @NETDEV_XDP_ACT_REDIRECT: The netdev supports XDP_REDIRECT
 17  * @NETDEV_XDP_ACT_NDO_XMIT: This feature informs if netdev implements
 18  *   ndo_xdp_xmit callback.
 19  * @NETDEV_XDP_ACT_XSK_ZEROCOPY: This feature informs if netdev supports AF_XDP
 20  *   in zero copy mode.
 21  * @NETDEV_XDP_ACT_HW_OFFLOAD: This feature informs if netdev supports XDP hw
 22  *   offloading.
 23  * @NETDEV_XDP_ACT_RX_SG: This feature informs if netdev implements non-linear
 24  *   XDP buffer support in the driver napi callback.
 25  * @NETDEV_XDP_ACT_NDO_XMIT_SG: This feature informs if netdev implements
 26  *   non-linear XDP buffer support in ndo_xdp_xmit callback.
 27  */
 28 enum netdev_xdp_act {
 29         NETDEV_XDP_ACT_BASIC = 1,
 30         NETDEV_XDP_ACT_REDIRECT = 2,
 31         NETDEV_XDP_ACT_NDO_XMIT = 4,
 32         NETDEV_XDP_ACT_XSK_ZEROCOPY = 8,
 33         NETDEV_XDP_ACT_HW_OFFLOAD = 16,
 34         NETDEV_XDP_ACT_RX_SG = 32,
 35         NETDEV_XDP_ACT_NDO_XMIT_SG = 64,
 36 
 37         /* private: */
 38         NETDEV_XDP_ACT_MASK = 127,
 39 };
 40 
 41 /**
 42  * enum netdev_xdp_rx_metadata
 43  * @NETDEV_XDP_RX_METADATA_TIMESTAMP: Device is capable of exposing receive HW
 44  *   timestamp via bpf_xdp_metadata_rx_timestamp().
 45  * @NETDEV_XDP_RX_METADATA_HASH: Device is capable of exposing receive packet
 46  *   hash via bpf_xdp_metadata_rx_hash().
 47  * @NETDEV_XDP_RX_METADATA_VLAN_TAG: Device is capable of exposing receive
 48  *   packet VLAN tag via bpf_xdp_metadata_rx_vlan_tag().
 49  */
 50 enum netdev_xdp_rx_metadata {
 51         NETDEV_XDP_RX_METADATA_TIMESTAMP = 1,
 52         NETDEV_XDP_RX_METADATA_HASH = 2,
 53         NETDEV_XDP_RX_METADATA_VLAN_TAG = 4,
 54 };
 55 
 56 /**
 57  * enum netdev_xsk_flags
 58  * @NETDEV_XSK_FLAGS_TX_TIMESTAMP: HW timestamping egress packets is supported
 59  *   by the driver.
 60  * @NETDEV_XSK_FLAGS_TX_CHECKSUM: L3 checksum HW offload is supported by the
 61  *   driver.
 62  */
 63 enum netdev_xsk_flags {
 64         NETDEV_XSK_FLAGS_TX_TIMESTAMP = 1,
 65         NETDEV_XSK_FLAGS_TX_CHECKSUM = 2,
 66 };
 67 
 68 enum netdev_queue_type {
 69         NETDEV_QUEUE_TYPE_RX,
 70         NETDEV_QUEUE_TYPE_TX,
 71 };
 72 
 73 enum netdev_qstats_scope {
 74         NETDEV_QSTATS_SCOPE_QUEUE = 1,
 75 };
 76 
 77 enum {
 78         NETDEV_A_DEV_IFINDEX = 1,
 79         NETDEV_A_DEV_PAD,
 80         NETDEV_A_DEV_XDP_FEATURES,
 81         NETDEV_A_DEV_XDP_ZC_MAX_SEGS,
 82         NETDEV_A_DEV_XDP_RX_METADATA_FEATURES,
 83         NETDEV_A_DEV_XSK_FEATURES,
 84 
 85         __NETDEV_A_DEV_MAX,
 86         NETDEV_A_DEV_MAX = (__NETDEV_A_DEV_MAX - 1)
 87 };
 88 
 89 enum {
 90         NETDEV_A_PAGE_POOL_ID = 1,
 91         NETDEV_A_PAGE_POOL_IFINDEX,
 92         NETDEV_A_PAGE_POOL_NAPI_ID,
 93         NETDEV_A_PAGE_POOL_INFLIGHT,
 94         NETDEV_A_PAGE_POOL_INFLIGHT_MEM,
 95         NETDEV_A_PAGE_POOL_DETACH_TIME,
 96 
 97         __NETDEV_A_PAGE_POOL_MAX,
 98         NETDEV_A_PAGE_POOL_MAX = (__NETDEV_A_PAGE_POOL_MAX - 1)
 99 };
100 
101 enum {
102         NETDEV_A_PAGE_POOL_STATS_INFO = 1,
103         NETDEV_A_PAGE_POOL_STATS_ALLOC_FAST = 8,
104         NETDEV_A_PAGE_POOL_STATS_ALLOC_SLOW,
105         NETDEV_A_PAGE_POOL_STATS_ALLOC_SLOW_HIGH_ORDER,
106         NETDEV_A_PAGE_POOL_STATS_ALLOC_EMPTY,
107         NETDEV_A_PAGE_POOL_STATS_ALLOC_REFILL,
108         NETDEV_A_PAGE_POOL_STATS_ALLOC_WAIVE,
109         NETDEV_A_PAGE_POOL_STATS_RECYCLE_CACHED,
110         NETDEV_A_PAGE_POOL_STATS_RECYCLE_CACHE_FULL,
111         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RING,
112         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RING_FULL,
113         NETDEV_A_PAGE_POOL_STATS_RECYCLE_RELEASED_REFCNT,
114 
115         __NETDEV_A_PAGE_POOL_STATS_MAX,
116         NETDEV_A_PAGE_POOL_STATS_MAX = (__NETDEV_A_PAGE_POOL_STATS_MAX - 1)
117 };
118 
119 enum {
120         NETDEV_A_NAPI_IFINDEX = 1,
121         NETDEV_A_NAPI_ID,
122         NETDEV_A_NAPI_IRQ,
123         NETDEV_A_NAPI_PID,
124 
125         __NETDEV_A_NAPI_MAX,
126         NETDEV_A_NAPI_MAX = (__NETDEV_A_NAPI_MAX - 1)
127 };
128 
129 enum {
130         NETDEV_A_QUEUE_ID = 1,
131         NETDEV_A_QUEUE_IFINDEX,
132         NETDEV_A_QUEUE_TYPE,
133         NETDEV_A_QUEUE_NAPI_ID,
134 
135         __NETDEV_A_QUEUE_MAX,
136         NETDEV_A_QUEUE_MAX = (__NETDEV_A_QUEUE_MAX - 1)
137 };
138 
139 enum {
140         NETDEV_A_QSTATS_IFINDEX = 1,
141         NETDEV_A_QSTATS_QUEUE_TYPE,
142         NETDEV_A_QSTATS_QUEUE_ID,
143         NETDEV_A_QSTATS_SCOPE,
144         NETDEV_A_QSTATS_RX_PACKETS = 8,
145         NETDEV_A_QSTATS_RX_BYTES,
146         NETDEV_A_QSTATS_TX_PACKETS,
147         NETDEV_A_QSTATS_TX_BYTES,
148         NETDEV_A_QSTATS_RX_ALLOC_FAIL,
149         NETDEV_A_QSTATS_RX_HW_DROPS,
150         NETDEV_A_QSTATS_RX_HW_DROP_OVERRUNS,
151         NETDEV_A_QSTATS_RX_CSUM_COMPLETE,
152         NETDEV_A_QSTATS_RX_CSUM_UNNECESSARY,
153         NETDEV_A_QSTATS_RX_CSUM_NONE,
154         NETDEV_A_QSTATS_RX_CSUM_BAD,
155         NETDEV_A_QSTATS_RX_HW_GRO_PACKETS,
156         NETDEV_A_QSTATS_RX_HW_GRO_BYTES,
157         NETDEV_A_QSTATS_RX_HW_GRO_WIRE_PACKETS,
158         NETDEV_A_QSTATS_RX_HW_GRO_WIRE_BYTES,
159         NETDEV_A_QSTATS_RX_HW_DROP_RATELIMITS,
160         NETDEV_A_QSTATS_TX_HW_DROPS,
161         NETDEV_A_QSTATS_TX_HW_DROP_ERRORS,
162         NETDEV_A_QSTATS_TX_CSUM_NONE,
163         NETDEV_A_QSTATS_TX_NEEDS_CSUM,
164         NETDEV_A_QSTATS_TX_HW_GSO_PACKETS,
165         NETDEV_A_QSTATS_TX_HW_GSO_BYTES,
166         NETDEV_A_QSTATS_TX_HW_GSO_WIRE_PACKETS,
167         NETDEV_A_QSTATS_TX_HW_GSO_WIRE_BYTES,
168         NETDEV_A_QSTATS_TX_HW_DROP_RATELIMITS,
169         NETDEV_A_QSTATS_TX_STOP,
170         NETDEV_A_QSTATS_TX_WAKE,
171 
172         __NETDEV_A_QSTATS_MAX,
173         NETDEV_A_QSTATS_MAX = (__NETDEV_A_QSTATS_MAX - 1)
174 };
175 
176 enum {
177         NETDEV_CMD_DEV_GET = 1,
178         NETDEV_CMD_DEV_ADD_NTF,
179         NETDEV_CMD_DEV_DEL_NTF,
180         NETDEV_CMD_DEV_CHANGE_NTF,
181         NETDEV_CMD_PAGE_POOL_GET,
182         NETDEV_CMD_PAGE_POOL_ADD_NTF,
183         NETDEV_CMD_PAGE_POOL_DEL_NTF,
184         NETDEV_CMD_PAGE_POOL_CHANGE_NTF,
185         NETDEV_CMD_PAGE_POOL_STATS_GET,
186         NETDEV_CMD_QUEUE_GET,
187         NETDEV_CMD_NAPI_GET,
188         NETDEV_CMD_QSTATS_GET,
189 
190         __NETDEV_CMD_MAX,
191         NETDEV_CMD_MAX = (__NETDEV_CMD_MAX - 1)
192 };
193 
194 #define NETDEV_MCGRP_MGMT       "mgmt"
195 #define NETDEV_MCGRP_PAGE_POOL  "page-pool"
196 
197 #endif /* _UAPI_LINUX_NETDEV_H */
198 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php