summaryrefslogtreecommitdiffstats
path: root/sys/net
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2010-06-11 18:46:34 +0000
committerjhb <jhb@FreeBSD.org>2010-06-11 18:46:34 +0000
commit9b74a62d735d756ad10a232bb6b9bf1d5803a473 (patch)
tree6823a317037813f606c0b52d6cfa18c924eb9a1d /sys/net
parent4945d8d26d66a088d72189bf54f9678981e78766 (diff)
downloadFreeBSD-src-9b74a62d735d756ad10a232bb6b9bf1d5803a473.zip
FreeBSD-src-9b74a62d735d756ad10a232bb6b9bf1d5803a473.tar.gz
Update several places that iterate over CPUs to use CPU_FOREACH().
Diffstat (limited to 'sys/net')
-rw-r--r--sys/net/flowtable.c18
-rw-r--r--sys/net/if_epair.c15
-rw-r--r--sys/net/netisr.c32
3 files changed, 15 insertions, 50 deletions
diff --git a/sys/net/flowtable.c b/sys/net/flowtable.c
index b1fd15f..4988670 100644
--- a/sys/net/flowtable.c
+++ b/sys/net/flowtable.c
@@ -328,9 +328,7 @@ flowtable_show_stats(struct sbuf *sb, struct flowtable *ft)
if (ft->ft_flags & FL_PCPU) {
bzero(&fs, sizeof(fs));
pfs = &fs;
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
pfs->ft_collisions += ft->ft_stats[i].ft_collisions;
pfs->ft_allocated += ft->ft_stats[i].ft_allocated;
pfs->ft_misses += ft->ft_stats[i].ft_misses;
@@ -1495,10 +1493,7 @@ flowtable_route_flush(struct flowtable *ft, struct rtentry *rt)
int i;
if (ft->ft_flags & FL_PCPU) {
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
-
+ CPU_FOREACH(i) {
if (smp_started == 1) {
thread_lock(curthread);
sched_bind(curthread, i);
@@ -1527,10 +1522,7 @@ flowtable_clean_vnet(void)
ft = V_flow_list_head;
while (ft != NULL) {
if (ft->ft_flags & FL_PCPU) {
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
-
+ CPU_FOREACH(i) {
if (smp_started == 1) {
thread_lock(curthread);
sched_bind(curthread, i);
@@ -1799,9 +1791,7 @@ flowtable_show_vnet(void)
while (ft != NULL) {
printf("name: %s\n", ft->ft_name);
if (ft->ft_flags & FL_PCPU) {
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
flowtable_show(ft, i);
}
} else {
diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c
index 3164182..13907e4 100644
--- a/sys/net/if_epair.c
+++ b/sys/net/if_epair.c
@@ -189,10 +189,7 @@ epair_dpcpu_init(void)
struct eid_list *s;
u_int cpuid;
- for (cpuid = 0; cpuid <= mp_maxid; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
-
+ CPU_FOREACH(cpuid) {
epair_dpcpu = DPCPU_ID_PTR(cpuid, epair_dpcpu);
/* Initialize per-cpu lock. */
@@ -217,10 +214,7 @@ epair_dpcpu_detach(void)
struct epair_dpcpu *epair_dpcpu;
u_int cpuid;
- for (cpuid = 0; cpuid <= mp_maxid; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
-
+ CPU_FOREACH(cpuid) {
epair_dpcpu = DPCPU_ID_PTR(cpuid, epair_dpcpu);
/* Destroy per-cpu lock. */
@@ -330,10 +324,7 @@ epair_remove_ifp_from_draining(struct ifnet *ifp)
struct epair_ifp_drain *elm, *tvar;
u_int cpuid;
- for (cpuid = 0; cpuid <= mp_maxid; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
-
+ CPU_FOREACH(cpuid) {
epair_dpcpu = DPCPU_ID_PTR(cpuid, epair_dpcpu);
EPAIR_LOCK(epair_dpcpu);
STAILQ_FOREACH_SAFE(elm, &epair_dpcpu->epair_ifp_drain_list,
diff --git a/sys/net/netisr.c b/sys/net/netisr.c
index 4ac1fae..6df544d 100644
--- a/sys/net/netisr.c
+++ b/sys/net/netisr.c
@@ -339,9 +339,7 @@ netisr_register(const struct netisr_handler *nhp)
} else
netisr_proto[proto].np_qlimit = nhp->nh_qlimit;
netisr_proto[proto].np_policy = nhp->nh_policy;
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
npwp = &(DPCPU_ID_PTR(i, nws))->nws_work[proto];
bzero(npwp, sizeof(*npwp));
npwp->nw_qlimit = netisr_proto[proto].np_qlimit;
@@ -373,9 +371,7 @@ netisr_clearqdrops(const struct netisr_handler *nhp)
("%s(%u): protocol not registered for %s", __func__, proto,
name));
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
npwp = &(DPCPU_ID_PTR(i, nws))->nws_work[proto];
npwp->nw_qdrops = 0;
}
@@ -408,9 +404,7 @@ netisr_getqdrops(const struct netisr_handler *nhp, u_int64_t *qdropp)
("%s(%u): protocol not registered for %s", __func__, proto,
name));
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
npwp = &(DPCPU_ID_PTR(i, nws))->nws_work[proto];
*qdropp += npwp->nw_qdrops;
}
@@ -474,9 +468,7 @@ netisr_setqlimit(const struct netisr_handler *nhp, u_int qlimit)
name));
netisr_proto[proto].np_qlimit = qlimit;
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
npwp = &(DPCPU_ID_PTR(i, nws))->nws_work[proto];
npwp->nw_qlimit = qlimit;
}
@@ -540,9 +532,7 @@ netisr_unregister(const struct netisr_handler *nhp)
netisr_proto[proto].np_m2cpuid = NULL;
netisr_proto[proto].np_qlimit = 0;
netisr_proto[proto].np_policy = 0;
- for (i = 0; i <= mp_maxid; i++) {
- if (CPU_ABSENT(i))
- continue;
+ CPU_FOREACH(i) {
npwp = &(DPCPU_ID_PTR(i, nws))->nws_work[proto];
netisr_drain_proto(npwp);
bzero(npwp, sizeof(*npwp));
@@ -1136,9 +1126,7 @@ sysctl_netisr_workstream(SYSCTL_HANDLER_ARGS)
M_ZERO | M_WAITOK);
counter = 0;
NETISR_RLOCK(&tracker);
- for (cpuid = 0; cpuid < MAXCPU; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
+ CPU_FOREACH(cpuid) {
nwsp = DPCPU_ID_PTR(cpuid, nws);
if (nwsp->nws_intr_event == NULL)
continue;
@@ -1192,9 +1180,7 @@ sysctl_netisr_work(SYSCTL_HANDLER_ARGS)
M_TEMP, M_ZERO | M_WAITOK);
counter = 0;
NETISR_RLOCK(&tracker);
- for (cpuid = 0; cpuid < MAXCPU; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
+ CPU_FOREACH(cpuid) {
nwsp = DPCPU_ID_PTR(cpuid, nws);
if (nwsp->nws_intr_event == NULL)
continue;
@@ -1243,9 +1229,7 @@ DB_SHOW_COMMAND(netisr, db_show_netisr)
db_printf("%3s %6s %5s %5s %5s %8s %8s %8s %8s\n", "CPU", "Proto",
"Len", "WMark", "Max", "Disp", "HDisp", "Drop", "Queue");
- for (cpuid = 0; cpuid <= mp_maxid; cpuid++) {
- if (CPU_ABSENT(cpuid))
- continue;
+ CPU_FOREACH(cpuid) {
nwsp = DPCPU_ID_PTR(cpuid, nws);
if (nwsp->nws_intr_event == NULL)
continue;
OpenPOWER on IntegriCloud