aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/team
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2014-03-14 00:26:42 -0400
committerDavid S. Miller <davem@davemloft.net>2014-03-14 22:41:36 -0400
commit57a7744e09867ebcfa0ccf1d6d529caa7728d552 (patch)
tree6407fee7138787a24bf9251abfeeae69a239028a /drivers/net/team
parent85dcce7a73f1cc59f7a96fe52713b1630f4ca272 (diff)
net: Replace u64_stats_fetch_begin_bh to u64_stats_fetch_begin_irq
Replace the bh safe variant with the hard irq safe variant. We need a hard irq safe variant to deal with netpoll transmitting packets from hard irq context, and we need it in most if not all of the places using the bh safe variant. Except on 32bit uni-processor the code is exactly the same so don't bother with a bh variant, just have a hard irq safe variant that everyone can use. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/team')
-rw-r--r--drivers/net/team/team.c4
-rw-r--r--drivers/net/team/team_mode_loadbalance.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c
index aea92f02401b..2b1a1d61072c 100644
--- a/drivers/net/team/team.c
+++ b/drivers/net/team/team.c
@@ -1761,13 +1761,13 @@ team_get_stats64(struct net_device *dev, struct rtnl_link_stats64 *stats)
1761 for_each_possible_cpu(i) { 1761 for_each_possible_cpu(i) {
1762 p = per_cpu_ptr(team->pcpu_stats, i); 1762 p = per_cpu_ptr(team->pcpu_stats, i);
1763 do { 1763 do {
1764 start = u64_stats_fetch_begin_bh(&p->syncp); 1764 start = u64_stats_fetch_begin_irq(&p->syncp);
1765 rx_packets = p->rx_packets; 1765 rx_packets = p->rx_packets;
1766 rx_bytes = p->rx_bytes; 1766 rx_bytes = p->rx_bytes;
1767 rx_multicast = p->rx_multicast; 1767 rx_multicast = p->rx_multicast;
1768 tx_packets = p->tx_packets; 1768 tx_packets = p->tx_packets;
1769 tx_bytes = p->tx_bytes; 1769 tx_bytes = p->tx_bytes;
1770 } while (u64_stats_fetch_retry_bh(&p->syncp, start)); 1770 } while (u64_stats_fetch_retry_irq(&p->syncp, start));
1771 1771
1772 stats->rx_packets += rx_packets; 1772 stats->rx_packets += rx_packets;
1773 stats->rx_bytes += rx_bytes; 1773 stats->rx_bytes += rx_bytes;
diff --git a/drivers/net/team/team_mode_loadbalance.c b/drivers/net/team/team_mode_loadbalance.c
index d671fc3ac5ac..dbde3412ee5e 100644
--- a/drivers/net/team/team_mode_loadbalance.c
+++ b/drivers/net/team/team_mode_loadbalance.c
@@ -432,9 +432,9 @@ static void __lb_one_cpu_stats_add(struct lb_stats *acc_stats,
432 struct lb_stats tmp; 432 struct lb_stats tmp;
433 433
434 do { 434 do {
435 start = u64_stats_fetch_begin_bh(syncp); 435 start = u64_stats_fetch_begin_irq(syncp);
436 tmp.tx_bytes = cpu_stats->tx_bytes; 436 tmp.tx_bytes = cpu_stats->tx_bytes;
437 } while (u64_stats_fetch_retry_bh(syncp, start)); 437 } while (u64_stats_fetch_retry_irq(syncp, start));
438 acc_stats->tx_bytes += tmp.tx_bytes; 438 acc_stats->tx_bytes += tmp.tx_bytes;
439} 439}
440 440