diff options
Diffstat (limited to 'net/core/dev.c')
| -rw-r--r-- | net/core/dev.c | 38 | 
1 files changed, 21 insertions, 17 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 185e246d61f..f1cca59c463 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1914,7 +1914,8 @@ EXPORT_SYMBOL(skb_checksum_help);   *	It may return NULL if the skb requires no segmentation.  This is   *	only possible when GSO is used for verifying header integrity.   */ -struct sk_buff *skb_gso_segment(struct sk_buff *skb, u32 features) +struct sk_buff *skb_gso_segment(struct sk_buff *skb, +	netdev_features_t features)  {  	struct sk_buff *segs = ERR_PTR(-EPROTONOSUPPORT);  	struct packet_type *ptype; @@ -1944,9 +1945,9 @@ struct sk_buff *skb_gso_segment(struct sk_buff *skb, u32 features)  		if (dev && dev->ethtool_ops && dev->ethtool_ops->get_drvinfo)  			dev->ethtool_ops->get_drvinfo(dev, &info); -		WARN(1, "%s: caps=(0x%lx, 0x%lx) len=%d data_len=%d ip_summed=%d\n", -		     info.driver, dev ? dev->features : 0L, -		     skb->sk ? skb->sk->sk_route_caps : 0L, +		WARN(1, "%s: caps=(%pNF, %pNF) len=%d data_len=%d ip_summed=%d\n", +		     info.driver, dev ? &dev->features : NULL, +		     skb->sk ? &skb->sk->sk_route_caps : NULL,  		     skb->len, skb->data_len, skb->ip_summed);  		if (skb_header_cloned(skb) && @@ -2055,7 +2056,7 @@ static void dev_gso_skb_destructor(struct sk_buff *skb)   *	This function segments the given skb and stores the list of segments   *	in skb->next.   */ -static int dev_gso_segment(struct sk_buff *skb, int features) +static int dev_gso_segment(struct sk_buff *skb, netdev_features_t features)  {  	struct sk_buff *segs; @@ -2094,7 +2095,7 @@ static inline void skb_orphan_try(struct sk_buff *skb)  	}  } -static bool can_checksum_protocol(unsigned long features, __be16 protocol) +static bool can_checksum_protocol(netdev_features_t features, __be16 protocol)  {  	return ((features & NETIF_F_GEN_CSUM) ||  		((features & NETIF_F_V4_CSUM) && @@ -2105,7 +2106,8 @@ static bool can_checksum_protocol(unsigned long features, __be16 protocol)  		 protocol == htons(ETH_P_FCOE)));  } -static u32 harmonize_features(struct sk_buff *skb, __be16 protocol, u32 features) +static netdev_features_t harmonize_features(struct sk_buff *skb, +	__be16 protocol, netdev_features_t features)  {  	if (!can_checksum_protocol(features, protocol)) {  		features &= ~NETIF_F_ALL_CSUM; @@ -2117,10 +2119,10 @@ static u32 harmonize_features(struct sk_buff *skb, __be16 protocol, u32 features  	return features;  } -u32 netif_skb_features(struct sk_buff *skb) +netdev_features_t netif_skb_features(struct sk_buff *skb)  {  	__be16 protocol = skb->protocol; -	u32 features = skb->dev->features; +	netdev_features_t features = skb->dev->features;  	if (protocol == htons(ETH_P_8021Q)) {  		struct vlan_ethhdr *veh = (struct vlan_ethhdr *)skb->data; @@ -2166,7 +2168,7 @@ int dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev,  	unsigned int skb_len;  	if (likely(!skb->next)) { -		u32 features; +		netdev_features_t features;  		/*  		 * If device doesn't need skb->dst, release it right now while @@ -5350,7 +5352,8 @@ static void rollback_registered(struct net_device *dev)  	list_del(&single);  } -static u32 netdev_fix_features(struct net_device *dev, u32 features) +static netdev_features_t netdev_fix_features(struct net_device *dev, +	netdev_features_t features)  {  	/* Fix illegal checksum combinations */  	if ((features & NETIF_F_HW_CSUM) && @@ -5412,7 +5415,7 @@ static u32 netdev_fix_features(struct net_device *dev, u32 features)  int __netdev_update_features(struct net_device *dev)  { -	u32 features; +	netdev_features_t features;  	int err = 0;  	ASSERT_RTNL(); @@ -5428,16 +5431,16 @@ int __netdev_update_features(struct net_device *dev)  	if (dev->features == features)  		return 0; -	netdev_dbg(dev, "Features changed: 0x%08x -> 0x%08x\n", -		dev->features, features); +	netdev_dbg(dev, "Features changed: %pNF -> %pNF\n", +		&dev->features, &features);  	if (dev->netdev_ops->ndo_set_features)  		err = dev->netdev_ops->ndo_set_features(dev, features);  	if (unlikely(err < 0)) {  		netdev_err(dev, -			"set_features() failed (%d); wanted 0x%08x, left 0x%08x\n", -			err, features, dev->features); +			"set_features() failed (%d); wanted %pNF, left %pNF\n", +			err, &features, &dev->features);  		return -1;  	} @@ -6361,7 +6364,8 @@ static int dev_cpu_callback(struct notifier_block *nfb,   *	@one to the master device with current feature set @all.  Will not   *	enable anything that is off in @mask. Returns the new feature set.   */ -u32 netdev_increment_features(u32 all, u32 one, u32 mask) +netdev_features_t netdev_increment_features(netdev_features_t all, +	netdev_features_t one, netdev_features_t mask)  {  	if (mask & NETIF_F_GEN_CSUM)  		mask |= NETIF_F_ALL_CSUM;  |