From owner-freebsd-bugs@FreeBSD.ORG Wed Oct 8 09:30:24 2003 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3A81816A4B3 for ; Wed, 8 Oct 2003 09:30:24 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id B375943FAF for ; Wed, 8 Oct 2003 09:30:23 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id h98GUNFY068351 for ; Wed, 8 Oct 2003 09:30:23 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id h98GUNYX068350; Wed, 8 Oct 2003 09:30:23 -0700 (PDT) (envelope-from gnats) Date: Wed, 8 Oct 2003 09:30:23 -0700 (PDT) Message-Id: <200310081630.h98GUNYX068350@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Brian Candler Subject: Re: kern/57696: NFS client readdir terminates prematurely if renaming files X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Brian Candler List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Oct 2003 16:30:24 -0000 The following reply was made to PR kern/57696; it has been noted by GNATS. From: Brian Candler To: Chris Shenton Cc: freebsd-gnats-submit@FreeBSD.org Subject: Re: kern/57696: NFS client readdir terminates prematurely if renaming files Date: Wed, 8 Oct 2003 17:29:42 +0100 On Tue, Oct 07, 2003 at 08:33:25PM -0400, Chris Shenton wrote: > At work I tested a FreeBSD-4.9-PRERELEASE client against our netapp > and found the same failure with the "nfstest" program Brian posted. A > Solaris-2.9 client did not exhibit this problem. Apparently a "bad cookie" message is logged for each failure event, and the following related thread has been pointed out to me: http://lists.freebsd.org/pipermail/freebsd-current/2003-August/008402.html The implication of what is written there is that readdir() is entitled to fail if the directory has been changed underneath it. I don't know how Linux and Solaris cope with this: do they take an in-memory snapshot of the whole directory at the client side, which readdir() then traverses? Or do they just blindly continue to traverse a directory which they know has changed? Regards, Brian.