This should be interesting to people on this list.  Please test Bruce's 
changes and report back.  I believe it should be possible/trival to 
provide a patch for RELENG_6, but I don't have time right now.  I will 
provide one tomorrow - unless Bruce is quicker.  I believe people seeing 
this trouble with CARP and/or pfsync are on this list.

----------  Forwarded Message  ----------

Subject: cvs commit: src/sys/net if.c if_var.h src/sys/netgraph ng_ether.c 
src/sys/netinet in.c in_var.h src/sys/netinet6 mld6.c
Date: Tuesday 20 March 2007 01:36
From: Bruce M Simpson <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED], [EMAIL PROTECTED], cvs-all@freebsd.org

bms         2007-03-20 00:36:11 UTC

  FreeBSD src repository

  Modified files:
    sys/net              if.c if_var.h
    sys/netgraph         ng_ether.c
    sys/netinet          in.c in_var.h
    sys/netinet6         mld6.c
  Log:
  Implement reference counting for ifmultiaddr, in_multi, and in6_multi
  structures. Detect when ifnet instances are detached from the network
  stack and perform appropriate cleanup to prevent memory leaks.

  This has been implemented in such a way as to be backwards ABI
 compatible. Kernel consumers are changed to use if_delmulti_ifma();
 in_delmulti() is unable to detect interface removal by design, as it
 performs searches on structures which are removed with the interface.

  With this architectural change, the panics FreeBSD users have
 experienced with carp and pfsync should be resolved.

  Obtained from:  p4 branch bms_netdev
  Reviewed by:    andre
  Sponsored by:   Garance A Drosehn
  Idea from:      NetBSD
  MFC after:      1 month

  Revision  Changes    Path
  1.267     +193 -37   src/sys/net/if.c
  1.111     +2 -2      src/sys/net/if_var.h
  1.62      +18 -3     src/sys/netgraph/ng_ether.c
  1.97      +114 -74   src/sys/netinet/in.c
  1.60      +1 -1      src/sys/netinet/in_var.h
  1.29      +83 -72    src/sys/netinet6/mld6.c

-------------------------------------------------------

-- 
/"\  Best regards,                      | [EMAIL PROTECTED]
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | [EMAIL PROTECTED]
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News
bms         2007-03-20 00:36:11 UTC

  FreeBSD src repository

  Modified files:
    sys/net              if.c if_var.h 
    sys/netgraph         ng_ether.c 
    sys/netinet          in.c in_var.h 
    sys/netinet6         mld6.c 
  Log:
  Implement reference counting for ifmultiaddr, in_multi, and in6_multi
  structures. Detect when ifnet instances are detached from the network
  stack and perform appropriate cleanup to prevent memory leaks.
  
  This has been implemented in such a way as to be backwards ABI compatible.
  Kernel consumers are changed to use if_delmulti_ifma(); in_delmulti()
  is unable to detect interface removal by design, as it performs searches
  on structures which are removed with the interface.
  
  With this architectural change, the panics FreeBSD users have experienced
  with carp and pfsync should be resolved.
  
  Obtained from:  p4 branch bms_netdev
  Reviewed by:    andre
  Sponsored by:   Garance A Drosehn
  Idea from:      NetBSD
  MFC after:      1 month
  
  Revision  Changes    Path
  1.267     +193 -37   src/sys/net/if.c
  1.111     +2 -2      src/sys/net/if_var.h
  1.62      +18 -3     src/sys/netgraph/ng_ether.c
  1.97      +114 -74   src/sys/netinet/in.c
  1.60      +1 -1      src/sys/netinet/in_var.h
  1.29      +83 -72    src/sys/netinet6/mld6.c

Attachment: pgp1KJZZ283rO.pgp
Description: PGP signature

Reply via email to