[PATCH]Bug in lib/brlock.c

Takanori Kawano (t-kawano@ebina.hitachi.co.jp)
Mon, 23 Apr 2001 20:01:12 +0900 (JST)


I think lib/brlock.c need to be fixed as:

--- lib/brlock.c Tue Apr 25 05:59:56 2000
+++ lib/brlock.c.fixed Mon Apr 23 19:56:43 2001
@@ -25,7 +25,7 @@
int i;

for (i = 0; i < smp_num_cpus; i++)
- write_lock(__brlock_array[idx] + cpu_logical_map(i));
+ write_lock(&__brlock_array[cpu_logical_map(i)][idx]);
}

void __br_write_unlock (enum brlock_indices idx)
@@ -33,7 +33,7 @@
int i;

for (i = 0; i < smp_num_cpus; i++)
- write_unlock(__brlock_array[idx] + cpu_logical_map(i));
+ write_unlock(&__brlock_array[cpu_logical_map(i)][idx]);
}

#else /* ! __BRLOCK_USE_ATOMICS */

For the above, 2.4.1 kernel often panics on our socket onen/close
stress testing.

regards,

---
Takanori Kawano
Hitachi Ltd,
Internet Systems Platform Division
t-kawano@ebina.hitachi.co.jp

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/