提交 0eba048d 编写于 作者: C Christoph Hellwig 提交者: Darrick J. Wong

xfs: only look at the fork format in xfs_idestroy_fork

Stop using the XFS_IFEXTENTS flag, and instead switch on the fork format
in xfs_idestroy_fork to decide how to cleanup.
Signed-off-by: NChristoph Hellwig <hch@lst.de>
Reviewed-by: NBrian Foster <bfoster@redhat.com>
Reviewed-by: NDarrick J. Wong <djwong@kernel.org>
Signed-off-by: NDarrick J. Wong <djwong@kernel.org>
上级 605e74e2
...@@ -522,17 +522,16 @@ xfs_idestroy_fork( ...@@ -522,17 +522,16 @@ xfs_idestroy_fork(
ifp->if_broot = NULL; ifp->if_broot = NULL;
} }
/* switch (ifp->if_format) {
* If the format is local, then we can't have an extents array so just case XFS_DINODE_FMT_LOCAL:
* look for an inline data array. If we're not local then we may or may
* not have an extents list, so check and free it up if we do.
*/
if (ifp->if_format == XFS_DINODE_FMT_LOCAL) {
kmem_free(ifp->if_u1.if_data); kmem_free(ifp->if_u1.if_data);
ifp->if_u1.if_data = NULL; ifp->if_u1.if_data = NULL;
} else if (ifp->if_flags & XFS_IFEXTENTS) { break;
case XFS_DINODE_FMT_EXTENTS:
case XFS_DINODE_FMT_BTREE:
if (ifp->if_height) if (ifp->if_height)
xfs_iext_destroy(ifp); xfs_iext_destroy(ifp);
break;
} }
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册