diff options
author | adrian <adrian@FreeBSD.org> | 2015-02-24 22:17:12 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2015-02-24 22:17:12 +0000 |
commit | fb45b18a632431fb6067cb119924327d6aaf2783 (patch) | |
tree | 52cfef9e898c544e5b26d56688d32929fb19abe7 | |
parent | 3903a681113acec3726f42bff3025abf877608e5 (diff) | |
download | FreeBSD-src-fb45b18a632431fb6067cb119924327d6aaf2783.zip FreeBSD-src-fb45b18a632431fb6067cb119924327d6aaf2783.tar.gz |
Change uses of taskqueue_start_threads_pinned() -> taskqueue_start_threads_cpuset()
Differential Revision: https://reviews.freebsd.org/D1897
Reviewed by: jfv
-rw-r--r-- | sys/dev/e1000/if_igb.c | 9 | ||||
-rw-r--r-- | sys/dev/ixgbe/ixgbe.c | 9 | ||||
-rwxr-xr-x | sys/dev/ixl/if_ixl.c | 9 | ||||
-rw-r--r-- | sys/dev/ixl/if_ixlv.c | 9 |
4 files changed, 28 insertions, 8 deletions
diff --git a/sys/dev/e1000/if_igb.c b/sys/dev/e1000/if_igb.c index c875945..ad6fcc5 100644 --- a/sys/dev/e1000/if_igb.c +++ b/sys/dev/e1000/if_igb.c @@ -2460,6 +2460,9 @@ igb_allocate_msix(struct adapter *adapter) 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 *adapter) * 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); diff --git a/sys/dev/ixgbe/ixgbe.c b/sys/dev/ixgbe/ixgbe.c index 7231c56..d70bbcc 100644 --- a/sys/dev/ixgbe/ixgbe.c +++ b/sys/dev/ixgbe/ixgbe.c @@ -2373,6 +2373,9 @@ ixgbe_allocate_msix(struct adapter *adapter) 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 *adapter) 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); diff --git a/sys/dev/ixl/if_ixl.c b/sys/dev/ixl/if_ixl.c index ca34f62..61aef44 100755 --- a/sys/dev/ixl/if_ixl.c +++ b/sys/dev/ixl/if_ixl.c @@ -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, diff --git a/sys/dev/ixl/if_ixlv.c b/sys/dev/ixl/if_ixlv.c index f1e106e..836853f 100644 --- a/sys/dev/ixl/if_ixlv.c +++ b/sys/dev/ixl/if_ixlv.c @@ -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, |