lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 11 Apr 2007 17:56:02 +1000
From:	Herbert Xu <herbert@...dor.apana.org.au>
To:	"David S. Miller" <davem@...emloft.net>
Cc:	netdev@...r.kernel.org, Rusty Russell <rusty@...tcorp.com.au>,
	Jeff Garzik <jgarzik@...ox.com>
Subject: [NET]: Get rid of NETIF_F_INTERNAL_STATS

Hi:

[NET]: Get rid of NETIF_F_INTERNAL_STATS

The recently added NETIF_F_INTERNAL_STATS isn't very useful.  If the
device driver needs to set it then it can always override get_stats
instead.  All existing drivers that have stats (which should be every
one) will override get_stats anyway.  Those that don't have stats
(if there are any) wouldn't hurt from having a get_stats that just
returns zeros everywhere.

So we can simply get rid of this flag.

This also fixes a potential crash in those get_stats callers that
don't check for a NULL return value (e.g., /proc/net/dev).

Signed-off-by: Herbert Xu <herbert@...dor.apana.org.au>

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 71fc8ff..9c52652 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -323,7 +323,6 @@ struct net_device
 #define NETIF_F_VLAN_CHALLENGED	1024	/* Device cannot handle VLAN packets */
 #define NETIF_F_GSO		2048	/* Enable software GSO. */
 #define NETIF_F_LLTX		4096	/* LockLess TX */
-#define NETIF_F_INTERNAL_STATS	8192	/* Use stats structure in net_device */
 
 	/* Segmentation offload features */
 #define NETIF_F_GSO_SHIFT	16
diff --git a/net/core/dev.c b/net/core/dev.c
index c484fcf..5791021 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -3289,11 +3289,9 @@ out:
 	mutex_unlock(&net_todo_run_mutex);
 }
 
-static struct net_device_stats *maybe_internal_stats(struct net_device *dev)
+static struct net_device_stats *get_internal_stats(struct net_device *dev)
 {
-	if (dev->features & NETIF_F_INTERNAL_STATS)
-		return &dev->stats;
-	return NULL;
+	return &dev->stats;
 }
 
 /**
@@ -3331,7 +3329,7 @@ struct net_device *alloc_netdev(int sizeof_priv, const char *name,
 	if (sizeof_priv)
 		dev->priv = netdev_priv(dev);
 
-	dev->get_stats = maybe_internal_stats;
+	dev->get_stats = get_internal_stats;
 	setup(dev);
 	strcpy(dev->name, name);
 	return dev;
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists