From owner-cvs-src-old@FreeBSD.ORG Thu Mar 19 01:47:05 2009 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id BBE73106568E for ; Thu, 19 Mar 2009 01:47:05 +0000 (UTC) (envelope-from bms@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 8A5898FC21 for ; Thu, 19 Mar 2009 01:47:05 +0000 (UTC) (envelope-from bms@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n2J1l5XR062337 for ; Thu, 19 Mar 2009 01:47:05 GMT (envelope-from bms@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n2J1l5IK062336 for cvs-src-old@freebsd.org; Thu, 19 Mar 2009 01:47:05 GMT (envelope-from bms@repoman.freebsd.org) Message-Id: <200903190147.n2J1l5IK062336@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to bms@repoman.freebsd.org using -f From: Bruce M Simpson Date: Thu, 19 Mar 2009 01:43:03 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD 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 X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Mar 2009 01:47:06 -0000 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