--- linux-2.6.9/fs/nfs/dir.c.orig	2007-05-01 14:41:03.000000000 -0700
+++ linux-2.6.9/fs/nfs/dir.c	2007-05-01 16:42:34.000000000 -0700
@@ -656,7 +656,9 @@
 		/* This is an open(2) */
 		if ((ndflags & LOOKUP_OPEN) &&
 				!(ndflags & LOOKUP_CONTINUE) &&
-				!(server->flags & NFS_MOUNT_NOCTO))
+				!(server->flags & NFS_MOUNT_NOCTO) &&
+			        (S_ISREG(inode->i_mode) ||
+				 S_ISDIR(inode->i_mode)))
 			goto out_force;
 	}
 	return nfs_revalidate_inode(server, inode);
