--- include/linux/netdevice.h.orig 2005-08-17 15:28:05.000000000 +0200 +++ include/linux/netdevice.h 2005-08-17 15:27:02.000000000 +0200 @@ -107,10 +107,10 @@ struct netpoll; struct net_device_stats { - unsigned long rx_packets; /* total packets received */ - unsigned long tx_packets; /* total packets transmitted */ - unsigned long rx_bytes; /* total bytes received */ - unsigned long tx_bytes; /* total bytes transmitted */ + unsigned long long rx_packets; /* total packets received */ + unsigned long long tx_packets; /* total packets transmitted */ + unsigned long long rx_bytes; /* total bytes received */ + unsigned long long tx_bytes; /* total bytes transmitted */ unsigned long rx_errors; /* bad packets received */ unsigned long tx_errors; /* packet transmit problems */ unsigned long rx_dropped; /* no space in linux buffers */ --- net/core/dev.c.orig 2005-08-17 15:29:40.000000000 +0200 +++ net/core/dev.c 2005-08-17 15:30:53.000000000 +0200 @@ -1984,8 +1984,8 @@ static void dev_seq_printf_stats(struct if (dev->get_stats) { struct net_device_stats *stats = dev->get_stats(dev); - seq_printf(seq, "%6s:%8lu %7lu %4lu %4lu %4lu %5lu %10lu %9lu " - "%8lu %7lu %4lu %4lu %4lu %5lu %7lu %10lu\n", + seq_printf(seq, "%6s:%8llu %7llu %4lu %4lu %4lu %5lu %10lu %9lu " + "%8llu %7llu %4lu %4lu %4lu %5lu %7lu %10lu\n", dev->name, stats->rx_bytes, stats->rx_packets, stats->rx_errors, stats->rx_dropped + stats->rx_missed_errors,