NFS: Stop sillyname renames and unmounts from racing

Added an active/deactive mechanism to the nfs_server structure
allowing async operations to hold off umount until the
operations are done.

Signed-off-by: Steve Dickson <steved@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
Steve Dickson
2007-11-08 04:05:04 -05:00
committed by Trond Myklebust
parent 2f74c0a056
commit ef818a28fa
5 changed files with 39 additions and 0 deletions

View File

@@ -3,6 +3,9 @@
#include <linux/list.h>
#include <linux/backing-dev.h>
#include <linux/wait.h>
#include <asm/atomic.h>
struct nfs_iostats;
@@ -110,6 +113,9 @@ struct nfs_server {
filesystem */
#endif
void (*destroy)(struct nfs_server *);
atomic_t active; /* Keep trace of any activity to this server */
wait_queue_head_t active_wq; /* Wait for any activity to stop */
};
/* Server capabilities */