Eric Dumazet 1ac9ad1394 net: remove dev_txq_stats_fold()
After recent changes, (percpu stats on vlan/tunnels...), we dont need
anymore per struct netdev_queue tx_bytes/tx_packets/tx_dropped counters.

Only remaining users are ixgbe, sch_teql, gianfar & macvlan :

1) ixgbe can be converted to use existing tx_ring counters.

2) macvlan incremented txq->tx_dropped, it can use the
dev->stats.tx_dropped counter.

3) sch_teql : almost revert ab35cd4b8f42 (Use net_device internal stats)
    Now we have ndo_get_stats64(), use it, even for "unsigned long"
fields (No need to bring back a struct net_device_stats)

4) gianfar adds a stats structure per tx queue to hold
tx_bytes/tx_packets

This removes a lockdep warning (and possible lockup) in rndis gadget,
calling dev_get_stats() from hard IRQ context.

Ref: http://www.spinics.net/lists/netdev/msg149202.html

Reported-by: Neil Jones <neiljay@gmail.com>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Jarek Poplawski <jarkao2@gmail.com>
CC: Alexander Duyck <alexander.h.duyck@intel.com>
CC: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
CC: Sandeep Gopalpet <sandeep.kumar@freescale.com>
CC: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2011-01-13 21:44:34 -08:00
..
2010-12-21 02:16:10 -08:00
2011-01-12 19:00:39 -08:00
2010-12-21 02:16:10 -08:00
2011-01-11 14:03:09 -08:00
2011-01-13 21:44:34 -08:00
2010-05-10 05:01:31 -07:00
2011-01-11 14:03:08 -08:00
2010-12-21 02:16:10 -08:00
2010-12-21 02:16:10 -08:00
2010-12-31 11:11:38 -08:00
2010-12-21 02:16:10 -08:00
2010-12-21 02:16:08 -08:00
2010-12-21 02:16:08 -08:00
2010-05-10 05:01:31 -07:00
2010-12-21 02:16:08 -08:00
2010-11-09 09:17:56 -08:00
2010-12-21 02:16:08 -08:00
2010-06-03 03:18:23 -07:00
2010-11-17 12:21:14 -08:00
2010-11-09 09:17:56 -08:00
2010-07-11 18:15:08 -07:00
2010-12-21 02:16:08 -08:00
2010-11-09 09:17:56 -08:00
2010-12-01 11:11:31 -08:00
2010-08-24 12:24:07 -07:00
2010-09-26 18:34:29 -07:00
2010-12-31 11:04:02 -08:00
2010-11-28 10:47:19 -08:00
2010-12-23 11:44:34 -08:00
2010-12-23 11:44:34 -08:00
2010-07-19 13:32:57 -07:00
2010-07-14 13:40:36 -07:00
2010-05-10 05:01:31 -07:00
2010-09-26 18:34:29 -07:00
2010-09-26 18:34:29 -07:00
2010-09-29 13:23:30 -07:00
2010-09-26 18:34:29 -07:00
2010-12-21 02:16:08 -08:00
2010-12-21 02:16:08 -08:00
2010-12-21 02:16:08 -08:00
2010-05-10 05:01:31 -07:00
2010-09-26 18:34:29 -07:00
2010-11-28 11:16:38 -08:00
2010-11-16 11:39:08 -08:00
2011-01-09 15:42:56 -08:00
2011-01-09 15:42:56 -08:00
2011-01-13 21:44:34 -08:00
2011-01-13 21:44:34 -08:00
2010-09-26 18:34:29 -07:00
2010-12-21 02:16:08 -08:00
2011-01-03 12:43:10 -08:00
2010-11-18 10:45:24 -08:00
2010-12-21 02:16:08 -08:00
2010-10-21 03:52:11 -07:00
2010-07-27 22:24:37 -07:00
2010-11-08 13:50:06 -08:00
2010-11-09 09:17:56 -08:00
2010-11-09 09:17:56 -08:00
2010-09-26 18:34:29 -07:00
2010-05-10 05:01:31 -07:00
2011-01-13 21:44:34 -08:00
2010-09-26 18:34:29 -07:00
2010-06-21 13:40:25 -07:00
2010-07-05 20:08:05 -07:00
2010-05-10 05:01:31 -07:00
2010-12-21 02:16:08 -08:00
2010-12-21 02:16:08 -08:00
2010-06-28 12:41:33 -07:00
2010-09-26 18:34:29 -07:00
2010-09-15 22:06:05 -07:00
2010-09-21 18:04:47 -07:00
2010-12-12 22:08:17 -08:00
2010-07-15 20:46:22 -07:00
2010-12-11 11:46:36 -08:00
2010-05-10 05:01:31 -07:00
2010-09-26 18:34:29 -07:00
2011-01-09 15:54:15 -08:00
2011-01-09 15:54:15 -08:00
2010-10-24 16:25:39 -07:00
2010-09-26 18:34:29 -07:00
2010-05-10 05:01:31 -07:00
2010-12-21 02:16:08 -08:00
2010-05-10 05:01:31 -07:00
2010-09-26 18:34:29 -07:00
2010-09-26 18:34:29 -07:00
2010-12-06 11:03:48 -08:00
2010-09-26 18:34:29 -07:00
2010-12-16 14:43:14 -08:00
2010-06-03 03:18:23 -07:00
2010-12-16 14:41:35 -08:00
2010-12-08 10:23:36 -08:00
2010-12-21 02:16:08 -08:00
2010-11-09 09:17:56 -08:00