*** src/lib/file-dotlock.c.orig	Sat Mar 17 08:27:24 2007
--- src/lib/file-dotlock.c	Sun May 20 19:32:24 2007
***************
*** 217,222 ****
--- 217,231 ----
  		return 1;
  	}
  
+ 	/*
+ 	 * WORKAROUND: The FreeBSD NFS client only invalidates its caches
+ 	 * cache if a cached attribute changes by a whole second.  This
+ 	 * causes dotlocking to stall until stale_timeout timeouts and the
+ 	 * lock file is overwritten.  Using chown() allows the stale_timeout
+ 	 * to continue to work and will still invalidate the cached entry.
+ 	 */
+ 	chown(lock_info->lock_path, st.st_uid, st.st_gid);
+ 
  	return 0;
  }
  
