pNFS/flexfiles: Handle expired layout segments in ff_layout_initiate_commit()
If the layout has expired due to a fencing event, then we should not attempt to commit to the DS. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
Родитель
4118188645
Коммит
4b75053e9b
|
@ -1842,6 +1842,10 @@ static int ff_layout_initiate_commit(struct nfs_commit_data *data, int how)
|
|||
int vers, ret;
|
||||
struct nfs_fh *fh;
|
||||
|
||||
if (!lseg || !(pnfs_is_valid_lseg(lseg) ||
|
||||
test_bit(NFS_LSEG_LAYOUTRETURN, &lseg->pls_flags)))
|
||||
goto out_err;
|
||||
|
||||
idx = calc_ds_index_from_commit(lseg, data->ds_commit_index);
|
||||
ds = nfs4_ff_layout_prepare_ds(lseg, idx, true);
|
||||
if (!ds)
|
||||
|
|
Загрузка…
Ссылка в новой задаче