From owner-freebsd-pf@FreeBSD.ORG Tue Mar 20 01:38:00 2007 Return-Path: X-Original-To: freebsd-pf@freebsd.org Delivered-To: freebsd-pf@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 210F816A400 for ; Tue, 20 Mar 2007 01:38:00 +0000 (UTC) (envelope-from max@love2party.net) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.177]) by mx1.freebsd.org (Postfix) with ESMTP id A2FC113C4C4 for ; Tue, 20 Mar 2007 01:37:59 +0000 (UTC) (envelope-from max@love2party.net) Received: from [88.64.188.203] (helo=amd64.laiers.local) by mrelayeu.kundenserver.de (node=mrelayeu8) with ESMTP (Nemesis), id 0ML31I-1HTTIU2QQH-0007W4; Tue, 20 Mar 2007 02:37:58 +0100 From: Max Laier Organization: FreeBSD Date: Tue, 20 Mar 2007 02:37:51 +0100 User-Agent: KMail/1.9.5 MIME-Version: 1.0 X-Face: ,,8R(x[kmU]tKN@>gtH1yQE4aslGdu+2]; R]*pL,U>^H?)gW@49@wdJ`H<%}*_BD U_or=\mOZf764&nYj=JYbR1PW0ud>|!~, , CPC.1-D$FG@0h3#'5"k{V]a~. X-Provags-ID: V01U2FsdGVkX18AV23pU4+g5oiUQzUoCsPq1WnsDrfbmBBYN1x d5xclN1Xqh4yt5yAeIhWd29/4usBggedAvs+JOfV5zs74O1hgX gH83I+DVnO8n46iFPu3tw== Cc: bsm@freebsd.org Subject: Fwd: 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 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Mar 2007 01:38:00 -0000 --nextPart1288505.p7N6uT0eD3 Content-Type: multipart/mixed; boundary="Boundary-01=_wrz/FEK2RiEqPl8" Content-Transfer-Encoding: 7bit Content-Disposition: inline --Boundary-01=_wrz/FEK2RiEqPl8 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline This should be interesting to people on this list. Please test Bruce's=20 changes and report back. I believe it should be possible/trival to=20 provide a patch for RELENG_6, but I don't have time right now. I will=20 provide one tomorrow - unless Bruce is quicker. I believe people seeing=20 this trouble with CARP and/or pfsync are on this list. =2D--------- Forwarded Message ---------- Subject: cvs commit: src/sys/net if.c if_var.h src/sys/netgraph ng_ether.c= =20 src/sys/netinet in.c in_var.h src/sys/netinet6 mld6.c Date: Tuesday 20 March 2007 01:36 =46rom: Bruce M Simpson To: src-committers@freebsd.org, cvs-src@freebsd.org, 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 =2D------------------------------------------------------ =2D-=20 /"\ Best regards, | mlaier@freebsd.org \ / Max Laier | ICQ #67774661 X http://pf4freebsd.love2party.net/ | mlaier@EFnet / \ ASCII Ribbon Campaign | Against HTML Mail and News --Boundary-01=_wrz/FEK2RiEqPl8 Content-Type: text/plain; name="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" Content-Transfer-Encoding: quoted-printable bms 2007-03-20 00:36:11 UTC FreeBSD src repository Modified files: sys/net if.c if_var.h=20 sys/netgraph ng_ether.c=20 sys/netinet in.c in_var.h=20 sys/netinet6 mld6.c=20 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. =20 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. =20 With this architectural change, the panics FreeBSD users have experienced with carp and pfsync should be resolved. =20 Obtained from: p4 branch bms_netdev Reviewed by: andre Sponsored by: Garance A Drosehn Idea from: NetBSD MFC after: 1 month =20 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 --Boundary-01=_wrz/FEK2RiEqPl8-- --nextPart1288505.p7N6uT0eD3 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQBF/zr1XyyEoT62BG0RAoSwAJ4to2OquyjbIiWeuIoZL18eFpgVJgCfXQld CHfI7MAfdG5N+cOlcZgHM5U= =y+Fh -----END PGP SIGNATURE----- --nextPart1288505.p7N6uT0eD3--