Lines Matching refs:features
1466 if (unlikely(dev->features & NETIF_F_LRO)) in dev_disable_lro()
2356 driver, dev ? &dev->features : &null_features, in skb_warn_bad_offload()
2434 netdev_features_t features) in skb_mac_gso_segment() argument
2449 segs = ptype->callbacks.gso_segment(skb, features); in skb_mac_gso_segment()
2486 netdev_features_t features, bool tx_path) in __skb_gso_segment() argument
2507 return skb_mac_gso_segment(skb, features); in __skb_gso_segment()
2532 if (!(dev->features & NETIF_F_HIGHDMA)) { in illegal_highdma()
2561 netdev_features_t features, in net_mpls_features() argument
2565 features &= skb->dev->mpls_features; in net_mpls_features()
2567 return features; in net_mpls_features()
2571 netdev_features_t features, in net_mpls_features() argument
2574 return features; in net_mpls_features()
2579 netdev_features_t features) in harmonize_features() argument
2585 features = net_mpls_features(skb, features, type); in harmonize_features()
2588 !can_checksum_protocol(features, type)) { in harmonize_features()
2589 features &= ~NETIF_F_ALL_CSUM; in harmonize_features()
2591 features &= ~NETIF_F_SG; in harmonize_features()
2594 return features; in harmonize_features()
2599 netdev_features_t features) in passthru_features_check() argument
2601 return features; in passthru_features_check()
2607 netdev_features_t features) in dflt_features_check() argument
2609 return vlan_features_check(skb, features); in dflt_features_check()
2615 netdev_features_t features = dev->features; in netif_skb_features() local
2619 features &= ~NETIF_F_GSO_MASK; in netif_skb_features()
2626 features &= dev->hw_enc_features; in netif_skb_features()
2629 features = netdev_intersect_features(features, in netif_skb_features()
2635 features &= dev->netdev_ops->ndo_features_check(skb, dev, in netif_skb_features()
2636 features); in netif_skb_features()
2638 features &= dflt_features_check(skb, dev, features); in netif_skb_features()
2640 return harmonize_features(skb, features); in netif_skb_features()
2690 netdev_features_t features) in validate_xmit_vlan() argument
2693 !vlan_hw_offload_capable(features, skb->vlan_proto)) in validate_xmit_vlan()
2700 netdev_features_t features; in validate_xmit_skb() local
2705 features = netif_skb_features(skb); in validate_xmit_skb()
2706 skb = validate_xmit_vlan(skb, features); in validate_xmit_skb()
2710 if (netif_needs_gso(skb, features)) { in validate_xmit_skb()
2713 segs = skb_gso_segment(skb, features); in validate_xmit_skb()
2721 if (skb_needs_linearize(skb, features) && in validate_xmit_skb()
2736 if (!(features & NETIF_F_ALL_CSUM) && in validate_xmit_skb()
3087 !(dev->features & NETIF_F_NTUPLE)) in set_rps_cpu()
4044 if (!(skb->dev->features & NETIF_F_GRO)) in dev_gro_receive()
6095 netdev_features_t features) in netdev_fix_features() argument
6098 if ((features & NETIF_F_HW_CSUM) && in netdev_fix_features()
6099 (features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM))) { in netdev_fix_features()
6101 features &= ~(NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM); in netdev_fix_features()
6105 if ((features & NETIF_F_ALL_TSO) && !(features & NETIF_F_SG)) { in netdev_fix_features()
6107 features &= ~NETIF_F_ALL_TSO; in netdev_fix_features()
6110 if ((features & NETIF_F_TSO) && !(features & NETIF_F_HW_CSUM) && in netdev_fix_features()
6111 !(features & NETIF_F_IP_CSUM)) { in netdev_fix_features()
6113 features &= ~NETIF_F_TSO; in netdev_fix_features()
6114 features &= ~NETIF_F_TSO_ECN; in netdev_fix_features()
6117 if ((features & NETIF_F_TSO6) && !(features & NETIF_F_HW_CSUM) && in netdev_fix_features()
6118 !(features & NETIF_F_IPV6_CSUM)) { in netdev_fix_features()
6120 features &= ~NETIF_F_TSO6; in netdev_fix_features()
6124 if ((features & NETIF_F_ALL_TSO) == NETIF_F_TSO_ECN) in netdev_fix_features()
6125 features &= ~NETIF_F_TSO_ECN; in netdev_fix_features()
6128 if ((features & NETIF_F_GSO) && !(features & NETIF_F_SG)) { in netdev_fix_features()
6130 features &= ~NETIF_F_GSO; in netdev_fix_features()
6134 if (features & NETIF_F_UFO) { in netdev_fix_features()
6136 if (!((features & NETIF_F_GEN_CSUM) || in netdev_fix_features()
6137 (features & (NETIF_F_IP_CSUM|NETIF_F_IPV6_CSUM)) in netdev_fix_features()
6141 features &= ~NETIF_F_UFO; in netdev_fix_features()
6144 if (!(features & NETIF_F_SG)) { in netdev_fix_features()
6147 features &= ~NETIF_F_UFO; in netdev_fix_features()
6153 features |= NETIF_F_BUSY_POLL; in netdev_fix_features()
6156 features &= ~NETIF_F_BUSY_POLL; in netdev_fix_features()
6158 return features; in netdev_fix_features()
6163 netdev_features_t features; in __netdev_update_features() local
6168 features = netdev_get_wanted_features(dev); in __netdev_update_features()
6171 features = dev->netdev_ops->ndo_fix_features(dev, features); in __netdev_update_features()
6174 features = netdev_fix_features(dev, features); in __netdev_update_features()
6176 if (dev->features == features) in __netdev_update_features()
6180 &dev->features, &features); in __netdev_update_features()
6183 err = dev->netdev_ops->ndo_set_features(dev, features); in __netdev_update_features()
6188 err, &features, &dev->features); in __netdev_update_features()
6193 dev->features = features; in __netdev_update_features()
6370 if (((dev->hw_features | dev->features) & in register_netdevice()
6389 dev->features |= NETIF_F_SOFT_FEATURES; in register_netdevice()
6390 dev->wanted_features = dev->features & dev->hw_features; in register_netdevice()
7029 if (dev->features & NETIF_F_NETNS_LOCAL) in dev_change_net_namespace()
7360 if (dev->features & NETIF_F_NETNS_LOCAL) in default_device_exit()