Skip site navigation (1)Skip section navigation (2)
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>