svn commit: r353257 - stable/12/sys/dev/mlx5/mlx5_core

Hans Petter Selasky hselasky at FreeBSD.org
Mon Oct 7 10:25:09 UTC 2019


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

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/12/sys/dev/mlx5/mlx5_core/mlx5_vsc.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/mlx5/mlx5_core/mlx5_vsc.c
==============================================================================
--- stable/12/sys/dev/mlx5/mlx5_core/mlx5_vsc.c	Mon Oct  7 10:24:19 2019	(r353256)
+++ stable/12/sys/dev/mlx5/mlx5_core/mlx5_vsc.c	Mon Oct  7 10:25:08 2019	(r353257)
@@ -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;


More information about the svn-src-stable-12 mailing list