1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
6 netdev configuration over generic netlink.
17 XDP features set supported by all drivers
18 (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX)
22 The netdev supports XDP_REDIRECT
26 This feature informs if netdev implements ndo_xdp_xmit callback.
30 This feature informs if netdev supports AF_XDP in zero copy mode.
34 This feature informs if netdev supports XDP hw offloading.
38 This feature informs if netdev implements non-linear XDP buffer
39 support in the driver napi callback.
43 This feature informs if netdev implements non-linear XDP buffer
44 support in ndo_xdp_xmit callback.
52 Device is capable of exposing receive HW timestamp via bpf_xdp_metadata_rx_timestamp().
56 Device is capable of exposing receive packet hash via bpf_xdp_metadata_rx_hash().
60 Device is capable of exposing receive packet VLAN tag via bpf_xdp_metadata_rx_vlan_tag().
68 HW timestamping egress packets is supported by the driver.
72 L3 checksum HW offload is supported by the driver.
93 doc: Bitmask of enabled xdp-features.
98 doc: max fragment count supported by ZC driver
103 name: xdp-rx-metadata-features
104 doc: Bitmask of supported XDP receive metadata features.
105 See Documentation/networking/xdp-rx-metadata.rst for more details.
107 enum: xdp-rx-metadata
110 doc: Bitmask of enabled AF_XDP features.
118 doc: Unique ID of a Page Pool instance.
126 ifindex of the netdev to which the pool belongs.
127 May be reported as 0 if the page pool was allocated for a netdev
128 which got destroyed already (page pools may outlast their netdevs
129 because they wait for all memory to be returned).
136 doc: Id of NAPI using this Page Pool instance.
145 Number of outstanding references to this page pool (allocated
146 but yet to be freed pages). Allocated pages may be held in
147 socket receive queues, driver receive ring, page pool recycling
148 ring, the page pool cache, etc.
153 Amount of memory held by inflight pages.
158 Seconds in CLOCK_BOOTTIME of when Page Pool was detached by
159 the driver. Once detached Page Pool can no longer be used to
161 Page Pools wait for all the memory allocated from them to be freed
162 before truly disappearing. "Detached" Page Pools cannot be
163 "re-attached", they are just waiting to disappear.
164 Attribute is absent if Page Pool has not been detached, and
165 can still be used to allocate new memory.
175 name: page-pool-stats
177 Page pool statistics, see docs for struct page_pool_stats
178 for information about individual statistics.
182 doc: Page pool identifying information.
184 nested-attributes: page-pool-info
188 value: 8 # reserve some attr ids in case we need more metadata later
193 name: alloc-slow-high-order
208 name: recycle-cache-full
214 name: recycle-ring-full
217 name: recycle-released-refcnt
225 doc: ifindex of the netdevice to which NAPI instance belongs.
231 doc: ID of the NAPI instance.
235 doc: The associated interrupt vector number for the napi
239 doc: PID of the napi thread, if NAPI is configured to operate in
240 threaded mode. If NAPI is not in threaded mode (i.e. uses normal
241 softirq context), the attribute will be absent.
248 doc: Queue index; most queue types are indexed like a C array, with
249 indexes starting at 0 and ending at queue count - 1. Queue indexes
250 are scoped to an interface and queue type.
254 doc: ifindex of the netdevice to which the queue belongs.
260 doc: Queue type as rx, tx. Each queue type defines a separate ID space.
265 doc: ID of the NAPI instance which services this queue.
272 doc: Get / dump information about a netdev.
283 - xdp-rx-metadata-features
289 doc: Notification about device appearing.
294 doc: Notification about device disappearing.
299 doc: Notification about device configuration being changed.
305 Get / dump information about Page Pools.
306 (Only Page Pools associated with a net_device can be listed.)
307 attribute-set: page-pool
322 config-cond: page-pool
324 name: page-pool-add-ntf
325 doc: Notification about page pool appearing.
326 notify: page-pool-get
328 config-cond: page-pool
330 name: page-pool-del-ntf
331 doc: Notification about page pool disappearing.
332 notify: page-pool-get
334 config-cond: page-pool
336 name: page-pool-change-ntf
337 doc: Notification about page pool configuration being changed.
338 notify: page-pool-get
340 config-cond: page-pool
342 name: page-pool-stats-get
343 doc: Get page pool statistics.
344 attribute-set: page-pool-stats
349 reply: &pp-stats-reply
354 - alloc-slow-high-order
362 - recycle-released-refcnt
364 reply: *pp-stats-reply
365 config-cond: page-pool-stats
368 doc: Get queue information from the kernel.
369 Only configured queues will be reported (as opposed to all available
391 doc: Get information about NAPI instances configured on the system.