Author: hselasky
Date: Mon Oct  7 10:25:46 2019
New Revision: 353258
URL: https://svnweb.freebsd.org/changeset/base/353258

Log:
  MFC r352993:
  Randomize the delay when waiting for VSC flag in mlx5core.
  
  The PRM suggests random 0 - 10ms to prevent multiple waiters on the same
  interval in order to avoid starvation.
  
  Submitted by: slavash@
  Sponsored by: Mellanox Technologies

Modified:
  stable/11/sys/dev/mlx5/mlx5_core/mlx5_vsc.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/mlx5/mlx5_core/mlx5_vsc.c
==============================================================================
--- stable/11/sys/dev/mlx5/mlx5_core/mlx5_vsc.c Mon Oct  7 10:25:08 2019        
(r353257)
+++ stable/11/sys/dev/mlx5/mlx5_core/mlx5_vsc.c Mon Oct  7 10:25:46 2019        
(r353258)
@@ -52,7 +52,7 @@ int mlx5_vsc_lock(struct mlx5_core_dev *mdev)
                         * The PRM suggests random 0 - 10ms to prevent multiple
                         * waiters on the same interval in order to avoid 
starvation
                         */
-                       DELAY((random() % 11) * 1000);
+                       DELAY((random() % 9000) + 1000);
                        continue;
                }
 
@@ -99,7 +99,7 @@ mlx5_vsc_wait_on_flag(struct mlx5_core_dev *mdev, u32 
                        break;
 
                retries++;
-               DELAY(10);
+               DELAY((random() % 90) + 10);
        }
 
        return 0;
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to