|
@@ -531,6 +531,13 @@ int nfs40_walk_client_list(struct nfs_client *new,
|
|
*result = pos;
|
|
*result = pos;
|
|
dprintk("NFS: <-- %s using nfs_client = %p ({%d})\n",
|
|
dprintk("NFS: <-- %s using nfs_client = %p ({%d})\n",
|
|
__func__, pos, atomic_read(&pos->cl_count));
|
|
__func__, pos, atomic_read(&pos->cl_count));
|
|
|
|
+ goto out;
|
|
|
|
+ case -ERESTARTSYS:
|
|
|
|
+ case -ETIMEDOUT:
|
|
|
|
+ /* The callback path may have been inadvertently
|
|
|
|
+ * changed. Schedule recovery!
|
|
|
|
+ */
|
|
|
|
+ nfs4_schedule_path_down_recovery(pos);
|
|
default:
|
|
default:
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|