r8169: add checking driver's runtime pm status in rtl8169_get_ethtool_stats()
Not to call rtl8169_update_counters() to dump tally counter when driver is in runtime suspend state. Calling rtl8169_update_counters() in runtime suspend state will produce warning message "rtl_counters_cond == 1 (loop: 1000, delay: 10)". Signed-off-by: Chunhao Lin <hau@realtek.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
5fa80a326d
commit
e06362369a
|
@ -2308,11 +2308,17 @@ static void rtl8169_get_ethtool_stats(struct net_device *dev,
|
|||
struct ethtool_stats *stats, u64 *data)
|
||||
{
|
||||
struct rtl8169_private *tp = netdev_priv(dev);
|
||||
struct device *d = &tp->pci_dev->dev;
|
||||
struct rtl8169_counters *counters = tp->counters;
|
||||
|
||||
ASSERT_RTNL();
|
||||
|
||||
rtl8169_update_counters(dev);
|
||||
pm_runtime_get_noresume(d);
|
||||
|
||||
if (pm_runtime_active(d))
|
||||
rtl8169_update_counters(dev);
|
||||
|
||||
pm_runtime_put_noidle(d);
|
||||
|
||||
data[0] = le64_to_cpu(counters->tx_packets);
|
||||
data[1] = le64_to_cpu(counters->rx_packets);
|
||||
|
|
Loading…
Reference in New Issue