include/uapi/linux/devlink.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/devlink.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/devlink.h- Extension
.h- Size
- 24354 bytes
- Lines
- 767
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
Dependency Surface
linux/const.h
Detected Declarations
enum devlink_commandenum devlink_port_typeenum devlink_sb_pool_typeenum devlink_sb_threshold_typeenum devlink_eswitch_modeenum devlink_eswitch_inline_modeenum devlink_eswitch_encap_modeenum devlink_port_flavourenum devlink_rate_typeenum devlink_param_cmodeenum devlink_param_fw_load_policy_valueenum devlink_param_reset_dev_on_drv_probe_valueenum devlink_flash_overwriteenum devlink_attr_selftest_idenum devlink_selftest_statusenum devlink_attr_selftest_resultenum devlink_trap_actionenum devlink_trap_typeenum devlink_reload_actionenum devlink_reload_limitenum devlink_linecard_stateenum devlink_var_attr_typeenum devlink_attrenum devlink_rate_tc_attrenum devlink_dpipe_field_mapping_typeenum devlink_dpipe_match_typeenum devlink_dpipe_action_typeenum devlink_dpipe_field_ethernet_idenum devlink_dpipe_field_ipv4_idenum devlink_dpipe_field_ipv6_idenum devlink_dpipe_header_idenum devlink_resource_unitenum devlink_resource_scopeenum devlink_port_fn_attr_capenum devlink_port_function_attrenum devlink_port_fn_stateenum devlink_port_fn_opstate
Annotated Snippet
#ifndef _UAPI_LINUX_DEVLINK_H_
#define _UAPI_LINUX_DEVLINK_H_
#include <linux/const.h>
#define DEVLINK_GENL_NAME "devlink"
#define DEVLINK_GENL_VERSION 0x1
#define DEVLINK_GENL_MCGRP_CONFIG_NAME "config"
#define DEVLINK_INDEX_BUS_NAME "devlink_index"
enum devlink_command {
/* don't change the order or add anything between, this is ABI! */
DEVLINK_CMD_UNSPEC,
DEVLINK_CMD_GET, /* can dump */
DEVLINK_CMD_SET,
DEVLINK_CMD_NEW,
DEVLINK_CMD_DEL,
DEVLINK_CMD_PORT_GET, /* can dump */
DEVLINK_CMD_PORT_SET,
DEVLINK_CMD_PORT_NEW,
DEVLINK_CMD_PORT_DEL,
DEVLINK_CMD_PORT_SPLIT,
DEVLINK_CMD_PORT_UNSPLIT,
DEVLINK_CMD_SB_GET, /* can dump */
DEVLINK_CMD_SB_SET,
DEVLINK_CMD_SB_NEW,
DEVLINK_CMD_SB_DEL,
DEVLINK_CMD_SB_POOL_GET, /* can dump */
DEVLINK_CMD_SB_POOL_SET,
DEVLINK_CMD_SB_POOL_NEW,
DEVLINK_CMD_SB_POOL_DEL,
DEVLINK_CMD_SB_PORT_POOL_GET, /* can dump */
DEVLINK_CMD_SB_PORT_POOL_SET,
DEVLINK_CMD_SB_PORT_POOL_NEW,
DEVLINK_CMD_SB_PORT_POOL_DEL,
DEVLINK_CMD_SB_TC_POOL_BIND_GET, /* can dump */
DEVLINK_CMD_SB_TC_POOL_BIND_SET,
DEVLINK_CMD_SB_TC_POOL_BIND_NEW,
DEVLINK_CMD_SB_TC_POOL_BIND_DEL,
/* Shared buffer occupancy monitoring commands */
DEVLINK_CMD_SB_OCC_SNAPSHOT,
DEVLINK_CMD_SB_OCC_MAX_CLEAR,
DEVLINK_CMD_ESWITCH_GET,
#define DEVLINK_CMD_ESWITCH_MODE_GET /* obsolete, never use this! */ \
DEVLINK_CMD_ESWITCH_GET
DEVLINK_CMD_ESWITCH_SET,
#define DEVLINK_CMD_ESWITCH_MODE_SET /* obsolete, never use this! */ \
DEVLINK_CMD_ESWITCH_SET
DEVLINK_CMD_DPIPE_TABLE_GET,
DEVLINK_CMD_DPIPE_ENTRIES_GET,
DEVLINK_CMD_DPIPE_HEADERS_GET,
DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET,
DEVLINK_CMD_RESOURCE_SET,
DEVLINK_CMD_RESOURCE_DUMP,
/* Hot driver reload, makes configuration changes take place. The
* devlink instance is not released during the process.
*/
DEVLINK_CMD_RELOAD,
DEVLINK_CMD_PARAM_GET, /* can dump */
DEVLINK_CMD_PARAM_SET,
DEVLINK_CMD_PARAM_NEW,
DEVLINK_CMD_PARAM_DEL,
DEVLINK_CMD_REGION_GET,
DEVLINK_CMD_REGION_SET,
DEVLINK_CMD_REGION_NEW,
DEVLINK_CMD_REGION_DEL,
DEVLINK_CMD_REGION_READ,
DEVLINK_CMD_PORT_PARAM_GET, /* can dump */
DEVLINK_CMD_PORT_PARAM_SET,
DEVLINK_CMD_PORT_PARAM_NEW,
DEVLINK_CMD_PORT_PARAM_DEL,
DEVLINK_CMD_INFO_GET, /* can dump */
Annotation
- Immediate include surface: `linux/const.h`.
- Detected declarations: `enum devlink_command`, `enum devlink_port_type`, `enum devlink_sb_pool_type`, `enum devlink_sb_threshold_type`, `enum devlink_eswitch_mode`, `enum devlink_eswitch_inline_mode`, `enum devlink_eswitch_encap_mode`, `enum devlink_port_flavour`, `enum devlink_rate_type`, `enum devlink_param_cmode`.
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.