The branch main has been updated by hselasky:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=4692d9808e61958675d91ec595b5732c8d1fa700

commit 4692d9808e61958675d91ec595b5732c8d1fa700
Author:     Hans Petter Selasky <[email protected]>
AuthorDate: 2021-06-16 13:01:56 +0000
Commit:     Hans Petter Selasky <[email protected]>
CommitDate: 2021-07-12 12:22:33 +0000

    mlx5en: Check for pci_channel_offline() when draining sendqueue.
    
    This speeds up detach in hypervisor environments.
    
    MFC after:      1 week
    Reviewed by:    kib
    Sponsored by:   Mellanox Technologies // NVIDIA Networking
---
 sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c 
b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
index fc9ffc01a0df..97438de3bc2a 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
@@ -1875,7 +1875,8 @@ mlx5e_drain_sq(struct mlx5e_sq *sq)
        mtx_lock(&sq->lock);
        while (sq->cc != sq->pc &&
            (sq->priv->media_status_last & IFM_ACTIVE) != 0 &&
-           mdev->state != MLX5_DEVICE_STATE_INTERNAL_ERROR) {
+           mdev->state != MLX5_DEVICE_STATE_INTERNAL_ERROR &&
+           pci_channel_offline(mdev->pdev) == 0) {
                mtx_unlock(&sq->lock);
                msleep(1);
                sq->cq.mcq.comp(&sq->cq.mcq, NULL);
@@ -1893,7 +1894,8 @@ mlx5e_drain_sq(struct mlx5e_sq *sq)
        /* wait till SQ is empty */
        mtx_lock(&sq->lock);
        while (sq->cc != sq->pc &&
-              mdev->state != MLX5_DEVICE_STATE_INTERNAL_ERROR) {
+              mdev->state != MLX5_DEVICE_STATE_INTERNAL_ERROR &&
+              pci_channel_offline(mdev->pdev) == 0) {
                mtx_unlock(&sq->lock);
                msleep(1);
                sq->cq.mcq.comp(&sq->cq.mcq, NULL);
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-main
To unsubscribe, send any mail to "[email protected]"

Reply via email to