svn commit: r353321 - head/sys/dev/mlx5/mlx5_en

Hans Petter Selasky hselasky at FreeBSD.org
Tue Oct 8 19:49:26 UTC 2019


Author: hselasky
Date: Tue Oct  8 19:49:25 2019
New Revision: 353321
URL: https://svnweb.freebsd.org/changeset/base/353321

Log:
  Fix regression issue after r352989:
  
  As noted by the commit message, callouts are now persistant
  and should not be in the auto-zero section of the RQ's and SQ's.
  This fixes an assert when using the TX completion event
  factor feature with mlx5en(4).
  
  Found by:	gallatin@
  MFC after:	3 days
  Sponsored by:	Mellanox Technologies

Modified:
  head/sys/dev/mlx5/mlx5_en/en.h

Modified: head/sys/dev/mlx5/mlx5_en/en.h
==============================================================================
--- head/sys/dev/mlx5/mlx5_en/en.h	Tue Oct  8 18:58:23 2019	(r353320)
+++ head/sys/dev/mlx5/mlx5_en/en.h	Tue Oct  8 19:49:25 2019	(r353321)
@@ -748,6 +748,7 @@ struct mlx5e_rq {
 	/* persistant fields */
 	struct mtx mtx;
 	struct mlx5e_rq_stats stats;
+	struct callout watchdog;
 
 	/* data path */
 #define	mlx5e_rq_zero_start wq
@@ -769,7 +770,6 @@ struct mlx5e_rq {
 	struct mlx5_wq_ctrl wq_ctrl;
 	u32	rqn;
 	struct mlx5e_channel *channel;
-	struct callout watchdog;
 } __aligned(MLX5E_CACHELINE_SIZE);
 
 struct mlx5e_sq_mbuf {
@@ -794,6 +794,7 @@ struct mlx5e_sq {
 	struct	mtx lock;
 	struct	mtx comp_lock;
 	struct	mlx5e_sq_stats stats;
+  	struct	callout cev_callout;
 
 	/* data path */
 #define	mlx5e_sq_zero_start dma_tag
@@ -812,7 +813,6 @@ struct mlx5e_sq {
 #define	MLX5E_CEV_STATE_SEND_NOPS 1	/* send NOPs */
 #define	MLX5E_CEV_STATE_HOLD_NOPS 2	/* don't send NOPs yet */
 	u16	running;		/* set if SQ is running */
-	struct callout cev_callout;
 	union {
 		u32	d32[2];
 		u64	d64;


More information about the svn-src-all mailing list