summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYunsheng Lin <linyunsheng@huawei.com>2019-10-31 19:23:17 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-12-31 16:35:31 +0100
commite7e11c087b7e31ecf5f5d1ba58825a3010193c55 (patch)
tree7a5bb1012635229af19380a1e1bce95a3cfd03ca
parent8eaee8c574a72d049ed213041cde6705f00e98f2 (diff)
downloadlinux-e7e11c087b7e31ecf5f5d1ba58825a3010193c55.tar.gz
linux-e7e11c087b7e31ecf5f5d1ba58825a3010193c55.tar.bz2
linux-e7e11c087b7e31ecf5f5d1ba58825a3010193c55.zip
net: hns3: add struct netdev_queue debug info for TX timeout
[ Upstream commit 647522a5ef6401dcdb8ec417421e43fb21910167 ] When there is a TX timeout, we can tell if the driver or stack has stopped the queue by looking at state field, and when has the last packet transmited by looking at trans_start field. So this patch prints these two field in the hns3_get_tx_timeo_queue_info(). Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com> Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/hisilicon/hns3/hns3_enet.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
index 0788e78747d9..1aaf6e2a3b39 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
@@ -1474,6 +1474,9 @@ static bool hns3_get_tx_timeo_queue_info(struct net_device *ndev)
time_after(jiffies,
(trans_start + ndev->watchdog_timeo))) {
timeout_queue = i;
+ netdev_info(ndev, "queue state: 0x%lx, delta msecs: %u\n",
+ q->state,
+ jiffies_to_msecs(jiffies - trans_start));
break;
}
}