Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4b02b58b authored by sixiao@microsoft.com's avatar sixiao@microsoft.com Committed by David S. Miller
Browse files

hv_netvsc: change member name of struct netvsc_stats



Currently the struct netvsc_stats has a member s_sync
of type u64_stats_sync.
This definition will break kernel build as the macro
netdev_alloc_pcpu_stats requires this member name to be syncp.
(see netdev_alloc_pcpu_stats definition in ./include/linux/netdevice.h)

This patch changes netvsc_stats's member name from s_sync to syncp to fix
the build break.

Signed-off-by: default avatarSimon Xiao <sixiao@microsoft.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 45d4122c
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -614,7 +614,7 @@ struct multi_send_data {
struct netvsc_stats {
	u64 packets;
	u64 bytes;
	struct u64_stats_sync s_sync;
	struct u64_stats_sync syncp;
};

/* The context of the netvsc device  */
+8 −8
Original line number Diff line number Diff line
@@ -580,10 +580,10 @@ static int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net)

drop:
	if (ret == 0) {
		u64_stats_update_begin(&tx_stats->s_sync);
		u64_stats_update_begin(&tx_stats->syncp);
		tx_stats->packets++;
		tx_stats->bytes += skb_length;
		u64_stats_update_end(&tx_stats->s_sync);
		u64_stats_update_end(&tx_stats->syncp);
	} else {
		if (ret != -EAGAIN) {
			dev_kfree_skb_any(skb);
@@ -692,10 +692,10 @@ int netvsc_recv_callback(struct hv_device *device_obj,
	skb_record_rx_queue(skb, packet->channel->
			    offermsg.offer.sub_channel_index);

	u64_stats_update_begin(&rx_stats->s_sync);
	u64_stats_update_begin(&rx_stats->syncp);
	rx_stats->packets++;
	rx_stats->bytes += packet->total_data_buflen;
	u64_stats_update_end(&rx_stats->s_sync);
	u64_stats_update_end(&rx_stats->syncp);

	/*
	 * Pass the skb back up. Network stack will deallocate the skb when it
@@ -776,16 +776,16 @@ static struct rtnl_link_stats64 *netvsc_get_stats64(struct net_device *net,
		unsigned int start;

		do {
			start = u64_stats_fetch_begin_irq(&tx_stats->s_sync);
			start = u64_stats_fetch_begin_irq(&tx_stats->syncp);
			tx_packets = tx_stats->packets;
			tx_bytes = tx_stats->bytes;
		} while (u64_stats_fetch_retry_irq(&tx_stats->s_sync, start));
		} while (u64_stats_fetch_retry_irq(&tx_stats->syncp, start));

		do {
			start = u64_stats_fetch_begin_irq(&rx_stats->s_sync);
			start = u64_stats_fetch_begin_irq(&rx_stats->syncp);
			rx_packets = rx_stats->packets;
			rx_bytes = rx_stats->bytes;
		} while (u64_stats_fetch_retry_irq(&rx_stats->s_sync, start));
		} while (u64_stats_fetch_retry_irq(&rx_stats->syncp, start));

		t->tx_bytes	+= tx_bytes;
		t->tx_packets	+= tx_packets;