From owner-freebsd-current Fri May 17 13: 9:52 2002 Delivered-To: freebsd-current@freebsd.org Received: from avocet.prod.itd.earthlink.net (avocet.mail.pas.earthlink.net [207.217.120.50]) by hub.freebsd.org (Postfix) with ESMTP id E820437B409 for ; Fri, 17 May 2002 13:09:46 -0700 (PDT) Received: from pool0392.cvx22-bradley.dialup.earthlink.net ([209.179.199.137] helo=mindspring.com) by avocet.prod.itd.earthlink.net with esmtp (Exim 3.33 #2) id 178o2g-0005cs-00; Fri, 17 May 2002 13:09:35 -0700 Message-ID: <3CE56361.67EB4549@mindspring.com> Date: Fri, 17 May 2002 13:09:05 -0700 From: Terry Lambert X-Mailer: Mozilla 4.7 [en]C-CCK-MCD {Sony} (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: Ian Cc: freebsd-current Subject: Re: df References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Ian wrote: > On 05/17/02 10:27, Riccardo Torrini wrote: > > I manually mount nfs fs after a reboot (current -> stable) and > > if I do a "df" I got two different output. First time it get > > garbled, all other times it is aligned. I'm alone? > > I looked at the df code because I was intensely curious how this could > happen. It obtains the list of mounts using a NOWAIT flag, and NFS mount > info may not be available immediately so it doesn't get included in the > field width calculations. Then later it re-gets the list of mounts using a > WAIT flag (unless you used -n on the command line) so this time it has the > info from NFS filesystems, but it doesn't recalculate the field widths. The > following patch should fix it without breaking other behaviors, I belive. I guess the real question is why the NOWAIT flag results in the NFS FS's not being included, since the purpose of NOWAIT is to keep it from hanging indefinitely, not to keep high latency FS's out of consideration. Also, one would expect that the FS's that failed "NOWAIT" would have their details left out, and be marked as "could cause hang if examined". > - if (vfslist != NULL) { > + if (!nflag) { Uh, think this wants to be: > + if (!nflag || vfslist != NULL) { The reason is that an explicit list of FS's on the command line still means "look these up, come hell or high water, and hang, if you have to". -- Terry To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message