@@ -1182,6 +1182,9 @@ pnfs_ld_write_done(struct nfs_write_data *data)
dprintk("%s: pnfs_error=%d, retry via MDS\n", __func__,
data->pnfs_error);
+
+ put_lseg(data->lseg);
+ data->lseg = NULL;
status = nfs_initiate_write(data, NFS_CLIENT(data->inode),
data->mds_ops, NFS_FILE_SYNC);
return status ? : -EAGAIN;
@@ -1282,6 +1285,9 @@ pnfs_ld_read_done(struct nfs_read_data *data)
dprintk("%s: pnfs_error=%d, retry via MDS\n", __func__,
data->pnfs_error);
+
+ put_lseg(data->lseg);
+ data->lseg = NULL;
status = nfs_initiate_read(data, NFS_CLIENT(data->inode),
data->mds_ops);
return status ? : -EAGAIN;