Moshe Shemesh
8c702a53bb
net/mlx5: Fix frequent ioread PCI access during recovery
...
High frequency of PCI ioread calls during recovery flow may cause the
following trace on powerpc:
[ 248.670288] EEH: 2100000 reads ignored for recovering device at
location=Slot1 driver=mlx5_core pci addr=0000:01:00.1
[ 248.670331] EEH: Might be infinite loop in mlx5_core driver
[ 248.670361] CPU: 2 PID: 35247 Comm: kworker/u192:11 Kdump: loaded
Tainted: G OE ------------ 4.14.0-115.14.1.el7a.ppc64le #1
[ 248.670425] Workqueue: mlx5_health0000:01:00.1 health_recover_work
[mlx5_core]
[ 248.670471] Call Trace:
[ 248.670492] [c00020391c11b960] [c000000000c217ac] dump_stack+0xb0/0xf4
(unreliable)
[ 248.670548] [c00020391c11b9a0] [c000000000045818]
eeh_check_failure+0x5c8/0x630
[ 248.670631] [c00020391c11ba50] [c00000000068fce4]
ioread32be+0x114/0x1c0
[ 248.670692] [c00020391c11bac0] [c00800000dd8b400]
mlx5_error_sw_reset+0x160/0x510 [mlx5_core]
[ 248.670752] [c00020391c11bb60] [c00800000dd75824]
mlx5_disable_device+0x34/0x1d0 [mlx5_core]
[ 248.670822] [c00020391c11bbe0] [c00800000dd8affc]
health_recover_work+0x11c/0x3c0 [mlx5_core]
[ 248.670891] [c00020391c11bc80] [c000000000164fcc]
process_one_work+0x1bc/0x5f0
[ 248.670955] [c00020391c11bd20] [c000000000167f8c]
worker_thread+0xac/0x6b0
[ 248.671015] [c00020391c11bdc0] [c000000000171618] kthread+0x168/0x1b0
[ 248.671067] [c00020391c11be30] [c00000000000b65c]
ret_from_kernel_thread+0x5c/0x80
Reduce the PCI ioread frequency during recovery by using msleep()
instead of cond_resched()
Fixes: 3e5b72ac2f29 ("net/mlx5: Issue SW reset on FW assert")
Signed-off-by: Moshe Shemesh <moshe@mellanox.com>
Reviewed-by: Feras Daoud <ferasda@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
2020-04-08 15:46:36 -07:00
..
2020-03-12 22:34:48 -07:00
2020-03-15 17:06:22 -07:00
2020-04-01 11:22:35 -07:00
2020-04-07 18:28:28 -07:00
2020-04-08 15:46:36 -07:00
2020-03-04 14:21:00 -08:00
2020-03-30 19:43:42 -07:00
2020-02-29 14:39:08 +01:00
2020-03-21 19:46:43 -07:00
2020-03-09 18:32:03 -07:00
2020-03-30 20:14:22 -07:00
2020-04-07 18:33:48 -07:00
2020-03-12 22:34:48 -07:00
2020-03-03 13:28:48 -08:00
2020-04-02 17:58:25 -07:00
2020-03-06 22:45:55 -08:00
2020-04-03 13:12:26 -07:00
2020-04-06 10:20:03 -07:00
2020-03-25 12:24:33 -07:00
2020-03-31 17:29:33 -07:00
2020-03-11 22:54:27 -07:00
2020-02-24 11:23:36 -08:00
2020-03-15 00:42:35 -07:00
2020-03-25 12:24:33 -07:00
2020-03-25 18:58:11 -07:00
2020-04-06 10:26:08 -07:00
2020-03-09 18:02:19 -07:00
2020-03-08 22:07:10 -07:00
2020-04-06 10:00:43 -07:00
2020-03-26 19:35:13 -07:00
2020-03-05 12:12:35 -08:00
2020-03-23 21:57:44 -07:00
2020-03-18 16:43:12 -07:00