From owner-freebsd-current@FreeBSD.ORG Sun Dec 21 18:54:34 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0BB951065673; Sun, 21 Dec 2008 18:54:34 +0000 (UTC) (envelope-from qing.li@bluecoat.com) Received: from whisker.bluecoat.com (whisker.bluecoat.com [216.52.23.28]) by mx1.freebsd.org (Postfix) with ESMTP id E48F18FC08; Sun, 21 Dec 2008 18:54:33 +0000 (UTC) (envelope-from qing.li@bluecoat.com) Received: from bcs-mail03.internal.cacheflow.com ([10.2.2.95]) by whisker.bluecoat.com (8.14.2/8.14.2) with ESMTP id mBLIsOqA003998; Sun, 21 Dec 2008 10:54:24 -0800 (PST) Received: from 10.2.2.114 ([10.2.2.114]) by bcs-mail03.internal.cacheflow.com ([10.2.2.95]) with Microsoft Exchange Server HTTP-DAV ; Sun, 21 Dec 2008 18:54:18 +0000 MIME-Version: 1.0 Message-ID: <55f001c9639d$875f14ec$7202020a@internal.cacheflow.com> Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-class: From: "Li, Qing" X-MimeOLE: Produced By Microsoft Exchange V6.5 Thread-Topic: HEADSUP: arp-v2 has been committed Thread-Index: AcljnYdfWUXWFzTlQF2w8blLs6aF/Q== Date: Sun, 21 Dec 2008 10:54:06 -0800 Importance: normal X-Priority: 3 To: "Hartmut Brandt" , "Kip Macy" Cc: Vladimir Grebenschikov , Qing Li , Gerald Pfeifer , freebsd-current@freebsd.org, freebsd-net@freebsd.org Subject: RE: HEADSUP: arp-v2 has been committed X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 Dec 2008 18:54:34 -0000 Yes, at least in the IPv4 case, I still generate the routing messages = whenever entries are modified, so you can still wait for notifications = on the routing socket. One should check for the address family AF_LINK = type instead of checking for RTF_LLINFO flag. It's an over sight this = note was not attached to the commit message. There are two locations in ND6 where I temporarily disabled rtmsg = generation pending further investigation. I have a note-to-self for that = in the code comment. Since only ARP entries are returned, you are in fact getting some = performance gain. The userland application should also be simplified a = little because the list walking code does not have to check for non-ARP = entries. -- Qing -----Original Message----- From: Hartmut Brandt Sent: Sunday, December 21, 2008 8:54 AM To: Kip Macy Cc: Vladimir Grebenschikov ; Qing Li ; = freebsd-net@freebsd.org ; Gerald Pfeifer = ; freebsd-current@freebsd.org = Subject: Re: HEADSUP: arp-v2 has been committed Kip Macy wrote: > The flag is not needed. It is only possible to retrieve arp entries by > way of sysctl. The converse of this is you no longer need to grab all > the entries in the routing table and look at each one to determine > which are cloned routes (dynamic host routes) which contain ARP > entries. Does this mean that the snmp daemon cannot monitor the arp entries=20 through the routing socket anymore? This would be a performance issue,=20 since it would have to fetch the ARP table from the kernel each time it=20 is asked for. Now it refreshes the table only if it is older than 30=20 seconds and in the mean time monitors routing messages. harti >=20 > -Kip >=20 > On Sat, Dec 20, 2008 at 9:01 PM, Gerald Pfeifer = wrote: >> The code in question on the Wine side is >> >> #if defined(HAVE_SYS_SYSCTL_H) && defined(NET_RT_DUMP) >> int mib[] =3D {CTL_NET, PF_ROUTE, 0, AF_INET, NET_RT_FLAGS, = RTF_LLINFO}; >> >> and there is nothing FreeBSD-specific in dlls/iphlpapi/ipstats.c as = far >> as I can see. >> >> If the arp-v2 update now made us incompatible both with earlier = versions >> of FreeBSD and Linux, that sounds like something that should be fixed >> (instead of hacking applications like Wine). >> >> On the other hand, the commit message at >> http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/net/route.h >> explicitly says >> The change in design obsoletes the semantics of RTF_CLONING, >> RTF_WASCLONE and RTF_LLINFO routing flags. The userland applications >> such as "arp" and "ndp" have been modified to reflect those changes. >> so I guess it's not so easy. >> >> How many other ports are affected? >> >> What shall we do on the Wine front? Simply #ifdef-ing out the code = in >> question may not be the best of ideas, either. :-( >> >> Gerald >> >> On Fri, 19 Dec 2008, Vladimir Grebenschikov wrote: >>> On Mon, 15 Dec 2008 06:34:13 GMT, Qing Li = wrote: >>> >>>>> The arp-v2 changes have been committed into HEAD. >>>>> Please report problems to me and Kip Macy. >>> Wine is not build any more: >>> >>> ... >>> cc -c -I. -I. -I../../include -I../../include -D__WINESRC__ = -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing = -Wdeclaration-after-statement -Wwrite-strings -Wpointer-arith = -I/usr/local/include -O2 -pipe -fno-strict-aliasing -o ipstats.o = ipstats.c >>> ipstats.c: In function 'getNumArpEntries': >>> ipstats.c:1253: error: 'RTF_LLINFO' undeclared (first use in this = function) >>> ipstats.c:1253: error: (Each undeclared identifier is reported only = once >>> ipstats.c:1253: error: for each function it appears in.) >>> ipstats.c: In function 'getArpTable': >>> ipstats.c:1311: error: 'RTF_LLINFO' undeclared (first use in this = function) >>> ipstats.c:1311: warning: initialization makes integer from pointer = without a cast >>> gmake[2]: *** [ipstats.o] ?????? 1 >>> gmake[2]: Leaving directory = `/usr/ports/emulators/wine/work/wine-1.1.10/dlls/iphlpapi' >>> gmake[1]: *** [iphlpapi] ?????? 2 >>> gmake[1]: Leaving directory = `/usr/ports/emulators/wine/work/wine-1.1.10/dlls' >>> gmake: *** [dlls] ?????? 2 >>> >>> >> -- >> Gerald (Jerry) Pfeifer gerald@pfeifer.com = http://www.pfeifer.com/gerald/ >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to = "freebsd-net-unsubscribe@freebsd.org" >> >=20 >=20 >=20 _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"