From owner-freebsd-current@FreeBSD.ORG Mon Sep 27 08:21:20 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4AFC716A4CE for ; Mon, 27 Sep 2004 08:21:20 +0000 (GMT) Received: from wrzx28.rz.uni-wuerzburg.de (wrzx28.rz.uni-wuerzburg.de [132.187.3.28]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9C5B443D49 for ; Mon, 27 Sep 2004 08:21:19 +0000 (GMT) (envelope-from q@uni.de) Received: from wrzx34.rz.uni-wuerzburg.de (wrzx34.rz.uni-wuerzburg.de [132.187.3.34]) by wrzx28.rz.uni-wuerzburg.de (Postfix) with ESMTP id 3B6ADD41D5; Mon, 27 Sep 2004 10:21:18 +0200 (CEST) Received: from virusscan (localhost [127.0.0.1]) by wrzx34.rz.uni-wuerzburg.de (Postfix) with ESMTP id 16D71A792D; Mon, 27 Sep 2004 10:21:18 +0200 (CEST) Received: from wrzx28.rz.uni-wuerzburg.de (wrzx28.rz.uni-wuerzburg.de [132.187.3.28]) by wrzx34.rz.uni-wuerzburg.de (Postfix) with ESMTP id DE449A77CC; Mon, 27 Sep 2004 10:21:17 +0200 (CEST) Received: from coyote.q.local (wwsx14.win-screen.uni-wuerzburg.de [132.187.253.14]) by wrzx28.rz.uni-wuerzburg.de (Postfix) with ESMTP id C0ED0D41D5; Mon, 27 Sep 2004 10:21:17 +0200 (CEST) Received: from roadrunner.q.local (roadrunner.q.local [192.168.0.148]) by coyote.q.local (8.12.10/8.12.10) with ESMTP id i8R8LHA4002587; Mon, 27 Sep 2004 10:21:17 +0200 (CEST) (envelope-from q@uni.de) Received: from roadrunner.q.local (localhost [127.0.0.1]) by roadrunner.q.local (8.13.1/8.13.1) with ESMTP id i8R8LHtU001519; Mon, 27 Sep 2004 10:21:17 +0200 (CEST) (envelope-from q@uni.de) Received: (from q@localhost) by roadrunner.q.local (8.13.1/8.13.1/Submit) id i8R8LF3n001518; Mon, 27 Sep 2004 10:21:15 +0200 (CEST) (envelope-from q@uni.de) Date: Mon, 27 Sep 2004 10:21:15 +0200 From: Ulrich Spoerlein To: Hidetoshi Shimokawa Message-ID: <20040927082115.GA1092@galgenberg.net> Mail-Followup-To: Hidetoshi Shimokawa , current@freebsd.org References: <20040925163148.GA9626@galgenberg.net> <87d609m7cs.wl@tora.nunu.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="9amGYk9869ThD9tj" Content-Disposition: inline In-Reply-To: <87d609m7cs.wl@tora.nunu.org> User-Agent: Mutt/1.5.6i X-Virus-Scanned: by amavisd-new (Rechenzentrum Universitaet Wuerzburg) cc: current@freebsd.org Subject: Re: fwe(4) and polling(4) X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 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: Mon, 27 Sep 2004 08:21:20 -0000 --9amGYk9869ThD9tj Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, 26.09.2004 at 23:29:23 +0900, Hidetoshi Shimokawa wrote: > Interrput rate should be dropped in polling mode. >=20 > To enable polling mode, after you set sysctl variables, you have > to down the interface once and then up. > (ifconfig fwe0 down; ifconfig fwe0 up) Aha! Thanks for the tip, polling is now working on roadrunner and the load dropped. However the performance dropped too (9MB/s). I think this is due to NFS and the increased latency. But I have to get polling working on coyote first, before I investigate further. Read on... This is the output from 5.3 fwe0: flags=3D118943 mtu 1500 options=3D8 inet 192.168.2.148 netmask 0xffffff00 broadcast 192.168.2.255 inet6 fe80::344f:c0ff:fe67:9830%fwe0 prefixlen 64 scopeid 0x2=20 ether 36:4f:c0:67:98:30 ch 1 dma 0 and this from 5.2.1 fwe0: flags=3D18943 mtu 1500 inet6 fe80::2000:ff:fe00:52cf%fwe0 prefixlen 64 scopeid 0x3=20 inet 192.168.2.151 netmask 0xffffff00 broadcast 192.168.2.255 ether 22:00:00:00:52:cf ch 1 dma 0 Note that POLLING is absent. I up/downed the interface several times and toggled kern.polling.enable several times too. Is there a bug with respect to 5.2.1R? > > PS: I'm somewhat puzzled by this: > > fwohci0: EUI64 20:00:00:00:04:00:52:cf > > if_fwe0: Fake Ethernet address: 22:00:00:00:52:cf > > and > > fwohci0: EUI64 35:4f:c0:00:35:67:98:30 > > if_fwe0: Fake Ethernet address: 36:4f:c0:67:98:30 >=20 > if_fwe is a non-standard ethernet emulation and need to > generate fake macaddress. As far as I remember, 0x02 is > added to the first byte to represent it is private address. if_fwe.c:186 #define LOCAL (0x02) #define GROUP (0x01) eaddr[0] =3D (FW_EUI64_BYTE(eui, 0) | LOCAL) & ~GROUP; I'm not good at C but this code seems to always zero the least significant bit, making the first byte of the address even. Is that an ethernet requirement? (I checked all NICs I have access to, but they all have 0x00 as the first byte) Ulrich Spoerlein --=20 PGP Key ID: F0DB9F44 Get it while it's hot! PGP Fingerprint: F1CE D062 0CA9 ADE3 349B 2FE8 980A C6B5 F0DB 9F44 "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -- Benjamin Franklin --9amGYk9869ThD9tj Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (FreeBSD) iD8DBQFBV817mArGtfDbn0QRApWNAKC10x7C/Zm5aVAAi4yA/S4JzQ7EMwCgpKpE E9W4ZfhnkD69xRDONHOKr8A= =G1j9 -----END PGP SIGNATURE----- --9amGYk9869ThD9tj--