aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authordavem <davem>2000-04-15 05:42:25 +0000
committerdavem <davem>2000-04-15 05:42:25 +0000
commit3d9ab96f0076a176cbd1478a196f5b6d4831baba (patch)
tree44635dcb4c45b47725dad31d9e0fb590950c76f8 /lib
parent6aaeea08c287086f03d6be4dc136129bcdd6262d (diff)
downloadnetdev-vger-cvs-3d9ab96f0076a176cbd1478a196f5b6d4831baba.tar.gz
We need to use cpu_logical_map to get a hwcpu
index from a linear number, duh.
Diffstat (limited to 'lib')
-rw-r--r--lib/brlock.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/brlock.c b/lib/brlock.c
index 3c3577309..046b6dc1c 100644
--- a/lib/brlock.c
+++ b/lib/brlock.c
@@ -25,7 +25,7 @@ void __br_write_lock (enum brlock_indices idx)
int i;
for (i = 0; i < smp_num_cpus; i++)
- write_lock(__brlock_array[idx] + i);
+ write_lock(__brlock_array[idx] + cpu_logical_map(i));
}
void __br_write_unlock (enum brlock_indices idx)
@@ -33,7 +33,7 @@ void __br_write_unlock (enum brlock_indices idx)
int i;
for (i = 0; i < smp_num_cpus; i++)
- write_unlock(__brlock_array[idx] + i);
+ write_unlock(__brlock_array[idx] + cpu_logical_map(i));
}
#else /* ! __BRLOCK_USE_ATOMICS */
@@ -51,7 +51,7 @@ void __br_write_lock (enum brlock_indices idx)
spin_lock(&__br_write_locks[idx].lock);
again:
for (i = 0; i < smp_num_cpus; i++)
- if (__brlock_array[i][idx] != 0)
+ if (__brlock_array[cpu_logical_map(i)][idx] != 0)
goto again;
}