From 6930bbef3b671ae21f74007f9e59efb9b236b93f Mon Sep 17 00:00:00 2001 From: Danielle Ratson Date: Mon, 22 Jun 2020 14:23:21 +0000 Subject: sys/linux: Add port and sb devlink syscalls Add support for set of devlink port and sb interface syscalls. Signed-off-by: Danielle Ratson --- sys/linux/socket_netlink_generic_devlink.txt | 78 ++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) (limited to 'sys/linux/socket_netlink_generic_devlink.txt') diff --git a/sys/linux/socket_netlink_generic_devlink.txt b/sys/linux/socket_netlink_generic_devlink.txt index 0224eb181..27d7746ce 100644 --- a/sys/linux/socket_netlink_generic_devlink.txt +++ b/sys/linux/socket_netlink_generic_devlink.txt @@ -18,10 +18,21 @@ sendmsg$DEVLINK_CMD_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLIN sendmsg$DEVLINK_CMD_RELOAD(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_RELOAD, devlink_reload_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_PORT_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_PORT_GET, devlink_port_get_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_PORT_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_PORT_SET, devlink_port_set_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_PORT_SPLIT(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_PORT_SPLIT, devlink_port_split_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_PORT_UNSPLIT(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_PORT_UNSPLIT, devlink_port_unsplit_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_TRAP_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_TRAP_GET, devlink_trap_get_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_TRAP_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_TRAP_SET, devlink_trap_set_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_TRAP_GROUP_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_TRAP_GROUP_GET, devlink_trap_group_get_policy]], f flags[send_flags]) sendmsg$DEVLINK_CMD_TRAP_GROUP_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_TRAP_GROUP_SET, devlink_trap_group_set_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_GET, devlink_sb_get_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_POOL_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_POOL_GET, devlink_sb_pool_get_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_POOL_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_POOL_SET, devlink_sb_pool_set_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_PORT_POOL_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_PORT_POOL_GET, devlink_sb_port_pool_get_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_PORT_POOL_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_PORT_POOL_SET, devlink_sb_port_pool_set_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_TC_POOL_BIND_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_TC_POOL_BIND_GET, devlink_sb_tc_pool_bind_get_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_TC_POOL_BIND_SET(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_TC_POOL_BIND_SET, devlink_sb_tc_pool_bind_set_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_OCC_SNAPSHOT(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_OCC_SNAPSHOT, devlink_sb_occ_snapshot_policy]], f flags[send_flags]) +sendmsg$DEVLINK_CMD_SB_OCC_MAX_CLEAR(fd sock_nl_generic, msg ptr[in, msghdr_nl_devlink[DEVLINK_CMD_SB_OCC_MAX_CLEAR, devlink_sb_occ_max_clear_policy]], f flags[send_flags]) devlink_devname { prefix stringnoz["netdevsim"] @@ -71,6 +82,15 @@ devlink_port_set_policy { DEVLINK_ATTR_PORT_TYPE nlattr[DEVLINK_ATTR_PORT_TYPE, int16[DEVLINK_PORT_TYPE_NOTSET:DEVLINK_PORT_TYPE_IB]] } [packed, align[4]] +devlink_port_split_policy { + port_handle devlink_port_handle + DEVLINK_ATTR_PORT_SPLIT_COUNT nlattr[DEVLINK_ATTR_PORT_SPLIT_COUNT, int32[0:8]] +} [packed, align[4]] + +devlink_port_unsplit_policy { + port_handle devlink_port_handle +} [packed, align[4]] + devlink_trap_get_policy { dev_handle devlink_handle DEVLINK_ATTR_TRAP_NAME nlattr[DEVLINK_ATTR_TRAP_NAME, string["source_mac_is_multicast"]] @@ -92,3 +112,61 @@ devlink_trap_group_set_policy { DEVLINK_ATTR_TRAP_GROUP_NAME nlattr[DEVLINK_ATTR_TRAP_GROUP_NAME, string["l2_drops"]] DEVLINK_ATTR_TRAP_ACTION nlattr[DEVLINK_ATTR_TRAP_ACTION, int8[DEVLINK_TRAP_ACTION_DROP:DEVLINK_TRAP_ACTION_TRAP]] } [packed, align[4]] + +devlink_sb_get_policy { + handle devlink_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] +} [packed, align[4]] + +devlink_sb_pool_get_policy { + handle devlink_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_POOL_INDEX nlattr[DEVLINK_ATTR_SB_POOL_INDEX, int16] +} [packed, align[4]] + +devlink_sb_pool_set_policy { + handle devlink_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_POOL_INDEX nlattr[DEVLINK_ATTR_SB_POOL_INDEX, int16] + DEVLINK_ATTR_SB_POOL_SIZE nlattr[DEVLINK_ATTR_SB_POOL_SIZE, int32] + DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE nlattr[DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE, int8[DEVLINK_SB_THRESHOLD_TYPE_STATIC:DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC]] +} [packed, align[4]] + +devlink_sb_port_pool_get_policy { + port_handle devlink_port_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_POOL_INDEX nlattr[DEVLINK_ATTR_SB_POOL_INDEX, int16] +} [packed, align[4]] + +devlink_sb_port_pool_set_policy { + port_handle devlink_port_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_POOL_INDEX nlattr[DEVLINK_ATTR_SB_POOL_INDEX, int16] + DEVLINK_ATTR_SB_THRESHOLD nlattr[DEVLINK_ATTR_SB_THRESHOLD, int32] +} [packed, align[4]] + +devlink_sb_tc_pool_bind_get_policy { + port_handle devlink_port_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_TC_INDEX nlattr[DEVLINK_ATTR_SB_TC_INDEX, int16] + DEVLINK_ATTR_SB_POOL_TYPE nlattr[DEVLINK_ATTR_SB_POOL_TYPE, int8[DEVLINK_SB_POOL_TYPE_INGRESS:DEVLINK_SB_POOL_TYPE_EGRESS]] +} [packed, align[4]] + +devlink_sb_tc_pool_bind_set_policy { + port_handle devlink_port_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] + DEVLINK_ATTR_SB_TC_INDEX nlattr[DEVLINK_ATTR_SB_TC_INDEX, int16] + DEVLINK_ATTR_SB_POOL_TYPE nlattr[DEVLINK_ATTR_SB_POOL_TYPE, int8[DEVLINK_SB_POOL_TYPE_INGRESS:DEVLINK_SB_POOL_TYPE_EGRESS]] + DEVLINK_ATTR_SB_POOL_INDEX nlattr[DEVLINK_ATTR_SB_POOL_INDEX, int16] + DEVLINK_ATTR_SB_THRESHOLD nlattr[DEVLINK_ATTR_SB_INDEX, int32] +} [packed, align[4]] + +devlink_sb_occ_snapshot_policy { + handle devlink_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] +} [packed, align[4]] + +devlink_sb_occ_max_clear_policy { + handle devlink_handle + DEVLINK_ATTR_SB_INDEX nlattr[DEVLINK_ATTR_SB_INDEX, int32] +} [packed, align[4]] -- cgit mrf-deployment