unix: add devlink Linux generic netlink API constants

For more information on devlink, see: https://lwn.net/Articles/674867/.

Change-Id: I68815c94160864f4a3d2bb78b2e5d06949d27acf
Reviewed-on: https://go-review.googlesource.com/c/sys/+/203878
Run-TryBot: Matt Layher <mdlayher@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
Matt Layher
2019-10-28 16:43:58 +00:00
parent b67d8b46d2
commit 195ce5e7f9
28 changed files with 1889 additions and 0 deletions
+132
View File
@@ -83,6 +83,7 @@ struct termios2 {
#include <linux/capability.h>
#include <linux/cgroupstats.h>
#include <linux/cryptouser.h>
#include <linux/devlink.h>
#include <linux/errqueue.h>
#include <linux/fanotify.h>
#include <linux/filter.h>
@@ -2098,3 +2099,134 @@ const (
SYSLOG_ACTION_SIZE_UNREAD = 9
SYSLOG_ACTION_SIZE_BUFFER = 10
)
// Devlink generic netlink API, generated using:
// perl -nlE '/^\s*(DEVLINK_\w+)/ && say "$1 = C.$1"' devlink.h
const (
DEVLINK_CMD_UNSPEC = C.DEVLINK_CMD_UNSPEC
DEVLINK_CMD_GET = C.DEVLINK_CMD_GET
DEVLINK_CMD_SET = C.DEVLINK_CMD_SET
DEVLINK_CMD_NEW = C.DEVLINK_CMD_NEW
DEVLINK_CMD_DEL = C.DEVLINK_CMD_DEL
DEVLINK_CMD_PORT_GET = C.DEVLINK_CMD_PORT_GET
DEVLINK_CMD_PORT_SET = C.DEVLINK_CMD_PORT_SET
DEVLINK_CMD_PORT_NEW = C.DEVLINK_CMD_PORT_NEW
DEVLINK_CMD_PORT_DEL = C.DEVLINK_CMD_PORT_DEL
DEVLINK_CMD_PORT_SPLIT = C.DEVLINK_CMD_PORT_SPLIT
DEVLINK_CMD_PORT_UNSPLIT = C.DEVLINK_CMD_PORT_UNSPLIT
DEVLINK_CMD_SB_GET = C.DEVLINK_CMD_SB_GET
DEVLINK_CMD_SB_SET = C.DEVLINK_CMD_SB_SET
DEVLINK_CMD_SB_NEW = C.DEVLINK_CMD_SB_NEW
DEVLINK_CMD_SB_DEL = C.DEVLINK_CMD_SB_DEL
DEVLINK_CMD_SB_POOL_GET = C.DEVLINK_CMD_SB_POOL_GET
DEVLINK_CMD_SB_POOL_SET = C.DEVLINK_CMD_SB_POOL_SET
DEVLINK_CMD_SB_POOL_NEW = C.DEVLINK_CMD_SB_POOL_NEW
DEVLINK_CMD_SB_POOL_DEL = C.DEVLINK_CMD_SB_POOL_DEL
DEVLINK_CMD_SB_PORT_POOL_GET = C.DEVLINK_CMD_SB_PORT_POOL_GET
DEVLINK_CMD_SB_PORT_POOL_SET = C.DEVLINK_CMD_SB_PORT_POOL_SET
DEVLINK_CMD_SB_PORT_POOL_NEW = C.DEVLINK_CMD_SB_PORT_POOL_NEW
DEVLINK_CMD_SB_PORT_POOL_DEL = C.DEVLINK_CMD_SB_PORT_POOL_DEL
DEVLINK_CMD_SB_TC_POOL_BIND_GET = C.DEVLINK_CMD_SB_TC_POOL_BIND_GET
DEVLINK_CMD_SB_TC_POOL_BIND_SET = C.DEVLINK_CMD_SB_TC_POOL_BIND_SET
DEVLINK_CMD_SB_TC_POOL_BIND_NEW = C.DEVLINK_CMD_SB_TC_POOL_BIND_NEW
DEVLINK_CMD_SB_TC_POOL_BIND_DEL = C.DEVLINK_CMD_SB_TC_POOL_BIND_DEL
DEVLINK_CMD_SB_OCC_SNAPSHOT = C.DEVLINK_CMD_SB_OCC_SNAPSHOT
DEVLINK_CMD_SB_OCC_MAX_CLEAR = C.DEVLINK_CMD_SB_OCC_MAX_CLEAR
DEVLINK_CMD_ESWITCH_GET = C.DEVLINK_CMD_ESWITCH_GET
DEVLINK_CMD_ESWITCH_SET = C.DEVLINK_CMD_ESWITCH_SET
DEVLINK_CMD_DPIPE_TABLE_GET = C.DEVLINK_CMD_DPIPE_TABLE_GET
DEVLINK_CMD_DPIPE_ENTRIES_GET = C.DEVLINK_CMD_DPIPE_ENTRIES_GET
DEVLINK_CMD_DPIPE_HEADERS_GET = C.DEVLINK_CMD_DPIPE_HEADERS_GET
DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = C.DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET
DEVLINK_CMD_MAX = C.DEVLINK_CMD_MAX
DEVLINK_PORT_TYPE_NOTSET = C.DEVLINK_PORT_TYPE_NOTSET
DEVLINK_PORT_TYPE_AUTO = C.DEVLINK_PORT_TYPE_AUTO
DEVLINK_PORT_TYPE_ETH = C.DEVLINK_PORT_TYPE_ETH
DEVLINK_PORT_TYPE_IB = C.DEVLINK_PORT_TYPE_IB
DEVLINK_SB_POOL_TYPE_INGRESS = C.DEVLINK_SB_POOL_TYPE_INGRESS
DEVLINK_SB_POOL_TYPE_EGRESS = C.DEVLINK_SB_POOL_TYPE_EGRESS
DEVLINK_SB_THRESHOLD_TYPE_STATIC = C.DEVLINK_SB_THRESHOLD_TYPE_STATIC
DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = C.DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC
DEVLINK_ESWITCH_MODE_LEGACY = C.DEVLINK_ESWITCH_MODE_LEGACY
DEVLINK_ESWITCH_MODE_SWITCHDEV = C.DEVLINK_ESWITCH_MODE_SWITCHDEV
DEVLINK_ESWITCH_INLINE_MODE_NONE = C.DEVLINK_ESWITCH_INLINE_MODE_NONE
DEVLINK_ESWITCH_INLINE_MODE_LINK = C.DEVLINK_ESWITCH_INLINE_MODE_LINK
DEVLINK_ESWITCH_INLINE_MODE_NETWORK = C.DEVLINK_ESWITCH_INLINE_MODE_NETWORK
DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = C.DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT
DEVLINK_ESWITCH_ENCAP_MODE_NONE = C.DEVLINK_ESWITCH_ENCAP_MODE_NONE
DEVLINK_ESWITCH_ENCAP_MODE_BASIC = C.DEVLINK_ESWITCH_ENCAP_MODE_BASIC
DEVLINK_ATTR_UNSPEC = C.DEVLINK_ATTR_UNSPEC
DEVLINK_ATTR_BUS_NAME = C.DEVLINK_ATTR_BUS_NAME
DEVLINK_ATTR_DEV_NAME = C.DEVLINK_ATTR_DEV_NAME
DEVLINK_ATTR_PORT_INDEX = C.DEVLINK_ATTR_PORT_INDEX
DEVLINK_ATTR_PORT_TYPE = C.DEVLINK_ATTR_PORT_TYPE
DEVLINK_ATTR_PORT_DESIRED_TYPE = C.DEVLINK_ATTR_PORT_DESIRED_TYPE
DEVLINK_ATTR_PORT_NETDEV_IFINDEX = C.DEVLINK_ATTR_PORT_NETDEV_IFINDEX
DEVLINK_ATTR_PORT_NETDEV_NAME = C.DEVLINK_ATTR_PORT_NETDEV_NAME
DEVLINK_ATTR_PORT_IBDEV_NAME = C.DEVLINK_ATTR_PORT_IBDEV_NAME
DEVLINK_ATTR_PORT_SPLIT_COUNT = C.DEVLINK_ATTR_PORT_SPLIT_COUNT
DEVLINK_ATTR_PORT_SPLIT_GROUP = C.DEVLINK_ATTR_PORT_SPLIT_GROUP
DEVLINK_ATTR_SB_INDEX = C.DEVLINK_ATTR_SB_INDEX
DEVLINK_ATTR_SB_SIZE = C.DEVLINK_ATTR_SB_SIZE
DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = C.DEVLINK_ATTR_SB_INGRESS_POOL_COUNT
DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = C.DEVLINK_ATTR_SB_EGRESS_POOL_COUNT
DEVLINK_ATTR_SB_INGRESS_TC_COUNT = C.DEVLINK_ATTR_SB_INGRESS_TC_COUNT
DEVLINK_ATTR_SB_EGRESS_TC_COUNT = C.DEVLINK_ATTR_SB_EGRESS_TC_COUNT
DEVLINK_ATTR_SB_POOL_INDEX = C.DEVLINK_ATTR_SB_POOL_INDEX
DEVLINK_ATTR_SB_POOL_TYPE = C.DEVLINK_ATTR_SB_POOL_TYPE
DEVLINK_ATTR_SB_POOL_SIZE = C.DEVLINK_ATTR_SB_POOL_SIZE
DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = C.DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE
DEVLINK_ATTR_SB_THRESHOLD = C.DEVLINK_ATTR_SB_THRESHOLD
DEVLINK_ATTR_SB_TC_INDEX = C.DEVLINK_ATTR_SB_TC_INDEX
DEVLINK_ATTR_SB_OCC_CUR = C.DEVLINK_ATTR_SB_OCC_CUR
DEVLINK_ATTR_SB_OCC_MAX = C.DEVLINK_ATTR_SB_OCC_MAX
DEVLINK_ATTR_ESWITCH_MODE = C.DEVLINK_ATTR_ESWITCH_MODE
DEVLINK_ATTR_ESWITCH_INLINE_MODE = C.DEVLINK_ATTR_ESWITCH_INLINE_MODE
DEVLINK_ATTR_DPIPE_TABLES = C.DEVLINK_ATTR_DPIPE_TABLES
DEVLINK_ATTR_DPIPE_TABLE = C.DEVLINK_ATTR_DPIPE_TABLE
DEVLINK_ATTR_DPIPE_TABLE_NAME = C.DEVLINK_ATTR_DPIPE_TABLE_NAME
DEVLINK_ATTR_DPIPE_TABLE_SIZE = C.DEVLINK_ATTR_DPIPE_TABLE_SIZE
DEVLINK_ATTR_DPIPE_TABLE_MATCHES = C.DEVLINK_ATTR_DPIPE_TABLE_MATCHES
DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = C.DEVLINK_ATTR_DPIPE_TABLE_ACTIONS
DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = C.DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED
DEVLINK_ATTR_DPIPE_ENTRIES = C.DEVLINK_ATTR_DPIPE_ENTRIES
DEVLINK_ATTR_DPIPE_ENTRY = C.DEVLINK_ATTR_DPIPE_ENTRY
DEVLINK_ATTR_DPIPE_ENTRY_INDEX = C.DEVLINK_ATTR_DPIPE_ENTRY_INDEX
DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = C.DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES
DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = C.DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES
DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = C.DEVLINK_ATTR_DPIPE_ENTRY_COUNTER
DEVLINK_ATTR_DPIPE_MATCH = C.DEVLINK_ATTR_DPIPE_MATCH
DEVLINK_ATTR_DPIPE_MATCH_VALUE = C.DEVLINK_ATTR_DPIPE_MATCH_VALUE
DEVLINK_ATTR_DPIPE_MATCH_TYPE = C.DEVLINK_ATTR_DPIPE_MATCH_TYPE
DEVLINK_ATTR_DPIPE_ACTION = C.DEVLINK_ATTR_DPIPE_ACTION
DEVLINK_ATTR_DPIPE_ACTION_VALUE = C.DEVLINK_ATTR_DPIPE_ACTION_VALUE
DEVLINK_ATTR_DPIPE_ACTION_TYPE = C.DEVLINK_ATTR_DPIPE_ACTION_TYPE
DEVLINK_ATTR_DPIPE_VALUE = C.DEVLINK_ATTR_DPIPE_VALUE
DEVLINK_ATTR_DPIPE_VALUE_MASK = C.DEVLINK_ATTR_DPIPE_VALUE_MASK
DEVLINK_ATTR_DPIPE_VALUE_MAPPING = C.DEVLINK_ATTR_DPIPE_VALUE_MAPPING
DEVLINK_ATTR_DPIPE_HEADERS = C.DEVLINK_ATTR_DPIPE_HEADERS
DEVLINK_ATTR_DPIPE_HEADER = C.DEVLINK_ATTR_DPIPE_HEADER
DEVLINK_ATTR_DPIPE_HEADER_NAME = C.DEVLINK_ATTR_DPIPE_HEADER_NAME
DEVLINK_ATTR_DPIPE_HEADER_ID = C.DEVLINK_ATTR_DPIPE_HEADER_ID
DEVLINK_ATTR_DPIPE_HEADER_FIELDS = C.DEVLINK_ATTR_DPIPE_HEADER_FIELDS
DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = C.DEVLINK_ATTR_DPIPE_HEADER_GLOBAL
DEVLINK_ATTR_DPIPE_HEADER_INDEX = C.DEVLINK_ATTR_DPIPE_HEADER_INDEX
DEVLINK_ATTR_DPIPE_FIELD = C.DEVLINK_ATTR_DPIPE_FIELD
DEVLINK_ATTR_DPIPE_FIELD_NAME = C.DEVLINK_ATTR_DPIPE_FIELD_NAME
DEVLINK_ATTR_DPIPE_FIELD_ID = C.DEVLINK_ATTR_DPIPE_FIELD_ID
DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = C.DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH
DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = C.DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE
DEVLINK_ATTR_PAD = C.DEVLINK_ATTR_PAD
DEVLINK_ATTR_ESWITCH_ENCAP_MODE = C.DEVLINK_ATTR_ESWITCH_ENCAP_MODE
DEVLINK_ATTR_MAX = C.DEVLINK_ATTR_MAX
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = C.DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE
DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = C.DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX
DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = C.DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT
DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = C.DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY
DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = C.DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC
DEVLINK_DPIPE_FIELD_IPV4_DST_IP = C.DEVLINK_DPIPE_FIELD_IPV4_DST_IP
DEVLINK_DPIPE_FIELD_IPV6_DST_IP = C.DEVLINK_DPIPE_FIELD_IPV6_DST_IP
DEVLINK_DPIPE_HEADER_ETHERNET = C.DEVLINK_DPIPE_HEADER_ETHERNET
DEVLINK_DPIPE_HEADER_IPV4 = C.DEVLINK_DPIPE_HEADER_IPV4
DEVLINK_DPIPE_HEADER_IPV6 = C.DEVLINK_DPIPE_HEADER_IPV6
)