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
pgp1KJZZ283rO.pgp
Description: PGP signature