Date: Thu, 19 Mar 2009 01:43:03 +0000 (UTC) From: Bruce M Simpson <bms@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src UPDATING src/sys/modules/ip6_mroute_mod Makefile src/sys/modules/ip_mroute_mod Makefile src/sys/netinet ip_mroute.c ip_mroute.h src/sys/netinet6 ip6_mroute.c ip6_mroute.h src/usr.bin/netstat main.c mroute.c netstat.h Message-ID: <200903190147.n2J1l5IK062336@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
bms 2009-03-19 01:43:03 UTC FreeBSD src repository Modified files: . UPDATING sys/modules/ip_mroute_mod Makefile sys/netinet ip_mroute.c ip_mroute.h sys/netinet6 ip6_mroute.c ip6_mroute.h usr.bin/netstat main.c mroute.c netstat.h Added files: sys/modules/ip6_mroute_mod Makefile Log: SVN rev 190012 on 2009-03-19 01:43:03Z by bms Introduce a number of changes to the MROUTING code. This is purely a forwarding plane cleanup; no control plane code is involved. Summary: * Split IPv4 and IPv6 MROUTING support. The static compile-time kernel option remains the same, however, the modules may now be built for IPv4 and IPv6 separately as ip_mroute_mod and ip6_mroute_mod. * Clean up the IPv4 multicast forwarding code to use BSD queue and hash table constructs. Don't build our own timer abstractions when ratecheck() and timevalclear() etc will do. * Expose the multicast forwarding cache (MFC) and virtual interface table (VIF) as sysctls, to reduce netstat's dependence on libkvm for this information for running kernels. * bandwidth meters however still require libkvm. * Make the MFC hash table size a boot/load-time tunable ULONG, net.inet.ip.mfchashsize (defaults to 256). * Remove unused members from struct vif and struct mfc. * Kill RSVP support, as no current RSVP implementation uses it. These stubs could be moved to raw_ip.c. * Don't share locks or initialization between IPv4 and IPv6. * Don't use a static struct route_in6 in ip6_mroute.c. The v6 code is still using a cached struct route_in6, this is moved to mif6 for the time being. * More cleanup remains to be merged from ip_mroute.c to ip6_mroute.c. v4 path tested using ports/net/mcast-tools. v6 changes are mostly mechanical locking and *have not* been tested. As these changes partially break some kernel ABIs, they will not be MFCed. There is a lot more work to be done here. Reviewed by: Pavlin Radoslavov Revision Changes Path 1.584 +7 -0 src/UPDATING 1.1 +19 -0 src/sys/modules/ip6_mroute_mod/Makefile (new) 1.18 +0 -9 src/sys/modules/ip_mroute_mod/Makefile 1.144 +410 -611 src/sys/netinet/ip_mroute.c 1.33 +4 -20 src/sys/netinet/ip_mroute.h 1.54 +267 -129 src/sys/netinet6/ip6_mroute.c 1.14 +1 -1 src/sys/netinet6/ip6_mroute.h 1.96 +6 -3 src/usr.bin/netstat/main.c 1.32 +189 -117 src/usr.bin/netstat/mroute.c 1.58 +1 -1 src/usr.bin/netstat/netstat.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903190147.n2J1l5IK062336>