Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Mar 2009 03:45:34 +0000 (UTC)
From:      Bruce M Simpson <bms@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/netinet ip_output.c
Message-ID:  <200903040353.n243r655013511@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
bms         2009-03-04 03:45:34 UTC

  FreeBSD src repository

  Modified files:
    sys/netinet          ip_output.c 
  Log:
  SVN rev 189359 on 2009-03-04 03:45:34Z by bms
  
  In ip_output(), do not acquire the IN_MULTI_LOCK(),
  and do not attempt to perform a group lookup.
  This is a socket layer lock, and the bottom half of IP
  really has no business taking it.
  
  Use the value of the in_mcast_loop sysctl to determine
  if we should loop back by default, in the absence of
  any multicast socket options. Because the check on
  group membership is now deferred to the input path,
  an m_copym() is now required.
  
  This should increase multicast send performance where the
  source has not requested loopback, although this has not been
  benchmarked or measured.
  
  It is also a necessary change for IN_MULTI_LOCK to become
  non-recursive, which is required in order to implement IGMPv3
  in a thread-safe way.
  
  Revision  Changes    Path
  1.300     +14 -17    src/sys/netinet/ip_output.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903040353.n243r655013511>