From owner-freebsd-current Thu Jan 9 01:29:36 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.4/8.8.4) id BAA18243 for current-outgoing; Thu, 9 Jan 1997 01:29:36 -0800 (PST) Received: from diablo.ppp.de (diablo.ppp.de [193.141.101.34]) by freefall.freebsd.org (8.8.4/8.8.4) with SMTP id BAA18238 for ; Thu, 9 Jan 1997 01:29:32 -0800 (PST) Received: from freebie.lemis.de by diablo.ppp.de with smtp (Smail3.1.28.1 #1) id m0viGne-000QYkC; Thu, 9 Jan 97 10:29 MET Received: (grog@localhost) by freebie.lemis.de (8.8.4/8.6.12) id KAA29540; Thu, 9 Jan 1997 10:28:30 +0100 (MET) From: grog@lemis.de Message-Id: <199701090928.KAA29540@freebie.lemis.de> Subject: Re: What's happened to nfsd and mountd? In-Reply-To: <199701090327.LAA10608@spinner.DIALix.COM> from Peter Wemm at "Jan 9, 97 11:27:13 am" To: peter@spinner.DIALix.COM (Peter Wemm) Date: Thu, 9 Jan 1997 10:28:29 +0100 (MET) Cc: FreeBSD-current@FreeBSD.ORG (FreeBSD current users) Organisation: LEMIS, Schellnhausen 2, 36325 Feldatal, Germany Phone: +49-6637-919123 Fax: +49-6637-919122 Reply-to: grog@lemis.de (Greg Lehey) X-Mailer: ELM [version 2.4ME+ PL28 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Peter Wemm writes: > David Nugent wrote: >> We're suffering the same problem here. ifconfig -a shows: > [..] > >> The first interface is up and operational. Nothing funky with IP >> aliases on this box. Another one (with nothing but loopback and >> ethernet) which *does* have several IP aliases on ed0 is using >> the exact same build, but mountd/nfsd load and work fine there. >> >> Regards, >> David > > OK, time to run a quick test.. What do you guys get from this quick hack.. A pointer to the problem, by the look of it: === grog@freebie (/dev/ttypa) ~/src 3 -> gma get_myaddress() returns 0 sin_family = 0 (AF_INET = 2) sin_len = 3 (16) sin_port = 0 sin_addr = 0.32.0.0 SIOCFIGCONF used 1008 bytes of a buffer 1024 long > One of my systems nearby uses 992 bytes of the SIOCGIFCONF 1024 byte buffer > (as used in get_myaddress). It would be interesting to know what happens > if it is overflowing on the systems that are failing. I'd guess it's probably the wrong family. > Just to make things even more bizzare, the system that returns 992 bytes > (struct ifreq = 32 bytes), which is 31 ifreq's, actually has 49 interfaces, > and yet SIOCGIFCONF returned a "short" list with only 31 entries and no > indication of error or overflow. (the actual number of slots of > SIOCGIFCONF data comes from "netstat -in | grep -v Name | wc -l", don't > forget that SIOCGIFCONF also returns AF_LINK entries) > > On my own system here, I have 5 interfaces, yet SIOCGIFCONF returns 9 ifreq > structs. > > Garrett suggested redoing get_myaddress() to use sysctl(), which is > starting to sound more appealing.. > > Something to try on the machines that are failing.. In lib/libc/rpc/ > get_myaddress.c, change "char buf[BUFSIZ];" to something bigger, > eg: "char buf[10240];" If you got about "992 used" for the test program > above, make the change there too. Oh well, I suppose I could do that. But do you really still think this is the problem? Greg