summaryrefslogtreecommitdiffstats
path: root/sys/netinet
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2009-08-25 09:52:38 +0000
committerrwatson <rwatson@FreeBSD.org>2009-08-25 09:52:38 +0000
commit544dfa0789561f2dbb98a7740453fce7aeea4f5b (patch)
tree4a34d8a5aab4678ff905e0a94bd345c9b1c8d805 /sys/netinet
parent6aac59f9fa910996e553304fbd819aedc2abb25d (diff)
downloadFreeBSD-src-544dfa0789561f2dbb98a7740453fce7aeea4f5b.zip
FreeBSD-src-544dfa0789561f2dbb98a7740453fce7aeea4f5b.tar.gz
Use locks specific to the lltable code, rather than borrow the ifnet
list/index locks, to protect link layer address tables. This avoids lock order issues during interface teardown, but maintains the bug that sysctl copy routines may be called while a non-sleepable lock is held. Reviewed by: bz, kmacy MFC after: 3 days
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/in.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/in.c b/sys/netinet/in.c
index 8c9984c..203f9e6 100644
--- a/sys/netinet/in.c
+++ b/sys/netinet/in.c
@@ -1407,7 +1407,7 @@ in_lltable_dump(struct lltable *llt, struct sysctl_req *wr)
} arpc;
int error, i;
- IFNET_RLOCK_ASSERT();
+ LLTABLE_LOCK_ASSERT();
error = 0;
for (i = 0; i < LLTBL_HASHTBL_SIZE; i++) {
OpenPOWER on IntegriCloud