--- ./fs/nfs/dir.c.orig	2005-02-07 23:02:52.000000000 +0100
+++ ./fs/nfs/dir.c	2005-02-07 23:04:03.000000000 +0100
@@ -1082,7 +1082,7 @@
 #endif
 	nfs_begin_data_update(dir);
 	error = NFS_PROTO(dir)->mkdir(dir, &dentry->d_name, &attr, &fhandle,
-					&fattr);
+					&fattr, &fsg);
 	nfs_end_data_update(dir);
 	if (!error)
 		error = nfs_instantiate(dentry, &fhandle, &fattr, &fsg);
--- ./fs/nfs/proc.c.orig	2005-02-07 23:02:52.000000000 +0100
+++ ./fs/nfs/proc.c	2005-02-07 23:04:03.000000000 +0100
@@ -412,7 +412,8 @@
 
 static int
 nfs_proc_mkdir(struct inode *dir, struct qstr *name, struct iattr *sattr,
-	       struct nfs_fh *fhandle, struct nfs_fattr *fattr)
+	       struct nfs_fh *fhandle, struct nfs_fattr *fattr,
+	       struct rpc_groups *fsg)
 {
 	struct nfs_createargs	arg = {
 		.fh		= NFS_FH(dir),
@@ -428,7 +429,7 @@
 
 	dprintk("NFS call  mkdir %s\n", name->name);
 	fattr->valid = 0;
-	status = nfs2_rpc(NFS_CLIENT(dir), NFSPROC_MKDIR, &arg, &res);
+	status = nfs2_rpc(NFS_CLIENT(dir), NFSPROC_MKDIR, &arg, &res, fsg);
 	dprintk("NFS reply mkdir: %d\n", status);
 	return status;
 }
--- ./fs/nfs/nfs3proc.c.orig	2005-02-07 23:02:52.000000000 +0100
+++ ./fs/nfs/nfs3proc.c	2005-02-07 23:04:03.000000000 +0100
@@ -523,7 +523,8 @@
 
 static int
 nfs3_proc_mkdir(struct inode *dir, struct qstr *name, struct iattr *sattr,
-		struct nfs_fh *fhandle, struct nfs_fattr *fattr)
+		struct nfs_fh *fhandle, struct nfs_fattr *fattr,
+		struct rpc_groups *fsg)
 {
 	struct nfs_fattr	dir_attr;
 	struct nfs3_mkdirargs	arg = {
@@ -542,7 +543,7 @@
 	dprintk("NFS call  mkdir %s\n", name->name);
 	dir_attr.valid = 0;
 	fattr->valid = 0;
-	status = nfs3_rpc(NFS_CLIENT(dir), NFS3PROC_MKDIR, &arg, &res);
+	status = nfs3_rpc(NFS_CLIENT(dir), NFS3PROC_MKDIR, &arg, &res, fsg);
 	nfs_refresh_inode(dir, &dir_attr);
 	dprintk("NFS reply mkdir: %d\n", status);
 	return status;
--- ./fs/nfs/nfs4proc.c.orig	2005-02-07 23:02:52.000000000 +0100
+++ ./fs/nfs/nfs4proc.c	2005-02-07 23:04:03.000000000 +0100
@@ -1578,7 +1578,7 @@
 
 static int nfs4_proc_mkdir(struct inode *dir, struct qstr *name,
 		struct iattr *sattr, struct nfs_fh *fhandle,
-		struct nfs_fattr *fattr)
+		struct nfs_fattr *fattr, struct rpc_groups *fsg)
 {
 	struct nfs4_exception exception = { };
 	int err;
--- ./include/linux/nfs_xdr.h.orig	2005-02-07 23:02:52.000000000 +0100
+++ ./include/linux/nfs_xdr.h	2005-02-07 23:04:03.000000000 +0100
@@ -695,7 +695,8 @@
 			    struct iattr *, struct nfs_fh *,
 			    struct nfs_fattr *, struct rpc_groups *);
 	int	(*mkdir)   (struct inode *, struct qstr *, struct iattr *,
-			    struct nfs_fh *, struct nfs_fattr *);
+			    struct nfs_fh *, struct nfs_fattr *,
+			    struct rpc_groups *);
 	int	(*rmdir)   (struct inode *, struct qstr *, struct rpc_groups *);
 	int	(*readdir) (struct dentry *, struct rpc_cred *,
 			    u64, struct page *, unsigned int, int);