+static void __init netdev_features_init(void) +{
- netdev_features_t features;
- netdev_features_set_array(&netif_f_ip_csum_feature_set,
&netdev_ip_csum_features);
- netdev_features_set_array(&netif_f_csum_feature_set_mask,
&netdev_csum_features_mask);
- netdev_features_set_array(&netif_f_gso_feature_set_mask,
&netdev_gso_features_mask);
- netdev_features_set_array(&netif_f_general_tso_feature_set,
&netdev_general_tso_features);
- netdev_features_set_array(&netif_f_all_tso_feature_set,
&netdev_all_tso_features);
- netdev_features_set_array(&netif_f_tso_ecn_feature_set,
&netdev_tso_ecn_features);
- netdev_features_set_array(&netif_f_all_fcoe_feature_set,
&netdev_all_fcoe_features);
- netdev_features_set_array(&netif_f_gso_soft_feature_set,
&netdev_gso_software_features);
- netdev_features_set_array(&netif_f_gso_encap_feature_set,
&netdev_gso_encap_all_features);
- netdev_csum_gso_features_mask =
netdev_features_or(netdev_gso_software_features,
netdev_csum_features_mask);
According to patch 10, I think here should be netdev_csum_gso_features_mask = netdev_features_or(netdev_gso_features_mask, netdev_csum_features_mask);