Lines Matching refs:real_dev
446 if (!xs->xso.real_dev) in bond_ipsec_dev()
449 if (xs->xso.real_dev != slave->dev) in bond_ipsec_dev()
451 bond_dev->name, slave->dev->name, xs->xso.real_dev->name); in bond_ipsec_dev()
465 struct net_device *real_dev; in bond_ipsec_add_sa() local
478 real_dev = slave ? slave->dev : NULL; in bond_ipsec_add_sa()
479 netdev_hold(real_dev, &tracker, GFP_ATOMIC); in bond_ipsec_add_sa()
481 if (!real_dev) { in bond_ipsec_add_sa()
486 if (!real_dev->xfrmdev_ops || in bond_ipsec_add_sa()
487 !real_dev->xfrmdev_ops->xdo_dev_state_add || in bond_ipsec_add_sa()
488 netif_is_bond_master(real_dev)) { in bond_ipsec_add_sa()
500 xs->xso.real_dev = real_dev; in bond_ipsec_add_sa()
501 err = real_dev->xfrmdev_ops->xdo_dev_state_add(xs, extack); in bond_ipsec_add_sa()
512 netdev_put(real_dev, &tracker); in bond_ipsec_add_sa()
519 struct net_device *real_dev; in bond_ipsec_add_sa_all() local
524 real_dev = slave ? slave->dev : NULL; in bond_ipsec_add_sa_all()
525 if (!real_dev) in bond_ipsec_add_sa_all()
529 if (!real_dev->xfrmdev_ops || in bond_ipsec_add_sa_all()
530 !real_dev->xfrmdev_ops->xdo_dev_state_add || in bond_ipsec_add_sa_all()
531 netif_is_bond_master(real_dev)) { in bond_ipsec_add_sa_all()
533 slave_warn(bond_dev, real_dev, in bond_ipsec_add_sa_all()
541 if (ipsec->xs->xso.real_dev == real_dev) in bond_ipsec_add_sa_all()
544 ipsec->xs->xso.real_dev = real_dev; in bond_ipsec_add_sa_all()
545 if (real_dev->xfrmdev_ops->xdo_dev_state_add(ipsec->xs, NULL)) { in bond_ipsec_add_sa_all()
546 slave_warn(bond_dev, real_dev, "%s: failed to add SA\n", __func__); in bond_ipsec_add_sa_all()
547 ipsec->xs->xso.real_dev = NULL; in bond_ipsec_add_sa_all()
561 struct net_device *real_dev; in bond_ipsec_del_sa() local
573 real_dev = slave ? slave->dev : NULL; in bond_ipsec_del_sa()
574 netdev_hold(real_dev, &tracker, GFP_ATOMIC); in bond_ipsec_del_sa()
580 if (!xs->xso.real_dev) in bond_ipsec_del_sa()
583 WARN_ON(xs->xso.real_dev != real_dev); in bond_ipsec_del_sa()
585 if (!real_dev->xfrmdev_ops || in bond_ipsec_del_sa()
586 !real_dev->xfrmdev_ops->xdo_dev_state_delete || in bond_ipsec_del_sa()
587 netif_is_bond_master(real_dev)) { in bond_ipsec_del_sa()
588 slave_warn(bond_dev, real_dev, "%s: no slave xdo_dev_state_delete\n", __func__); in bond_ipsec_del_sa()
592 real_dev->xfrmdev_ops->xdo_dev_state_delete(xs); in bond_ipsec_del_sa()
594 netdev_put(real_dev, &tracker); in bond_ipsec_del_sa()
609 struct net_device *real_dev; in bond_ipsec_del_sa_all() local
614 real_dev = slave ? slave->dev : NULL; in bond_ipsec_del_sa_all()
615 if (!real_dev) in bond_ipsec_del_sa_all()
620 if (!ipsec->xs->xso.real_dev) in bond_ipsec_del_sa_all()
623 if (!real_dev->xfrmdev_ops || in bond_ipsec_del_sa_all()
624 !real_dev->xfrmdev_ops->xdo_dev_state_delete || in bond_ipsec_del_sa_all()
625 netif_is_bond_master(real_dev)) { in bond_ipsec_del_sa_all()
626 slave_warn(bond_dev, real_dev, in bond_ipsec_del_sa_all()
630 real_dev->xfrmdev_ops->xdo_dev_state_delete(ipsec->xs); in bond_ipsec_del_sa_all()
631 if (real_dev->xfrmdev_ops->xdo_dev_state_free) in bond_ipsec_del_sa_all()
632 real_dev->xfrmdev_ops->xdo_dev_state_free(ipsec->xs); in bond_ipsec_del_sa_all()
641 struct net_device *real_dev; in bond_ipsec_free_sa() local
652 real_dev = slave ? slave->dev : NULL; in bond_ipsec_free_sa()
653 netdev_hold(real_dev, &tracker, GFP_ATOMIC); in bond_ipsec_free_sa()
659 if (!xs->xso.real_dev) in bond_ipsec_free_sa()
662 WARN_ON(xs->xso.real_dev != real_dev); in bond_ipsec_free_sa()
664 if (real_dev && real_dev->xfrmdev_ops && in bond_ipsec_free_sa()
665 real_dev->xfrmdev_ops->xdo_dev_state_free) in bond_ipsec_free_sa()
666 real_dev->xfrmdev_ops->xdo_dev_state_free(xs); in bond_ipsec_free_sa()
668 netdev_put(real_dev, &tracker); in bond_ipsec_free_sa()
678 struct net_device *real_dev; in bond_ipsec_offload_ok() local
682 real_dev = bond_ipsec_dev(xs); in bond_ipsec_offload_ok()
683 if (!real_dev) in bond_ipsec_offload_ok()
686 if (!real_dev->xfrmdev_ops || in bond_ipsec_offload_ok()
687 !real_dev->xfrmdev_ops->xdo_dev_offload_ok || in bond_ipsec_offload_ok()
688 netif_is_bond_master(real_dev)) in bond_ipsec_offload_ok()
691 ok = real_dev->xfrmdev_ops->xdo_dev_offload_ok(skb, xs); in bond_ipsec_offload_ok()
703 struct net_device *real_dev; in bond_advance_esn_state() local
706 real_dev = bond_ipsec_dev(xs); in bond_advance_esn_state()
707 if (!real_dev) in bond_advance_esn_state()
710 if (!real_dev->xfrmdev_ops || in bond_advance_esn_state()
711 !real_dev->xfrmdev_ops->xdo_dev_state_advance_esn) { in bond_advance_esn_state()
712 …pr_warn_ratelimited("%s: %s doesn't support xdo_dev_state_advance_esn\n", __func__, real_dev->name… in bond_advance_esn_state()
716 real_dev->xfrmdev_ops->xdo_dev_state_advance_esn(xs); in bond_advance_esn_state()
727 struct net_device *real_dev; in bond_xfrm_update_stats() local
730 real_dev = bond_ipsec_dev(xs); in bond_xfrm_update_stats()
731 if (!real_dev) in bond_xfrm_update_stats()
734 if (!real_dev->xfrmdev_ops || in bond_xfrm_update_stats()
735 !real_dev->xfrmdev_ops->xdo_dev_state_update_stats) { in bond_xfrm_update_stats()
736 …pr_warn_ratelimited("%s: %s doesn't support xdo_dev_state_update_stats\n", __func__, real_dev->nam… in bond_xfrm_update_stats()
740 real_dev->xfrmdev_ops->xdo_dev_state_update_stats(xs); in bond_xfrm_update_stats()
5804 struct net_device *real_dev; in bond_hwtstamp_get() local
5807 real_dev = bond_option_active_slave_get_rcu(bond); in bond_hwtstamp_get()
5808 if (!real_dev) in bond_hwtstamp_get()
5811 err = generic_hwtstamp_get_lower(real_dev, cfg); in bond_hwtstamp_get()
5823 struct net_device *real_dev; in bond_hwtstamp_set() local
5829 real_dev = bond_option_active_slave_get_rcu(bond); in bond_hwtstamp_set()
5830 if (!real_dev) in bond_hwtstamp_set()
5833 err = generic_hwtstamp_set_lower(real_dev, cfg, extack); in bond_hwtstamp_set()
5889 struct net_device *real_dev; in bond_ethtool_get_ts_info() local
5896 real_dev = bond_option_active_slave_get_rcu(bond); in bond_ethtool_get_ts_info()
5897 dev_hold(real_dev); in bond_ethtool_get_ts_info()
5900 if (real_dev) { in bond_ethtool_get_ts_info()
5901 ret = ethtool_get_ts_info_by_layer(real_dev, info); in bond_ethtool_get_ts_info()
5921 dev_put(real_dev); in bond_ethtool_get_ts_info()