@@ -146,7 +146,7 @@ nfs4_make_rec_clidname(char *dname, const struct xdr_netobj *clname)
146146 * then disable recovery tracking.
147147 */
148148static void
149- legacy_recdir_name_error (int error )
149+ legacy_recdir_name_error (struct nfs4_client * clp , int error )
150150{
151151 printk (KERN_ERR "NFSD: unable to generate recoverydir "
152152 "name (%d).\n" , error );
@@ -159,9 +159,7 @@ legacy_recdir_name_error(int error)
159159 if (error == - ENOENT ) {
160160 printk (KERN_ERR "NFSD: disabling legacy clientid tracking. "
161161 "Reboot recovery will not function correctly!\n" );
162-
163- /* the argument is ignored by the legacy exit function */
164- nfsd4_client_tracking_exit (NULL );
162+ nfsd4_client_tracking_exit (clp -> net );
165163 }
166164}
167165
@@ -184,7 +182,7 @@ nfsd4_create_clid_dir(struct nfs4_client *clp)
184182
185183 status = nfs4_make_rec_clidname (dname , & clp -> cl_name );
186184 if (status )
187- return legacy_recdir_name_error (status );
185+ return legacy_recdir_name_error (clp , status );
188186
189187 status = nfs4_save_creds (& original_cred );
190188 if (status < 0 )
@@ -341,7 +339,7 @@ nfsd4_remove_clid_dir(struct nfs4_client *clp)
341339
342340 status = nfs4_make_rec_clidname (dname , & clp -> cl_name );
343341 if (status )
344- return legacy_recdir_name_error (status );
342+ return legacy_recdir_name_error (clp , status );
345343
346344 status = mnt_want_write_file (nn -> rec_file );
347345 if (status )
@@ -601,7 +599,7 @@ nfsd4_check_legacy_client(struct nfs4_client *clp)
601599
602600 status = nfs4_make_rec_clidname (dname , & clp -> cl_name );
603601 if (status ) {
604- legacy_recdir_name_error (status );
602+ legacy_recdir_name_error (clp , status );
605603 return status ;
606604 }
607605
0 commit comments