will be sent.
                        The default is to send the implementation identification
                        information.
+       
+       nfs.recover_lost_locks =
+                       [NFSv4] Attempt to recover locks that were lost due
+                       to a lease timeout on the server. Please note that
+                       doing this risks data corruption, since there are
+                       no guarantees that the file will remain unchanged
+                       after the locks are lost.
+                       If you want to enable the kernel legacy behaviour of
+                       attempting to recover these locks, then set this
+                       parameter to '1'.
+                       The default parameter value of '0' causes the kernel
+                       not to attempt recovery of lost locks.
 
        nfsd.nfs4_disable_idmapping=
                        [NFSv4] When set to the default of '1', the NFSv4
 
 extern bool nfs4_disable_idmapping;
 extern unsigned short max_session_slots;
 extern unsigned short send_implementation_id;
+extern bool recover_lost_locks;
 
 #define NFS4_CLIENT_ID_UNIQ_LEN                (64)
 extern char nfs4_client_id_uniquifier[NFS4_CLIENT_ID_UNIQ_LEN];
 
        return err;
 }
 
-bool recover_locks = true;
-module_param(recover_locks, bool, 0644);
-MODULE_PARM_DESC(recover_locks,
-                "If the server reports that a lock might be lost, "
-                "try to recovery it risking corruption.");
-
 static int nfs4_lock_expired(struct nfs4_state *state, struct file_lock *request)
 {
        struct nfs_server *server = NFS_SERVER(state->inode);
        err = nfs4_set_lock_state(state, request);
        if (err != 0)
                return err;
-       if (!recover_locks) {
+       if (!recover_lost_locks) {
                set_bit(NFS_LOCK_LOST, &request->fl_u.nfs4_fl.owner->ls_flags);
                return 0;
        }
 
 unsigned short max_session_slots = NFS4_DEF_SLOT_TABLE_SIZE;
 unsigned short send_implementation_id = 1;
 char nfs4_client_id_uniquifier[NFS4_CLIENT_ID_UNIQ_LEN] = "";
+bool recover_lost_locks = false;
 
 EXPORT_SYMBOL_GPL(nfs_callback_set_tcpport);
 EXPORT_SYMBOL_GPL(nfs_callback_tcpport);
 EXPORT_SYMBOL_GPL(max_session_slots);
 EXPORT_SYMBOL_GPL(send_implementation_id);
 EXPORT_SYMBOL_GPL(nfs4_client_id_uniquifier);
+EXPORT_SYMBOL_GPL(recover_lost_locks);
 
 #define NFS_CALLBACK_MAXPORTNR (65535U)
 
                "Send implementation ID with NFSv4.1 exchange_id");
 MODULE_PARM_DESC(nfs4_unique_id, "nfs_client_id4 uniquifier string");
 
+module_param(recover_lost_locks, bool, 0644);
+MODULE_PARM_DESC(recover_lost_locks,
+                "If the server reports that a lock might be lost, "
+                "try to recover it risking data corruption.");
+
+
 #endif /* CONFIG_NFS_V4 */