Lines Matching defs:ops
353 const struct rtnl_link_ops *ops;
355 list_for_each_entry(ops, &link_ops, list) {
356 if (!strcmp(ops->kind, kind))
357 return ops;
364 * @ops: struct rtnl_link_ops * to register
372 int __rtnl_link_register(struct rtnl_link_ops *ops)
374 if (rtnl_link_ops_get(ops->kind))
377 /* The check for setup is here because if ops
379 * to use the ops for creating device. So do not
382 if (ops->setup && !ops->dellink)
383 ops->dellink = unregister_netdevice_queue;
385 list_add_tail(&ops->list, &link_ops);
392 * @ops: struct rtnl_link_ops * to register
396 int rtnl_link_register(struct rtnl_link_ops *ops)
401 if (WARN_ON(ops->maxtype > RTNL_MAX_TYPE ||
402 ops->slave_maxtype > RTNL_SLAVE_MAX_TYPE))
406 err = __rtnl_link_register(ops);
412 static void __rtnl_kill_links(struct net *net, struct rtnl_link_ops *ops)
418 if (dev->rtnl_link_ops == ops)
419 ops->dellink(dev, &list_kill);
426 * @ops: struct rtnl_link_ops * to unregister
432 void __rtnl_link_unregister(struct rtnl_link_ops *ops)
437 __rtnl_kill_links(net, ops);
439 list_del(&ops->list);
476 * @ops: struct rtnl_link_ops * to unregister
478 void rtnl_link_unregister(struct rtnl_link_ops *ops)
483 __rtnl_link_unregister(ops);
492 const struct rtnl_link_ops *ops;
501 ops = master_dev->rtnl_link_ops;
502 if (!ops || !ops->get_slave_size)
506 ops->get_slave_size(master_dev, dev);
515 const struct rtnl_link_ops *ops = dev->rtnl_link_ops;
518 if (!ops)
522 nla_total_size(strlen(ops->kind) + 1); /* IFLA_INFO_KIND */
524 if (ops->get_size)
527 ops->get_size(dev);
529 if (ops->get_xstats_size)
531 size += nla_total_size(ops->get_xstats_size(dev));
542 const struct rtnl_af_ops *ops;
544 list_for_each_entry_rcu(ops, &rtnl_af_ops, list) {
545 if (ops->family == family)
546 return ops;
554 * @ops: struct rtnl_af_ops * to register
558 void rtnl_af_register(struct rtnl_af_ops *ops)
561 list_add_tail_rcu(&ops->list, &rtnl_af_ops);
568 * @ops: struct rtnl_af_ops * to unregister
570 void rtnl_af_unregister(struct rtnl_af_ops *ops)
573 list_del_rcu(&ops->list);
620 const struct rtnl_link_ops *ops;
627 ops = master_dev->rtnl_link_ops;
628 if (!ops)
630 if (nla_put_string(skb, IFLA_INFO_SLAVE_KIND, ops->kind) < 0)
632 if (ops->fill_slave_info) {
636 err = ops->fill_slave_info(skb, master_dev, dev);
651 const struct rtnl_link_ops *ops = dev->rtnl_link_ops;
655 if (!ops)
657 if (nla_put_string(skb, IFLA_INFO_KIND, ops->kind) < 0)
659 if (ops->fill_xstats) {
660 err = ops->fill_xstats(skb, dev);
664 if (ops->fill_info) {
668 err = ops->fill_info(skb, dev);
1752 nla_put_string(skb, IFLA_QDISC, qdisc->ops->id)) ||
1941 const struct rtnl_link_ops *ops = NULL;
1951 ops = rtnl_link_ops_get(kind);
1954 return ops;
2326 const struct net_device_ops *ops = dev->netdev_ops;
2328 return ops->ndo_set_vf_guid(dev, ivt->vf, ivt->guid, guid_type);
2341 const struct net_device_ops *ops = dev->netdev_ops;
2350 if (ops->ndo_set_vf_mac)
2351 err = ops->ndo_set_vf_mac(dev, ivm->vf,
2363 if (ops->ndo_set_vf_vlan)
2364 err = ops->ndo_set_vf_vlan(dev, ivv->vf, ivv->vlan,
2377 if (!ops->ndo_set_vf_vlan)
2396 err = ops->ndo_set_vf_vlan(dev, ivvl[0]->vf, ivvl[0]->vlan,
2409 if (ops->ndo_get_vf_config)
2410 err = ops->ndo_get_vf_config(dev, ivt->vf, &ivf);
2415 if (ops->ndo_set_vf_rate)
2416 err = ops->ndo_set_vf_rate(dev, ivt->vf,
2429 if (ops->ndo_set_vf_rate)
2430 err = ops->ndo_set_vf_rate(dev, ivt->vf,
2443 if (ops->ndo_set_vf_spoofchk)
2444 err = ops->ndo_set_vf_spoofchk(dev, ivs->vf,
2456 if (ops->ndo_set_vf_link_state)
2457 err = ops->ndo_set_vf_link_state(dev, ivl->vf,
2470 if (ops->ndo_set_vf_rss_query_en)
2471 err = ops->ndo_set_vf_rss_query_en(dev, ivrssq_en->vf,
2483 if (ops->ndo_set_vf_trust)
2484 err = ops->ndo_set_vf_trust(dev, ivt->vf, ivt->setting);
2494 if (!ops->ndo_set_vf_guid)
2504 if (!ops->ndo_set_vf_guid)
2517 const struct net_device_ops *ops;
2523 ops = upper_dev->netdev_ops;
2524 if (ops->ndo_del_slave) {
2525 err = ops->ndo_del_slave(upper_dev, dev);
2537 ops = upper_dev->netdev_ops;
2538 if (ops->ndo_add_slave) {
2539 err = ops->ndo_add_slave(upper_dev, dev, extack);
2560 const struct net_device_ops *ops = dev->netdev_ops;
2566 if (!ops->ndo_change_proto_down) {
2618 const struct net_device_ops *ops = dev->netdev_ops;
2645 if (!ops->ndo_set_config) {
2663 err = ops->ndo_set_config(dev, &k_map);
2831 if (!ops->ndo_set_vf_port)
2851 err = ops->ndo_set_vf_port(dev, vf, port);
2869 if (ops->ndo_set_vf_port)
2870 err = ops->ndo_set_vf_port(dev, PORT_SELF_VF, port);
3043 const struct rtnl_link_ops *ops;
3046 ops = dev->rtnl_link_ops;
3047 if (!ops || !ops->dellink)
3057 const struct rtnl_link_ops *ops;
3059 ops = dev->rtnl_link_ops;
3060 ops->dellink(dev, &list_kill);
3070 const struct rtnl_link_ops *ops;
3073 ops = dev->rtnl_link_ops;
3074 if (!ops || !ops->dellink)
3077 ops->dellink(dev, &list_kill);
3164 const struct rtnl_link_ops *ops,
3174 else if (ops->get_num_tx_queues)
3175 num_tx_queues = ops->get_num_tx_queues();
3179 else if (ops->get_num_rx_queues)
3180 num_rx_queues = ops->get_num_rx_queues();
3192 dev = alloc_netdev_mqs(ops->priv_size, ifname, name_assign_type,
3193 ops->setup, num_tx_queues, num_rx_queues);
3198 dev->rtnl_link_ops = ops;
3266 const struct rtnl_link_ops *ops;
3333 ops = rtnl_link_ops_get(kind);
3336 ops = NULL;
3340 if (ops) {
3341 if (ops->maxtype > RTNL_MAX_TYPE)
3344 if (ops->maxtype && linkinfo[IFLA_INFO_DATA]) {
3345 err = nla_parse_nested_deprecated(attr, ops->maxtype,
3347 ops->policy, extack);
3352 if (ops->validate) {
3353 err = ops->validate(tb, data, extack);
3386 if (!ops || ops != dev->rtnl_link_ops ||
3387 !ops->changelink)
3390 err = ops->changelink(dev, tb, data, extack);
3426 if (!ops) {
3432 ops = rtnl_link_ops_get(kind);
3433 if (ops)
3441 if (!ops->setup)
3445 snprintf(ifname, IFNAMSIZ, "%s%%d", ops->kind);
3470 name_assign_type, ops, tb, extack);
3478 if (ops->newlink)
3479 err = ops->newlink(link_net ? : net, dev, tb, data, extack);
3506 if (ops->newlink) {
3509 ops->dellink(dev, &list_kill);
4074 const struct net_device_ops *ops = br_dev->netdev_ops;
4076 err = ops->ndo_fdb_add(ndm, tb, dev, addr, vid,
4185 const struct net_device_ops *ops = br_dev->netdev_ops;
4187 if (ops->ndo_fdb_del)
4188 err = ops->ndo_fdb_del(ndm, tb, dev, addr, vid);
4369 const struct net_device_ops *ops = NULL;
4394 ops = br_dev->netdev_ops;
4421 cops = ops;
4532 const struct net_device_ops *ops = NULL;
4572 ops = br_dev->netdev_ops;
4586 ops = br_dev->netdev_ops;
4592 ops = dev->netdev_ops;
4601 if (!ops || !ops->ndo_fdb_get) {
4612 err = ops->ndo_fdb_get(skb, tb, dev, addr, vid,
4807 const struct net_device_ops *ops = dev->netdev_ops;
4825 if (ops->ndo_bridge_getlink) {
4827 err = ops->ndo_bridge_getlink(skb, portid,
5185 const struct rtnl_link_ops *ops = dev->rtnl_link_ops;
5187 if (ops && ops->fill_linkxstats) {
5194 err = ops->fill_linkxstats(skb, dev, prividx, *idxattr);
5204 const struct rtnl_link_ops *ops = NULL;
5209 ops = master->rtnl_link_ops;
5210 if (ops && ops->fill_linkxstats) {
5217 err = ops->fill_linkxstats(skb, dev, prividx, *idxattr);
5306 const struct rtnl_link_ops *ops = dev->rtnl_link_ops;
5309 if (ops && ops->get_linkxstats_size) {
5310 size += nla_total_size(ops->get_linkxstats_size(dev,
5319 const struct rtnl_link_ops *ops = NULL;
5325 ops = master->rtnl_link_ops;
5326 if (ops && ops->get_linkxstats_size) {
5329 size += nla_total_size(ops->get_linkxstats_size(dev,