Don't block nfsds when the filesystem is frozen. Requires the
nfsd to set the non-blocking flag on the setattr call.

Signed-off-by: Dave Chinner <dgc@sgi.com>
---
 fs/xfs/xfs_vnodeops.c |    6 ++++++
 1 file changed, 6 insertions(+)

Index: 2.6.x-xfs-new/fs/xfs/xfs_vnodeops.c
===================================================================
--- 2.6.x-xfs-new.orig/fs/xfs/xfs_vnodeops.c	2007-11-22 10:33:59.696597454 +1100
+++ 2.6.x-xfs-new/fs/xfs/xfs_vnodeops.c	2007-11-22 10:36:15.059290839 +1100
@@ -245,6 +245,12 @@ xfs_setattr(
 		return XFS_ERROR(EIO);
 
 	/*
+	 * Don't block if the filesystem is frozen.
+	 */
+	if ((flags & ATTR_NONBLOCK) && xfs_test_for_freeze(mp))
+		return XFS_ERROR(EAGAIN);
+
+	/*
 	 * Timestamps do not need to be logged and hence do not
 	 * need to be done within a transaction.
 	 */
