summaryrefslogtreecommitdiffstats
path: root/sys/netinet/in_rmx.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2003-11-03 06:11:44 +0000
committersam <sam@FreeBSD.org>2003-11-03 06:11:44 +0000
commit112f2c38060e509779b15374f516b20a821743f5 (patch)
tree078d948c5768c2248011cde8233ef2f19051126c /sys/netinet/in_rmx.c
parentcae05e711ac3f9fa462b268015797543ae72d9d6 (diff)
downloadFreeBSD-src-112f2c38060e509779b15374f516b20a821743f5.zip
FreeBSD-src-112f2c38060e509779b15374f516b20a821743f5.tar.gz
Remove bogus RTFREE that was added in rev 1.47. The rmx code operates
directly on the radix tree and does not hold any routing table refernces. This fixes the reference counting problems that manifested itself as a panic during unmount of filesystems that were mounted by NFS over an interface that had been removed. Supported by: FreeBSD Foundation
Diffstat (limited to 'sys/netinet/in_rmx.c')
-rw-r--r--sys/netinet/in_rmx.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/netinet/in_rmx.c b/sys/netinet/in_rmx.c
index 39f5eed..b762c29 100644
--- a/sys/netinet/in_rmx.c
+++ b/sys/netinet/in_rmx.c
@@ -388,9 +388,8 @@ in_ifadownkill(struct radix_node *rn, void *xap)
*/
rt->rt_flags &= ~(RTF_CLONING | RTF_PRCLONING);
rtexpunge(rt);
- RTFREE_LOCKED(rt);
- } else
- RT_UNLOCK(rt);
+ }
+ RT_UNLOCK(rt);
return 0;
}
OpenPOWER on IntegriCloud