Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Feb 2015 22:17:13 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r279255 - in head/sys/dev: e1000 ixgbe ixl
Message-ID:  <201502242217.t1OMHDmQ069257@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Tue Feb 24 22:17:12 2015
New Revision: 279255
URL: https://svnweb.freebsd.org/changeset/base/279255

Log:
  Change uses of taskqueue_start_threads_pinned() -> taskqueue_start_threads_cpuset()
  
  Differential Revision:	https://reviews.freebsd.org/D1897
  Reviewed by:	jfv

Modified:
  head/sys/dev/e1000/if_igb.c
  head/sys/dev/ixgbe/ixgbe.c
  head/sys/dev/ixl/if_ixl.c
  head/sys/dev/ixl/if_ixlv.c

Modified: head/sys/dev/e1000/if_igb.c
==============================================================================
--- head/sys/dev/e1000/if_igb.c	Tue Feb 24 22:11:07 2015	(r279254)
+++ head/sys/dev/e1000/if_igb.c	Tue Feb 24 22:17:12 2015	(r279255)
@@ -2460,6 +2460,9 @@ igb_allocate_msix(struct adapter *adapte
 	struct igb_queue	*que = adapter->queues;
 	int			error, rid, vector = 0;
 	int			cpu_id = 0;
+#ifdef	RSS
+	cpuset_t cpu_mask;
+#endif
 
 	/* Be sure to start with all interrupts disabled */
 	E1000_WRITE_REG(&adapter->hw, E1000_IMC, ~0);
@@ -2566,8 +2569,10 @@ igb_allocate_msix(struct adapter *adapte
 			 * round-robin bucket -> queue -> CPU allocation.
 			 */
 #ifdef	RSS
-			taskqueue_start_threads_pinned(&que->tq, 1, PI_NET,
-			    cpu_id,
+			CPU_ZERO(&cpu_mask);
+			CPU_SET(cpu_id, &cpu_mask);
+			taskqueue_start_threads_cpuset(&que->tq, 1, PI_NET,
+			    &cpu_mask,
 			    "%s que (bucket %d)",
 			    device_get_nameunit(adapter->dev),
 			    cpu_id);

Modified: head/sys/dev/ixgbe/ixgbe.c
==============================================================================
--- head/sys/dev/ixgbe/ixgbe.c	Tue Feb 24 22:11:07 2015	(r279254)
+++ head/sys/dev/ixgbe/ixgbe.c	Tue Feb 24 22:17:12 2015	(r279255)
@@ -2373,6 +2373,9 @@ ixgbe_allocate_msix(struct adapter *adap
 	struct  	tx_ring *txr = adapter->tx_rings;
 	int 		error, rid, vector = 0;
 	int		cpu_id = 0;
+#ifdef	RSS
+	cpuset_t cpu_mask;
+#endif
 
 #ifdef	RSS
 	/*
@@ -2460,8 +2463,10 @@ ixgbe_allocate_msix(struct adapter *adap
 		que->tq = taskqueue_create_fast("ixgbe_que", M_NOWAIT,
 		    taskqueue_thread_enqueue, &que->tq);
 #ifdef	RSS
-		taskqueue_start_threads_pinned(&que->tq, 1, PI_NET,
-		    cpu_id,
+		CPU_ZERO(&cpu_mask);
+		CPU_SET(cpu_id, &cpu_mask);
+		taskqueue_start_threads_cpuset(&que->tq, 1, PI_NET,
+		    &cpu_mask,
 		    "%s (bucket %d)",
 		    device_get_nameunit(adapter->dev),
 		    cpu_id);

Modified: head/sys/dev/ixl/if_ixl.c
==============================================================================
--- head/sys/dev/ixl/if_ixl.c	Tue Feb 24 22:11:07 2015	(r279254)
+++ head/sys/dev/ixl/if_ixl.c	Tue Feb 24 22:17:12 2015	(r279255)
@@ -1880,6 +1880,9 @@ ixl_assign_vsi_msix(struct ixl_pf *pf)
 	struct 		ixl_queue *que = vsi->queues;
 	struct		tx_ring	 *txr;
 	int 		error, rid, vector = 0;
+#ifdef	RSS
+	cpuset_t cpu_mask;
+#endif
 
 	/* Admin Que is vector 0*/
 	rid = vector + 1;
@@ -1942,8 +1945,10 @@ ixl_assign_vsi_msix(struct ixl_pf *pf)
 		que->tq = taskqueue_create_fast("ixl_que", M_NOWAIT,
 		    taskqueue_thread_enqueue, &que->tq);
 #ifdef RSS
-		taskqueue_start_threads_pinned(&que->tq, 1, PI_NET,
-		    cpu_id, "%s (bucket %d)",
+		CPU_ZERO(&cpu_mask);
+		CPU_SET(cpu_id, &cpu_mask);
+		taskqueue_start_threads_cpuset(&que->tq, 1, PI_NET,
+		    &cpu_mask, "%s (bucket %d)",
 		    device_get_nameunit(dev), cpu_id);
 #else
 		taskqueue_start_threads(&que->tq, 1, PI_NET,

Modified: head/sys/dev/ixl/if_ixlv.c
==============================================================================
--- head/sys/dev/ixl/if_ixlv.c	Tue Feb 24 22:11:07 2015	(r279254)
+++ head/sys/dev/ixl/if_ixlv.c	Tue Feb 24 22:17:12 2015	(r279255)
@@ -1382,6 +1382,9 @@ ixlv_assign_msix(struct ixlv_sc *sc)
 	struct 		ixl_queue *que = vsi->queues;
 	struct		tx_ring	 *txr;
 	int 		error, rid, vector = 1;
+#ifdef	RSS
+	cpuset_t cpu_mask;
+#endif
 
 	for (int i = 0; i < vsi->num_queues; i++, vector++, que++) {
 		int cpu_id = i;
@@ -1416,8 +1419,10 @@ ixlv_assign_msix(struct ixlv_sc *sc)
 		que->tq = taskqueue_create_fast("ixlv_que", M_NOWAIT,
 		    taskqueue_thread_enqueue, &que->tq);
 #ifdef RSS
-		taskqueue_start_threads_pinned(&que->tq, 1, PI_NET,
-		    cpu_id, "%s (bucket %d)",
+		CPU_ZERO(&cpu_mask);
+		CPU_SET(cpu_id, &cpu_mask);
+		taskqueue_start_threads_cpuset(&que->tq, 1, PI_NET,
+		    &cpu_mask, "%s (bucket %d)",
 		    device_get_nameunit(dev), cpu_id);
 #else
                 taskqueue_start_threads(&que->tq, 1, PI_NET,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502242217.t1OMHDmQ069257>