Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > by-pkgid > 27922b4260f65d317aabda37e42bbbff > files > 3111

kernel-2.6.18-238.el5.src.rpm

From: Flavio Leitner <fleitner@redhat.com>
Date: Wed, 24 Jun 2009 16:16:27 -0300
Subject: [net] sky2: /proc/net/dev statistics are broken
Message-id: 20090624191627.GA3211@redhat.com
O-Subject: [RHEL-5.5 PATCH] BZ#507932 sky2: /proc/net/dev statistics are broken
Bugzilla: 507932
RH-Acked-by: Andy Gospodarek <gospo@redhat.com>
RH-Acked-by: Dean Nelson <dnelson@redhat.com>
RH-Acked-by: David Miller <davem@redhat.com>
RH-Acked-by: Neil Horman <nhorman@redhat.com>

Hi,

The function sky2_get_stats() was removed on commit
b4f307a628db4939237fc6c53cacc5a5800373ba breaking
/proc/net/dev statistics.

 # cat /proc/net/dev
 eth1: No statistics available

This patch adds sky2_get_stats() again fixing this issue.

Tested by Ranjith Rajaram.

Resolves BZ 507354.

Signed-off-by: Flavio Leitner <fleitner@redhat.com>

diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c
index c84630f..4ecbbb4 100644
--- a/drivers/net/sky2.c
+++ b/drivers/net/sky2.c
@@ -3319,6 +3319,12 @@ static void sky2_get_strings(struct net_device *dev, u32 stringset, u8 * data)
 	}
 }
 
+static struct net_device_stats *sky2_get_stats(struct net_device *dev)
+{
+	struct sky2_port *sky2 = netdev_priv(dev);
+	return &sky2->stats;
+}
+
 static int sky2_set_mac_address(struct net_device *dev, void *p)
 {
 	struct sky2_port *sky2 = netdev_priv(dev);
@@ -4066,6 +4072,7 @@ static __devinit struct net_device *sky2_init_netdev(struct sky2_hw *hw,
 	dev->stop = sky2_down;
 	dev->do_ioctl = sky2_ioctl;
 	dev->hard_start_xmit = sky2_xmit_frame;
+	dev->get_stats = sky2_get_stats;
 	dev->set_multicast_list = sky2_set_multicast;
 	dev->set_mac_address = sky2_set_mac_address;
 	dev->change_mtu = sky2_change_mtu;