|
@@ -299,6 +299,8 @@ ff_lseg_merge(struct pnfs_layout_segment *new,
|
|
|
{
|
|
|
u64 new_end, old_end;
|
|
|
|
|
|
+ if (test_bit(NFS_LSEG_LAYOUTRETURN, &old->pls_flags))
|
|
|
+ return false;
|
|
|
if (new->pls_range.iomode != old->pls_range.iomode)
|
|
|
return false;
|
|
|
old_end = pnfs_calc_offset_end(old->pls_range.offset,
|
|
@@ -319,8 +321,6 @@ ff_lseg_merge(struct pnfs_layout_segment *new,
|
|
|
new_end);
|
|
|
if (test_bit(NFS_LSEG_ROC, &old->pls_flags))
|
|
|
set_bit(NFS_LSEG_ROC, &new->pls_flags);
|
|
|
- if (test_bit(NFS_LSEG_LAYOUTRETURN, &old->pls_flags))
|
|
|
- set_bit(NFS_LSEG_LAYOUTRETURN, &new->pls_flags);
|
|
|
return true;
|
|
|
}
|
|
|
|