• Home
  • Raw
  • Download

Lines Matching refs:err

312 	int err;  in rtnl_register()  local
314 err = rtnl_register_internal(NULL, protocol, msgtype, doit, dumpit, in rtnl_register()
316 if (err) in rtnl_register()
441 int err; in rtnl_link_register() local
449 err = __rtnl_link_register(ops); in rtnl_link_register()
451 return err; in rtnl_link_register()
667 int err; in rtnl_link_slave_info_fill() local
681 err = ops->fill_slave_info(skb, master_dev, dev); in rtnl_link_slave_info_fill()
682 if (err < 0) in rtnl_link_slave_info_fill()
690 return err; in rtnl_link_slave_info_fill()
698 int err; in rtnl_link_info_fill() local
705 err = ops->fill_xstats(skb, dev); in rtnl_link_info_fill()
706 if (err < 0) in rtnl_link_info_fill()
707 return err; in rtnl_link_info_fill()
713 err = ops->fill_info(skb, dev); in rtnl_link_info_fill()
714 if (err < 0) in rtnl_link_info_fill()
722 return err; in rtnl_link_info_fill()
728 int err = -EMSGSIZE; in rtnl_link_fill() local
734 err = rtnl_link_info_fill(skb, dev); in rtnl_link_fill()
735 if (err < 0) in rtnl_link_fill()
738 err = rtnl_link_slave_info_fill(skb, dev); in rtnl_link_fill()
739 if (err < 0) in rtnl_link_fill()
748 return err; in rtnl_link_fill()
1122 int err; in rtnl_vf_ports_fill() local
1134 err = dev->netdev_ops->ndo_get_vf_port(dev, vf, skb); in rtnl_vf_ports_fill()
1135 if (err == -EMSGSIZE) in rtnl_vf_ports_fill()
1137 if (err) { in rtnl_vf_ports_fill()
1156 int err; in rtnl_port_self_fill() local
1162 err = dev->netdev_ops->ndo_get_vf_port(dev, PORT_SELF_VF, skb); in rtnl_port_self_fill()
1163 if (err) { in rtnl_port_self_fill()
1165 return (err == -EMSGSIZE) ? err : 0; in rtnl_port_self_fill()
1176 int err; in rtnl_port_fill() local
1182 err = rtnl_port_self_fill(skb, dev); in rtnl_port_fill()
1183 if (err) in rtnl_port_fill()
1184 return err; in rtnl_port_fill()
1187 err = rtnl_vf_ports_fill(skb, dev); in rtnl_port_fill()
1188 if (err) in rtnl_port_fill()
1189 return err; in rtnl_port_fill()
1197 int err; in rtnl_phys_port_id_fill() local
1200 err = dev_get_phys_port_id(dev, &ppid); in rtnl_phys_port_id_fill()
1201 if (err) { in rtnl_phys_port_id_fill()
1202 if (err == -EOPNOTSUPP) in rtnl_phys_port_id_fill()
1204 return err; in rtnl_phys_port_id_fill()
1216 int err; in rtnl_phys_port_name_fill() local
1218 err = dev_get_phys_port_name(dev, name, sizeof(name)); in rtnl_phys_port_name_fill()
1219 if (err) { in rtnl_phys_port_name_fill()
1220 if (err == -EOPNOTSUPP) in rtnl_phys_port_name_fill()
1222 return err; in rtnl_phys_port_name_fill()
1234 int err; in rtnl_phys_switch_id_fill() local
1236 err = dev_get_port_parent_id(dev, &ppid, false); in rtnl_phys_switch_id_fill()
1237 if (err) { in rtnl_phys_switch_id_fill()
1238 if (err == -EOPNOTSUPP) in rtnl_phys_switch_id_fill()
1240 return err; in rtnl_phys_switch_id_fill()
1496 int err; in rtnl_xdp_report_one() local
1503 err = nla_put_u32(skb, attr, curr_id); in rtnl_xdp_report_one()
1504 if (err) in rtnl_xdp_report_one()
1505 return err; in rtnl_xdp_report_one()
1519 int err; in rtnl_xdp_fill() local
1528 err = rtnl_xdp_report_one(skb, dev, &prog_id, &mode, XDP_ATTACHED_SKB, in rtnl_xdp_fill()
1530 if (err) in rtnl_xdp_fill()
1532 err = rtnl_xdp_report_one(skb, dev, &prog_id, &mode, XDP_ATTACHED_DRV, in rtnl_xdp_fill()
1534 if (err) in rtnl_xdp_fill()
1536 err = rtnl_xdp_report_one(skb, dev, &prog_id, &mode, XDP_ATTACHED_HW, in rtnl_xdp_fill()
1538 if (err) in rtnl_xdp_fill()
1541 err = nla_put_u8(skb, IFLA_XDP_ATTACHED, mode); in rtnl_xdp_fill()
1542 if (err) in rtnl_xdp_fill()
1546 err = nla_put_u32(skb, IFLA_XDP_PROG_ID, prog_id); in rtnl_xdp_fill()
1547 if (err) in rtnl_xdp_fill()
1556 return err; in rtnl_xdp_fill()
1660 int err; in rtnl_fill_link_af() local
1669 err = af_ops->fill_link_af(skb, dev, ext_filter_mask); in rtnl_fill_link_af()
1676 if (err == -ENODATA) in rtnl_fill_link_af()
1678 else if (err < 0) in rtnl_fill_link_af()
2184 int err, i; in rtnl_dump_ifinfo() local
2189 err = rtnl_valid_dump_ifinfo_req(nlh, cb->strict_check, tb, extack); in rtnl_dump_ifinfo()
2190 if (err < 0) { in rtnl_dump_ifinfo()
2192 return err; in rtnl_dump_ifinfo()
2240 err = rtnl_fill_ifinfo(skb, dev, net, in rtnl_dump_ifinfo()
2247 if (err < 0) { in rtnl_dump_ifinfo()
2258 err = skb->len; in rtnl_dump_ifinfo()
2267 return err; in rtnl_dump_ifinfo()
2440 int rem, err; in validate_linkmsg() local
2453 err = af_ops->validate_link_af(dev, af, extack); in validate_linkmsg()
2454 if (err < 0) in validate_linkmsg()
2455 return err; in validate_linkmsg()
2482 int err = -EINVAL; in do_setvfinfo() local
2489 err = -EOPNOTSUPP; in do_setvfinfo()
2491 err = ops->ndo_set_vf_mac(dev, ivm->vf, in do_setvfinfo()
2493 if (err < 0) in do_setvfinfo()
2494 return err; in do_setvfinfo()
2502 err = -EOPNOTSUPP; in do_setvfinfo()
2504 err = ops->ndo_set_vf_vlan(dev, ivv->vf, ivv->vlan, in do_setvfinfo()
2507 if (err < 0) in do_setvfinfo()
2508 return err; in do_setvfinfo()
2516 err = -EOPNOTSUPP; in do_setvfinfo()
2518 return err; in do_setvfinfo()
2536 err = ops->ndo_set_vf_vlan(dev, ivvl[0]->vf, ivvl[0]->vlan, in do_setvfinfo()
2538 if (err < 0) in do_setvfinfo()
2539 return err; in do_setvfinfo()
2548 err = -EOPNOTSUPP; in do_setvfinfo()
2550 err = ops->ndo_get_vf_config(dev, ivt->vf, &ivf); in do_setvfinfo()
2551 if (err < 0) in do_setvfinfo()
2552 return err; in do_setvfinfo()
2554 err = rtnl_set_vf_rate(dev, ivt->vf, in do_setvfinfo()
2556 if (err < 0) in do_setvfinfo()
2557 return err; in do_setvfinfo()
2566 err = rtnl_set_vf_rate(dev, ivt->vf, in do_setvfinfo()
2568 if (err < 0) in do_setvfinfo()
2569 return err; in do_setvfinfo()
2577 err = -EOPNOTSUPP; in do_setvfinfo()
2579 err = ops->ndo_set_vf_spoofchk(dev, ivs->vf, in do_setvfinfo()
2581 if (err < 0) in do_setvfinfo()
2582 return err; in do_setvfinfo()
2590 err = -EOPNOTSUPP; in do_setvfinfo()
2592 err = ops->ndo_set_vf_link_state(dev, ivl->vf, in do_setvfinfo()
2594 if (err < 0) in do_setvfinfo()
2595 return err; in do_setvfinfo()
2601 err = -EOPNOTSUPP; in do_setvfinfo()
2606 err = ops->ndo_set_vf_rss_query_en(dev, ivrssq_en->vf, in do_setvfinfo()
2608 if (err < 0) in do_setvfinfo()
2609 return err; in do_setvfinfo()
2617 err = -EOPNOTSUPP; in do_setvfinfo()
2619 err = ops->ndo_set_vf_trust(dev, ivt->vf, ivt->setting); in do_setvfinfo()
2620 if (err < 0) in do_setvfinfo()
2621 return err; in do_setvfinfo()
2645 return err; in do_setvfinfo()
2653 int err; in do_set_master() local
2660 err = ops->ndo_del_slave(upper_dev, dev); in do_set_master()
2661 if (err) in do_set_master()
2662 return err; in do_set_master()
2674 err = ops->ndo_add_slave(upper_dev, dev, extack); in do_set_master()
2675 if (err) in do_set_master()
2676 return err; in do_set_master()
2698 int err; in do_set_proto_down() local
2706 err = nla_parse_nested_deprecated(pdreason, in do_set_proto_down()
2711 if (err < 0) in do_set_proto_down()
2712 return err; in do_set_proto_down()
2735 err = dev_change_proto_down(dev, in do_set_proto_down()
2737 if (err) in do_set_proto_down()
2738 return err; in do_set_proto_down()
2754 int err; in do_setlink() local
2769 err = PTR_ERR(net); in do_setlink()
2778 err = __dev_change_net_namespace(dev, net, pat, new_ifindex); in do_setlink()
2780 if (err) in do_setlink()
2790 err = -EOPNOTSUPP; in do_setlink()
2795 err = -ENODEV; in do_setlink()
2807 err = ops->ndo_set_config(dev, &k_map); in do_setlink()
2808 if (err < 0) in do_setlink()
2822 err = -ENOMEM; in do_setlink()
2828 err = dev_set_mac_address_user(dev, sa, extack); in do_setlink()
2830 if (err) in do_setlink()
2836 err = dev_set_mtu_ext(dev, nla_get_u32(tb[IFLA_MTU]), extack); in do_setlink()
2837 if (err < 0) in do_setlink()
2853 err = dev_change_name(dev, ifname); in do_setlink()
2854 if (err < 0) in do_setlink()
2860 err = dev_set_alias(dev, nla_data(tb[IFLA_IFALIAS]), in do_setlink()
2862 if (err < 0) in do_setlink()
2873 err = dev_change_flags(dev, rtnl_dev_combine_flags(dev, ifm), in do_setlink()
2875 if (err < 0) in do_setlink()
2880 err = do_set_master(dev, nla_get_u32(tb[IFLA_MASTER]), extack); in do_setlink()
2881 if (err) in do_setlink()
2887 err = dev_change_carrier(dev, nla_get_u8(tb[IFLA_CARRIER])); in do_setlink()
2888 if (err) in do_setlink()
2896 err = dev_change_tx_queue_len(dev, value); in do_setlink()
2897 if (err) in do_setlink()
2968 err = -EINVAL; in do_setlink()
2971 err = nla_parse_nested_deprecated(vfinfo, IFLA_VF_MAX, in do_setlink()
2975 if (err < 0) in do_setlink()
2977 err = do_setvfinfo(dev, vfinfo); in do_setlink()
2978 if (err < 0) in do_setlink()
2983 err = 0; in do_setlink()
2991 err = -EOPNOTSUPP; in do_setlink()
2998 err = -EINVAL; in do_setlink()
3001 err = nla_parse_nested_deprecated(port, IFLA_PORT_MAX, in do_setlink()
3005 if (err < 0) in do_setlink()
3008 err = -EOPNOTSUPP; in do_setlink()
3012 err = ops->ndo_set_vf_port(dev, vf, port); in do_setlink()
3013 if (err < 0) in do_setlink()
3018 err = 0; in do_setlink()
3023 err = nla_parse_nested_deprecated(port, IFLA_PORT_MAX, in do_setlink()
3026 if (err < 0) in do_setlink()
3029 err = -EOPNOTSUPP; in do_setlink()
3031 err = ops->ndo_set_vf_port(dev, PORT_SELF_VF, port); in do_setlink()
3032 if (err < 0) in do_setlink()
3046 err = af_ops->set_link_af(dev, af, extack); in do_setlink()
3047 if (err < 0) in do_setlink()
3053 err = 0; in do_setlink()
3056 err = do_set_proto_down(dev, tb[IFLA_PROTO_DOWN], in do_setlink()
3058 if (err) in do_setlink()
3067 err = nla_parse_nested_deprecated(xdp, IFLA_XDP_MAX, in do_setlink()
3070 if (err < 0) in do_setlink()
3074 err = -EINVAL; in do_setlink()
3081 err = -EINVAL; in do_setlink()
3085 err = -EINVAL; in do_setlink()
3095 err = -EINVAL; in do_setlink()
3102 err = dev_change_xdp_fd(dev, extack, in do_setlink()
3106 if (err) in do_setlink()
3117 if (err < 0) in do_setlink()
3122 return err; in do_setlink()
3146 int err; in rtnl_setlink() local
3149 err = nlmsg_parse_deprecated(nlh, sizeof(*ifm), tb, IFLA_MAX, in rtnl_setlink()
3151 if (err < 0) in rtnl_setlink()
3154 err = rtnl_ensure_unique_netns(tb, extack, false); in rtnl_setlink()
3155 if (err < 0) in rtnl_setlink()
3158 err = -EINVAL; in rtnl_setlink()
3168 err = -ENODEV; in rtnl_setlink()
3172 err = validate_linkmsg(dev, tb, extack); in rtnl_setlink()
3173 if (err < 0) in rtnl_setlink()
3176 err = do_setlink(skb, dev, ifm, extack, tb, 0); in rtnl_setlink()
3178 return err; in rtnl_setlink()
3242 int err; in rtnl_dellink() local
3245 err = nlmsg_parse_deprecated(nlh, sizeof(*ifm), tb, IFLA_MAX, in rtnl_dellink()
3247 if (err < 0) in rtnl_dellink()
3248 return err; in rtnl_dellink()
3250 err = rtnl_ensure_unique_netns(tb, extack, true); in rtnl_dellink()
3251 if (err < 0) in rtnl_dellink()
3252 return err; in rtnl_dellink()
3261 err = -EINVAL; in rtnl_dellink()
3268 err = rtnl_group_dellink(tgt_net, nla_get_u32(tb[IFLA_GROUP])); in rtnl_dellink()
3274 err = -ENODEV; in rtnl_dellink()
3279 err = rtnl_delete_link(dev, portid, nlh); in rtnl_dellink()
3285 return err; in rtnl_dellink()
3292 int err; in rtnl_configure_link() local
3296 err = __dev_change_flags(dev, rtnl_dev_combine_flags(dev, ifm), in rtnl_configure_link()
3298 if (err < 0) in rtnl_configure_link()
3299 return err; in rtnl_configure_link()
3321 int err; in rtnl_create_link() local
3357 err = validate_linkmsg(dev, tb, extack); in rtnl_create_link()
3358 if (err < 0) { in rtnl_create_link()
3360 return ERR_PTR(err); in rtnl_create_link()
3370 err = dev_validate_mtu(dev, mtu, extack); in rtnl_create_link()
3371 if (err) { in rtnl_create_link()
3373 return ERR_PTR(err); in rtnl_create_link()
3415 int err; in rtnl_group_changelink() local
3419 err = validate_linkmsg(dev, tb, extack); in rtnl_group_changelink()
3420 if (err < 0) in rtnl_group_changelink()
3421 return err; in rtnl_group_changelink()
3422 err = do_setlink(skb, dev, ifm, extack, tb, 0); in rtnl_group_changelink()
3423 if (err < 0) in rtnl_group_changelink()
3424 return err; in rtnl_group_changelink()
3443 int err; in rtnl_newlink_create() local
3465 err = -EINVAL; in rtnl_newlink_create()
3468 err = -EPERM; in rtnl_newlink_create()
3478 err = PTR_ERR(dev); in rtnl_newlink_create()
3485 err = ops->newlink(link_net ? : net, dev, tb, data, extack); in rtnl_newlink_create()
3487 err = register_netdevice(dev); in rtnl_newlink_create()
3488 if (err < 0) { in rtnl_newlink_create()
3493 err = rtnl_configure_link(dev, ifm, portid, nlh); in rtnl_newlink_create()
3494 if (err < 0) in rtnl_newlink_create()
3497 err = dev_change_net_namespace(dev, dest_net, ifname); in rtnl_newlink_create()
3498 if (err < 0) in rtnl_newlink_create()
3502 err = do_set_master(dev, nla_get_u32(tb[IFLA_MASTER]), extack); in rtnl_newlink_create()
3503 if (err) in rtnl_newlink_create()
3510 return err; in rtnl_newlink_create()
3545 int err; in __rtnl_newlink() local
3550 err = nlmsg_parse_deprecated(nlh, sizeof(*ifm), tb, IFLA_MAX, in __rtnl_newlink()
3552 if (err < 0) in __rtnl_newlink()
3553 return err; in __rtnl_newlink()
3555 err = rtnl_ensure_unique_netns(tb, extack, false); in __rtnl_newlink()
3556 if (err < 0) in __rtnl_newlink()
3557 return err; in __rtnl_newlink()
3583 err = nla_parse_nested_deprecated(linkinfo, IFLA_INFO_MAX, in __rtnl_newlink()
3586 if (err < 0) in __rtnl_newlink()
3587 return err; in __rtnl_newlink()
3605 err = nla_parse_nested_deprecated(tbs->attr, ops->maxtype, in __rtnl_newlink()
3608 if (err < 0) in __rtnl_newlink()
3609 return err; in __rtnl_newlink()
3613 err = ops->validate(tb, data, extack); in __rtnl_newlink()
3614 if (err < 0) in __rtnl_newlink()
3615 return err; in __rtnl_newlink()
3626 err = nla_parse_nested_deprecated(tbs->slave_attr, in __rtnl_newlink()
3631 if (err < 0) in __rtnl_newlink()
3632 return err; in __rtnl_newlink()
3645 err = validate_linkmsg(dev, tb, extack); in __rtnl_newlink()
3646 if (err < 0) in __rtnl_newlink()
3647 return err; in __rtnl_newlink()
3654 err = ops->changelink(dev, tb, data, extack); in __rtnl_newlink()
3655 if (err < 0) in __rtnl_newlink()
3656 return err; in __rtnl_newlink()
3664 err = m_ops->slave_changelink(master_dev, dev, tb, in __rtnl_newlink()
3666 if (err < 0) in __rtnl_newlink()
3667 return err; in __rtnl_newlink()
3729 int i, err; in rtnl_valid_getlink_req() local
3747 err = nlmsg_parse_deprecated_strict(nlh, sizeof(*ifm), tb, IFLA_MAX, in rtnl_valid_getlink_req()
3749 if (err) in rtnl_valid_getlink_req()
3750 return err; in rtnl_valid_getlink_req()
3781 int err; in rtnl_getlink() local
3784 err = rtnl_valid_getlink_req(skb, nlh, tb, extack); in rtnl_getlink()
3785 if (err < 0) in rtnl_getlink()
3786 return err; in rtnl_getlink()
3788 err = rtnl_ensure_unique_netns(tb, extack, true); in rtnl_getlink()
3789 if (err < 0) in rtnl_getlink()
3790 return err; in rtnl_getlink()
3802 err = -EINVAL; in rtnl_getlink()
3811 err = -ENODEV; in rtnl_getlink()
3815 err = -ENOBUFS; in rtnl_getlink()
3820 err = rtnl_fill_ifinfo(nskb, dev, net, in rtnl_getlink()
3824 if (err < 0) { in rtnl_getlink()
3826 WARN_ON(err == -EMSGSIZE); in rtnl_getlink()
3829 err = rtnl_unicast(nskb, net, NETLINK_CB(skb).portid); in rtnl_getlink()
3834 return err; in rtnl_getlink()
3842 int err; in rtnl_alt_ifname() local
3844 err = nla_validate(attr, attr->nla_len, IFLA_MAX, ifla_policy, extack); in rtnl_alt_ifname()
3845 if (err) in rtnl_alt_ifname()
3846 return err; in rtnl_alt_ifname()
3863 err = netdev_name_node_alt_create(dev, alt_ifname); in rtnl_alt_ifname()
3864 if (!err) in rtnl_alt_ifname()
3867 err = netdev_name_node_alt_destroy(dev, alt_ifname); in rtnl_alt_ifname()
3870 err = -EINVAL; in rtnl_alt_ifname()
3874 if (!err) in rtnl_alt_ifname()
3876 return err; in rtnl_alt_ifname()
3888 int err, rem; in rtnl_linkprop() local
3890 err = nlmsg_parse(nlh, sizeof(*ifm), tb, IFLA_MAX, ifla_policy, extack); in rtnl_linkprop()
3891 if (err) in rtnl_linkprop()
3892 return err; in rtnl_linkprop()
3894 err = rtnl_ensure_unique_netns(tb, extack, true); in rtnl_linkprop()
3895 if (err) in rtnl_linkprop()
3896 return err; in rtnl_linkprop()
3915 err = rtnl_alt_ifname(cmd, dev, attr, &changed, extack); in rtnl_linkprop()
3916 if (err) in rtnl_linkprop()
3917 return err; in rtnl_linkprop()
4028 int err = -ENOBUFS; in rtmsg_ifinfo_build_skb() local
4040 err = rtnl_fill_ifinfo(skb, dev, dev_net(dev), in rtmsg_ifinfo_build_skb()
4043 if (err < 0) { in rtmsg_ifinfo_build_skb()
4045 WARN_ON(err == -EMSGSIZE); in rtmsg_ifinfo_build_skb()
4051 if (err < 0) in rtmsg_ifinfo_build_skb()
4052 rtnl_set_sk_err(net, RTNLGRP_LINK, err); in rtmsg_ifinfo_build_skb()
4143 int err = -ENOBUFS; in rtnl_fdb_notify() local
4149 err = nlmsg_populate_fdb_fill(skb, dev, addr, vid, in rtnl_fdb_notify()
4151 if (err < 0) { in rtnl_fdb_notify()
4159 rtnl_set_sk_err(net, RTNLGRP_NEIGH, err); in rtnl_fdb_notify()
4171 int err = -EINVAL; in ndo_dflt_fdb_add() local
4178 return err; in ndo_dflt_fdb_add()
4183 return err; in ndo_dflt_fdb_add()
4188 return err; in ndo_dflt_fdb_add()
4192 err = dev_uc_add_excl(dev, addr); in ndo_dflt_fdb_add()
4194 err = dev_mc_add_excl(dev, addr); in ndo_dflt_fdb_add()
4197 if (err == -EEXIST && !(flags & NLM_F_EXCL)) in ndo_dflt_fdb_add()
4198 err = 0; in ndo_dflt_fdb_add()
4200 return err; in ndo_dflt_fdb_add()
4235 int err; in rtnl_fdb_add() local
4237 err = nlmsg_parse_deprecated(nlh, sizeof(*ndm), tb, NDA_MAX, NULL, in rtnl_fdb_add()
4239 if (err < 0) in rtnl_fdb_add()
4240 return err; in rtnl_fdb_add()
4266 err = fdb_vid_parse(tb[NDA_VLAN], &vid, extack); in rtnl_fdb_add()
4267 if (err) in rtnl_fdb_add()
4268 return err; in rtnl_fdb_add()
4270 err = -EOPNOTSUPP; in rtnl_fdb_add()
4278 err = ops->ndo_fdb_add(ndm, tb, dev, addr, vid, in rtnl_fdb_add()
4280 if (err) in rtnl_fdb_add()
4289 err = dev->netdev_ops->ndo_fdb_add(ndm, tb, dev, addr, in rtnl_fdb_add()
4294 err = ndo_dflt_fdb_add(ndm, tb, dev, addr, vid, in rtnl_fdb_add()
4297 if (!err) { in rtnl_fdb_add()
4304 return err; in rtnl_fdb_add()
4315 int err = -EINVAL; in ndo_dflt_fdb_del() local
4322 return err; in ndo_dflt_fdb_del()
4326 err = dev_uc_del(dev, addr); in ndo_dflt_fdb_del()
4328 err = dev_mc_del(dev, addr); in ndo_dflt_fdb_del()
4330 return err; in ndo_dflt_fdb_del()
4351 int err; in rtnl_fdb_del() local
4358 err = nlmsg_parse_deprecated(nlh, sizeof(*ndm), tb, NDA_MAX, in rtnl_fdb_del()
4361 err = nlmsg_parse(nlh, sizeof(*ndm), tb, NDA_MAX, in rtnl_fdb_del()
4364 if (err < 0) in rtnl_fdb_del()
4365 return err; in rtnl_fdb_del()
4392 err = fdb_vid_parse(tb[NDA_VLAN], &vid, extack); in rtnl_fdb_del()
4393 if (err) in rtnl_fdb_del()
4394 return err; in rtnl_fdb_del()
4396 err = -EOPNOTSUPP; in rtnl_fdb_del()
4406 err = ops->ndo_fdb_del(ndm, tb, dev, addr, vid, extack); in rtnl_fdb_del()
4409 err = ops->ndo_fdb_del_bulk(ndm, tb, dev, vid, in rtnl_fdb_del()
4413 if (err) in rtnl_fdb_del()
4424 err = ops->ndo_fdb_del(ndm, tb, dev, addr, vid, extack); in rtnl_fdb_del()
4426 err = ndo_dflt_fdb_del(ndm, tb, dev, addr, vid); in rtnl_fdb_del()
4429 err = -EOPNOTSUPP; in rtnl_fdb_del()
4431 err = ops->ndo_fdb_del_bulk(ndm, tb, dev, vid, in rtnl_fdb_del()
4435 if (!err) { in rtnl_fdb_del()
4443 return err; in rtnl_fdb_del()
4453 int err; in nlmsg_populate_fdb() local
4463 err = nlmsg_populate_fdb_fill(skb, dev, ha->addr, 0, in nlmsg_populate_fdb()
4467 if (err < 0) in nlmsg_populate_fdb()
4468 return err; in nlmsg_populate_fdb()
4492 int err; in ndo_dflt_fdb_dump() local
4498 err = nlmsg_populate_fdb(skb, cb, dev, idx, &dev->uc); in ndo_dflt_fdb_dump()
4499 if (err) in ndo_dflt_fdb_dump()
4501 err = nlmsg_populate_fdb(skb, cb, dev, idx, &dev->mc); in ndo_dflt_fdb_dump()
4504 return err; in ndo_dflt_fdb_dump()
4514 int err, i; in valid_fdb_dump_strict() local
4528 err = nlmsg_parse_deprecated_strict(nlh, sizeof(struct ndmsg), tb, in valid_fdb_dump_strict()
4530 if (err < 0) in valid_fdb_dump_strict()
4531 return err; in valid_fdb_dump_strict()
4567 int err; in valid_fdb_dump_legacy() local
4581 err = nlmsg_parse_deprecated(nlh, sizeof(struct ifinfomsg), in valid_fdb_dump_legacy()
4584 if (err < 0) { in valid_fdb_dump_legacy()
4586 } else if (err == 0) { in valid_fdb_dump_legacy()
4609 int err = 0; in rtnl_fdb_dump() local
4613 err = valid_fdb_dump_strict(cb->nlh, &br_idx, &brport_idx, in rtnl_fdb_dump()
4616 err = valid_fdb_dump_legacy(cb->nlh, &br_idx, &brport_idx, in rtnl_fdb_dump()
4618 if (err < 0) in rtnl_fdb_dump()
4619 return err; in rtnl_fdb_dump()
4661 err = cops->ndo_fdb_dump(skb, cb, in rtnl_fdb_dump()
4664 if (err == -EMSGSIZE) in rtnl_fdb_dump()
4670 err = dev->netdev_ops->ndo_fdb_dump(skb, cb, in rtnl_fdb_dump()
4674 err = ndo_dflt_fdb_dump(skb, cb, dev, NULL, in rtnl_fdb_dump()
4676 if (err == -EMSGSIZE) in rtnl_fdb_dump()
4703 int err, i; in valid_fdb_get_strict() local
4722 err = nlmsg_parse_deprecated_strict(nlh, sizeof(struct ndmsg), tb, in valid_fdb_get_strict()
4724 if (err < 0) in valid_fdb_get_strict()
4725 return err; in valid_fdb_get_strict()
4745 err = fdb_vid_parse(tb[i], vid, extack); in valid_fdb_get_strict()
4746 if (err) in valid_fdb_get_strict()
4747 return err; in valid_fdb_get_strict()
4773 int err; in rtnl_fdb_get() local
4775 err = valid_fdb_get_strict(nlh, tb, &ndm_flags, &br_idx, in rtnl_fdb_get()
4777 if (err < 0) in rtnl_fdb_get()
4778 return err; in rtnl_fdb_get()
4844 err = ops->ndo_fdb_get(skb, tb, dev, addr, vid, in rtnl_fdb_get()
4847 if (err) in rtnl_fdb_get()
4853 return err; in rtnl_fdb_get()
4878 int err = 0; in ndo_dflt_bridge_getlink() local
4920 err = vlan_fill(skb, dev, filter_mask); in ndo_dflt_bridge_getlink()
4921 if (err) { in ndo_dflt_bridge_getlink()
4963 return err ? err : -EMSGSIZE; in ndo_dflt_bridge_getlink()
4972 int err, i; in valid_bridge_getlink_req() local
4989 err = nlmsg_parse_deprecated_strict(nlh, in valid_bridge_getlink_req()
4994 err = nlmsg_parse_deprecated(nlh, sizeof(struct ifinfomsg), in valid_bridge_getlink_req()
4998 if (err < 0) in valid_bridge_getlink_req()
4999 return err; in valid_bridge_getlink_req()
5030 int err; in rtnl_bridge_getlink() local
5032 err = valid_bridge_getlink_req(nlh, cb->strict_check, &filter_mask, in rtnl_bridge_getlink()
5034 if (err < 0 && cb->strict_check) in rtnl_bridge_getlink()
5035 return err; in rtnl_bridge_getlink()
5044 err = br_dev->netdev_ops->ndo_bridge_getlink( in rtnl_bridge_getlink()
5047 if (err < 0 && err != -EOPNOTSUPP) { in rtnl_bridge_getlink()
5059 err = ops->ndo_bridge_getlink(skb, portid, in rtnl_bridge_getlink()
5063 if (err < 0 && err != -EOPNOTSUPP) { in rtnl_bridge_getlink()
5073 err = skb->len; in rtnl_bridge_getlink()
5078 return err; in rtnl_bridge_getlink()
5100 int err = -EOPNOTSUPP; in rtnl_bridge_notify() local
5107 err = -ENOMEM; in rtnl_bridge_notify()
5111 err = dev->netdev_ops->ndo_bridge_getlink(skb, 0, 0, dev, 0, 0); in rtnl_bridge_notify()
5112 if (err < 0) in rtnl_bridge_notify()
5125 WARN_ON(err == -EMSGSIZE); in rtnl_bridge_notify()
5127 if (err) in rtnl_bridge_notify()
5128 rtnl_set_sk_err(net, RTNLGRP_LINK, err); in rtnl_bridge_notify()
5129 return err; in rtnl_bridge_notify()
5139 int rem, err = -EOPNOTSUPP; in rtnl_bridge_setlink() local
5177 err = -EOPNOTSUPP; in rtnl_bridge_setlink()
5181 err = br_dev->netdev_ops->ndo_bridge_setlink(dev, nlh, flags, in rtnl_bridge_setlink()
5183 if (err) in rtnl_bridge_setlink()
5191 err = -EOPNOTSUPP; in rtnl_bridge_setlink()
5193 err = dev->netdev_ops->ndo_bridge_setlink(dev, nlh, in rtnl_bridge_setlink()
5196 if (!err) { in rtnl_bridge_setlink()
5202 err = rtnl_bridge_notify(dev); in rtnl_bridge_setlink()
5209 return err; in rtnl_bridge_setlink()
5219 int rem, err = -EOPNOTSUPP; in rtnl_bridge_dellink() local
5254 err = -EOPNOTSUPP; in rtnl_bridge_dellink()
5258 err = br_dev->netdev_ops->ndo_bridge_dellink(dev, nlh, flags); in rtnl_bridge_dellink()
5259 if (err) in rtnl_bridge_dellink()
5267 err = -EOPNOTSUPP; in rtnl_bridge_dellink()
5269 err = dev->netdev_ops->ndo_bridge_dellink(dev, nlh, in rtnl_bridge_dellink()
5272 if (!err) { in rtnl_bridge_dellink()
5278 err = rtnl_bridge_notify(dev); in rtnl_bridge_dellink()
5285 return err; in rtnl_bridge_dellink()
5317 int err; in rtnl_offload_xstats_fill_ndo() local
5330 err = dev->netdev_ops->ndo_get_offload_stats(attr_id, dev, attr_data); in rtnl_offload_xstats_fill_ndo()
5331 if (err) in rtnl_offload_xstats_fill_ndo()
5332 return err; in rtnl_offload_xstats_fill_ndo()
5360 int err; in rtnl_offload_xstats_get_stats() local
5368 err = netdev_offload_xstats_get(dev, type, stats, &used, extack); in rtnl_offload_xstats_get_stats()
5369 if (err) in rtnl_offload_xstats_get_stats()
5370 return err; in rtnl_offload_xstats_get_stats()
5411 int err; in rtnl_offload_xstats_fill_hw_s_info() local
5413 err = rtnl_offload_xstats_get_stats(dev, t_l3, &ru_l3, NULL, extack); in rtnl_offload_xstats_fill_hw_s_info()
5414 if (err) in rtnl_offload_xstats_fill_hw_s_info()
5415 return err; in rtnl_offload_xstats_fill_hw_s_info()
5443 int err; in rtnl_offload_xstats_fill() local
5448 err = rtnl_offload_xstats_fill_ndo(dev, attr_id_cpu_hit, skb); in rtnl_offload_xstats_fill()
5449 if (!err) { in rtnl_offload_xstats_fill()
5451 } else if (err != -ENODATA) { in rtnl_offload_xstats_fill()
5453 return err; in rtnl_offload_xstats_fill()
5461 err = rtnl_offload_xstats_fill_hw_s_info(skb, dev, extack); in rtnl_offload_xstats_fill()
5462 if (err) in rtnl_offload_xstats_fill()
5463 return err; in rtnl_offload_xstats_fill()
5484 err = rtnl_offload_xstats_get_stats(dev, t_l3, NULL, in rtnl_offload_xstats_fill()
5486 if (err) in rtnl_offload_xstats_fill()
5487 return err; in rtnl_offload_xstats_fill()
5573 int err; in rtnl_fill_statsinfo() local
5595 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5611 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5615 err = ops->fill_linkxstats(skb, dev, prividx, *idxattr); in rtnl_fill_statsinfo()
5617 if (err) in rtnl_fill_statsinfo()
5636 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5640 err = ops->fill_linkxstats(skb, dev, prividx, *idxattr); in rtnl_fill_statsinfo()
5642 if (err) in rtnl_fill_statsinfo()
5657 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5661 err = rtnl_offload_xstats_fill(skb, dev, prividx, in rtnl_fill_statsinfo()
5663 if (err == -ENODATA) in rtnl_fill_statsinfo()
5668 if (err && err != -ENODATA) in rtnl_fill_statsinfo()
5679 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5692 err = -EMSGSIZE; in rtnl_fill_statsinfo()
5695 err = af_ops->fill_stats_af(skb, dev); in rtnl_fill_statsinfo()
5697 if (err == -ENODATA) { in rtnl_fill_statsinfo()
5699 } else if (err < 0) { in rtnl_fill_statsinfo()
5725 return err; in rtnl_fill_statsinfo()
5821 int err; in rtnl_stats_get_parse_filters() local
5824 err = nla_parse_nested(tb, IFLA_STATS_MAX, ifla_filters, in rtnl_stats_get_parse_filters()
5826 if (err < 0) in rtnl_stats_get_parse_filters()
5827 return err; in rtnl_stats_get_parse_filters()
5848 int err; in rtnl_stats_get_parse() local
5855 err = nlmsg_parse(nlh, sizeof(struct if_stats_msg), tb, in rtnl_stats_get_parse()
5857 if (err < 0) in rtnl_stats_get_parse()
5858 return err; in rtnl_stats_get_parse()
5861 err = rtnl_stats_get_parse_filters(tb[IFLA_STATS_GET_FILTERS], in rtnl_stats_get_parse()
5863 if (err) in rtnl_stats_get_parse()
5864 return err; in rtnl_stats_get_parse()
5909 int err; in rtnl_stats_get() local
5911 err = rtnl_valid_stats_req(nlh, netlink_strict_get_check(skb), in rtnl_stats_get()
5913 if (err) in rtnl_stats_get()
5914 return err; in rtnl_stats_get()
5930 err = rtnl_stats_get_parse(nlh, ifsm->filter_mask, &filters, extack); in rtnl_stats_get()
5931 if (err) in rtnl_stats_get()
5932 return err; in rtnl_stats_get()
5938 err = rtnl_fill_statsinfo(nskb, dev, RTM_NEWSTATS, in rtnl_stats_get()
5941 if (err < 0) { in rtnl_stats_get()
5943 WARN_ON(err == -EMSGSIZE); in rtnl_stats_get()
5946 err = rtnl_unicast(nskb, net, NETLINK_CB(skb).portid); in rtnl_stats_get()
5949 return err; in rtnl_stats_get()
5955 int h, s_h, err, s_idx, s_idxattr, s_prividx; in rtnl_stats_dump() local
5971 err = rtnl_valid_stats_req(cb->nlh, cb->strict_check, true, extack); in rtnl_stats_dump()
5972 if (err) in rtnl_stats_dump()
5973 return err; in rtnl_stats_dump()
5981 err = rtnl_stats_get_parse(cb->nlh, ifsm->filter_mask, &filters, in rtnl_stats_dump()
5983 if (err) in rtnl_stats_dump()
5984 return err; in rtnl_stats_dump()
5992 err = rtnl_fill_statsinfo(skb, dev, RTM_NEWSTATS, in rtnl_stats_dump()
6001 WARN_ON((err == -EMSGSIZE) && (skb->len == 0)); in rtnl_stats_dump()
6003 if (err < 0) in rtnl_stats_dump()
6027 int err = -ENOBUFS; in rtnl_offload_xstats_notify() local
6041 err = rtnl_fill_statsinfo(skb, dev, RTM_NEWSTATS, 0, 0, 0, 0, in rtnl_offload_xstats_notify()
6043 if (err < 0) { in rtnl_offload_xstats_notify()
6052 rtnl_set_sk_err(net, RTNLGRP_STATS, err); in rtnl_offload_xstats_notify()
6066 int err; in rtnl_stats_set() local
6068 err = rtnl_valid_stats_req(nlh, netlink_strict_get_check(skb), in rtnl_stats_set()
6070 if (err) in rtnl_stats_set()
6071 return err; in rtnl_stats_set()
6092 err = nlmsg_parse(nlh, sizeof(*ifsm), tb, IFLA_STATS_GETSET_MAX, in rtnl_stats_set()
6094 if (err < 0) in rtnl_stats_set()
6095 return err; in rtnl_stats_set()
6101 err = netdev_offload_xstats_enable(dev, t_l3, extack); in rtnl_stats_set()
6103 err = netdev_offload_xstats_disable(dev, t_l3); in rtnl_stats_set()
6105 if (!err) in rtnl_stats_set()
6107 else if (err != -EALREADY) in rtnl_stats_set()
6108 return err; in rtnl_stats_set()
6155 int err; in rtnl_mdb_dump() local
6160 err = rtnl_mdb_valid_dump_req(cb->nlh, cb->extack); in rtnl_mdb_dump()
6161 if (err) in rtnl_mdb_dump()
6162 return err; in rtnl_mdb_dump()
6174 err = dev->netdev_ops->ndo_mdb_dump(dev, skb, cb); in rtnl_mdb_dump()
6175 if (err == -EMSGSIZE) in rtnl_mdb_dump()
6262 int err; in rtnl_mdb_add() local
6264 err = nlmsg_parse_deprecated(nlh, sizeof(*bpm), tb, in rtnl_mdb_add()
6266 if (err) in rtnl_mdb_add()
6267 return err; in rtnl_mdb_add()
6301 int err; in rtnl_mdb_del() local
6303 err = nlmsg_parse_deprecated(nlh, sizeof(*bpm), tb, in rtnl_mdb_del()
6305 if (err) in rtnl_mdb_del()
6306 return err; in rtnl_mdb_del()
6342 int err = -EOPNOTSUPP; in rtnetlink_rcv_msg() local
6383 err = 0; in rtnetlink_rcv_msg()
6386 err = -EPROTONOSUPPORT; in rtnetlink_rcv_msg()
6391 if (err == 0) { in rtnetlink_rcv_msg()
6397 err = netlink_dump_start(rtnl, skb, nlh, &c); in rtnetlink_rcv_msg()
6403 return err; in rtnetlink_rcv_msg()
6416 err = -EPROTONOSUPPORT; in rtnetlink_rcv_msg()
6432 err = doit(skb, nlh, extack); in rtnetlink_rcv_msg()
6434 return err; in rtnetlink_rcv_msg()
6441 err = link->doit(skb, nlh, extack); in rtnetlink_rcv_msg()
6446 return err; in rtnetlink_rcv_msg()
6450 return err; in rtnetlink_rcv_msg()