devlink_sb        187 net/core/devlink.c static u16 devlink_sb_pool_count(struct devlink_sb *devlink_sb)
devlink_sb        189 net/core/devlink.c 	return devlink_sb->ingress_pools_count + devlink_sb->egress_pools_count;
devlink_sb        192 net/core/devlink.c static struct devlink_sb *devlink_sb_get_by_index(struct devlink *devlink,
devlink_sb        195 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb        197 net/core/devlink.c 	list_for_each_entry(devlink_sb, &devlink->sb_list, list) {
devlink_sb        198 net/core/devlink.c 		if (devlink_sb->index == sb_index)
devlink_sb        199 net/core/devlink.c 			return devlink_sb;
devlink_sb        210 net/core/devlink.c static struct devlink_sb *devlink_sb_get_from_attrs(struct devlink *devlink,
devlink_sb        215 net/core/devlink.c 		struct devlink_sb *devlink_sb;
devlink_sb        217 net/core/devlink.c 		devlink_sb = devlink_sb_get_by_index(devlink, sb_index);
devlink_sb        218 net/core/devlink.c 		if (!devlink_sb)
devlink_sb        220 net/core/devlink.c 		return devlink_sb;
devlink_sb        225 net/core/devlink.c static struct devlink_sb *devlink_sb_get_from_info(struct devlink *devlink,
devlink_sb        231 net/core/devlink.c static int devlink_sb_pool_index_get_from_attrs(struct devlink_sb *devlink_sb,
devlink_sb        241 net/core/devlink.c 	if (val >= devlink_sb_pool_count(devlink_sb))
devlink_sb        247 net/core/devlink.c static int devlink_sb_pool_index_get_from_info(struct devlink_sb *devlink_sb,
devlink_sb        251 net/core/devlink.c 	return devlink_sb_pool_index_get_from_attrs(devlink_sb, info->attrs,
devlink_sb        304 net/core/devlink.c devlink_sb_tc_index_get_from_attrs(struct devlink_sb *devlink_sb,
devlink_sb        316 net/core/devlink.c 	    val >= devlink_sb->ingress_tc_count)
devlink_sb        319 net/core/devlink.c 	    val >= devlink_sb->egress_tc_count)
devlink_sb        326 net/core/devlink.c devlink_sb_tc_index_get_from_info(struct devlink_sb *devlink_sb,
devlink_sb        331 net/core/devlink.c 	return devlink_sb_tc_index_get_from_attrs(devlink_sb, info->attrs,
devlink_sb        414 net/core/devlink.c 		struct devlink_sb *devlink_sb;
devlink_sb        416 net/core/devlink.c 		devlink_sb = devlink_sb_get_from_info(devlink, info);
devlink_sb        417 net/core/devlink.c 		if (IS_ERR(devlink_sb)) {
devlink_sb        418 net/core/devlink.c 			err = PTR_ERR(devlink_sb);
devlink_sb        421 net/core/devlink.c 		info->user_ptr[1] = devlink_sb;
devlink_sb        831 net/core/devlink.c 			      struct devlink_sb *devlink_sb,
devlink_sb        843 net/core/devlink.c 	if (nla_put_u32(msg, DEVLINK_ATTR_SB_INDEX, devlink_sb->index))
devlink_sb        845 net/core/devlink.c 	if (nla_put_u32(msg, DEVLINK_ATTR_SB_SIZE, devlink_sb->size))
devlink_sb        848 net/core/devlink.c 			devlink_sb->ingress_pools_count))
devlink_sb        851 net/core/devlink.c 			devlink_sb->egress_pools_count))
devlink_sb        854 net/core/devlink.c 			devlink_sb->ingress_tc_count))
devlink_sb        857 net/core/devlink.c 			devlink_sb->egress_tc_count))
devlink_sb        872 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb        880 net/core/devlink.c 	err = devlink_nl_sb_fill(msg, devlink, devlink_sb,
devlink_sb        895 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb        905 net/core/devlink.c 		list_for_each_entry(devlink_sb, &devlink->sb_list, list) {
devlink_sb        910 net/core/devlink.c 			err = devlink_nl_sb_fill(msg, devlink, devlink_sb,
devlink_sb        931 net/core/devlink.c 				   struct devlink_sb *devlink_sb,
devlink_sb        939 net/core/devlink.c 	err = devlink->ops->sb_pool_get(devlink, devlink_sb->index,
devlink_sb        950 net/core/devlink.c 	if (nla_put_u32(msg, DEVLINK_ATTR_SB_INDEX, devlink_sb->index))
devlink_sb        977 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb        982 net/core/devlink.c 	err = devlink_sb_pool_index_get_from_info(devlink_sb, info,
devlink_sb        994 net/core/devlink.c 	err = devlink_nl_sb_pool_fill(msg, devlink, devlink_sb, pool_index,
devlink_sb       1007 net/core/devlink.c 				struct devlink_sb *devlink_sb,
devlink_sb       1010 net/core/devlink.c 	u16 pool_count = devlink_sb_pool_count(devlink_sb);
devlink_sb       1020 net/core/devlink.c 					      devlink_sb,
devlink_sb       1035 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb       1046 net/core/devlink.c 		list_for_each_entry(devlink_sb, &devlink->sb_list, list) {
devlink_sb       1048 net/core/devlink.c 						   devlink_sb,
devlink_sb       1083 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1089 net/core/devlink.c 	err = devlink_sb_pool_index_get_from_info(devlink_sb, info,
devlink_sb       1102 net/core/devlink.c 	return devlink_sb_pool_set(devlink, devlink_sb->index,
devlink_sb       1110 net/core/devlink.c 					struct devlink_sb *devlink_sb,
devlink_sb       1120 net/core/devlink.c 	err = ops->sb_port_pool_get(devlink_port, devlink_sb->index,
devlink_sb       1133 net/core/devlink.c 	if (nla_put_u32(msg, DEVLINK_ATTR_SB_INDEX, devlink_sb->index))
devlink_sb       1144 net/core/devlink.c 		err = ops->sb_occ_port_pool_get(devlink_port, devlink_sb->index,
devlink_sb       1169 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1174 net/core/devlink.c 	err = devlink_sb_pool_index_get_from_info(devlink_sb, info,
devlink_sb       1187 net/core/devlink.c 					   devlink_sb, pool_index,
devlink_sb       1200 net/core/devlink.c 				     struct devlink_sb *devlink_sb,
devlink_sb       1204 net/core/devlink.c 	u16 pool_count = devlink_sb_pool_count(devlink_sb);
devlink_sb       1216 net/core/devlink.c 							   devlink_sb,
devlink_sb       1233 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb       1244 net/core/devlink.c 		list_for_each_entry(devlink_sb, &devlink->sb_list, list) {
devlink_sb       1246 net/core/devlink.c 							devlink, devlink_sb,
devlink_sb       1281 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1286 net/core/devlink.c 	err = devlink_sb_pool_index_get_from_info(devlink_sb, info,
devlink_sb       1295 net/core/devlink.c 	return devlink_sb_port_pool_set(devlink_port, devlink_sb->index,
devlink_sb       1302 net/core/devlink.c 				struct devlink_sb *devlink_sb, u16 tc_index,
devlink_sb       1313 net/core/devlink.c 	err = ops->sb_tc_pool_bind_get(devlink_port, devlink_sb->index,
devlink_sb       1327 net/core/devlink.c 	if (nla_put_u32(msg, DEVLINK_ATTR_SB_INDEX, devlink_sb->index))
devlink_sb       1343 net/core/devlink.c 						   devlink_sb->index,
devlink_sb       1369 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1379 net/core/devlink.c 	err = devlink_sb_tc_index_get_from_info(devlink_sb, info,
devlink_sb       1392 net/core/devlink.c 					      devlink_sb, tc_index, pool_type,
devlink_sb       1407 net/core/devlink.c 					struct devlink_sb *devlink_sb,
devlink_sb       1416 net/core/devlink.c 		     tc_index < devlink_sb->ingress_tc_count; tc_index++) {
devlink_sb       1423 net/core/devlink.c 							      devlink_sb,
devlink_sb       1434 net/core/devlink.c 		     tc_index < devlink_sb->egress_tc_count; tc_index++) {
devlink_sb       1441 net/core/devlink.c 							      devlink_sb,
devlink_sb       1460 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb       1472 net/core/devlink.c 		list_for_each_entry(devlink_sb, &devlink->sb_list, list) {
devlink_sb       1475 net/core/devlink.c 							   devlink_sb,
devlink_sb       1512 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1523 net/core/devlink.c 	err = devlink_sb_tc_index_get_from_info(devlink_sb, info,
devlink_sb       1528 net/core/devlink.c 	err = devlink_sb_pool_index_get_from_info(devlink_sb, info,
devlink_sb       1537 net/core/devlink.c 	return devlink_sb_tc_pool_bind_set(devlink_port, devlink_sb->index,
devlink_sb       1546 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1550 net/core/devlink.c 		return ops->sb_occ_snapshot(devlink, devlink_sb->index);
devlink_sb       1558 net/core/devlink.c 	struct devlink_sb *devlink_sb = info->user_ptr[1];
devlink_sb       1562 net/core/devlink.c 		return ops->sb_occ_max_clear(devlink, devlink_sb->index);
devlink_sb       6616 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb       6625 net/core/devlink.c 	devlink_sb = kzalloc(sizeof(*devlink_sb), GFP_KERNEL);
devlink_sb       6626 net/core/devlink.c 	if (!devlink_sb) {
devlink_sb       6630 net/core/devlink.c 	devlink_sb->index = sb_index;
devlink_sb       6631 net/core/devlink.c 	devlink_sb->size = size;
devlink_sb       6632 net/core/devlink.c 	devlink_sb->ingress_pools_count = ingress_pools_count;
devlink_sb       6633 net/core/devlink.c 	devlink_sb->egress_pools_count = egress_pools_count;
devlink_sb       6634 net/core/devlink.c 	devlink_sb->ingress_tc_count = ingress_tc_count;
devlink_sb       6635 net/core/devlink.c 	devlink_sb->egress_tc_count = egress_tc_count;
devlink_sb       6636 net/core/devlink.c 	list_add_tail(&devlink_sb->list, &devlink->sb_list);
devlink_sb       6645 net/core/devlink.c 	struct devlink_sb *devlink_sb;
devlink_sb       6648 net/core/devlink.c 	devlink_sb = devlink_sb_get_by_index(devlink, sb_index);
devlink_sb       6649 net/core/devlink.c 	WARN_ON(!devlink_sb);
devlink_sb       6650 net/core/devlink.c 	list_del(&devlink_sb->list);
devlink_sb       6652 net/core/devlink.c 	kfree(devlink_sb);