|
|
@@ -1153,6 +1153,10 @@ xfs_bmap_add_attrfork(
|
|
|
goto trans_cancel;
|
|
|
if (XFS_IFORK_Q(ip))
|
|
|
goto trans_cancel;
|
|
|
+ if (ip->i_d.di_anextents != 0) {
|
|
|
+ error = -EFSCORRUPTED;
|
|
|
+ goto trans_cancel;
|
|
|
+ }
|
|
|
if (ip->i_d.di_aformat != XFS_DINODE_FMT_EXTENTS) {
|
|
|
/*
|
|
|
* For inodes coming from pre-6.2 filesystems.
|
|
|
@@ -1160,7 +1164,6 @@ xfs_bmap_add_attrfork(
|
|
|
ASSERT(ip->i_d.di_aformat == 0);
|
|
|
ip->i_d.di_aformat = XFS_DINODE_FMT_EXTENTS;
|
|
|
}
|
|
|
- ASSERT(ip->i_d.di_anextents == 0);
|
|
|
|
|
|
xfs_trans_ijoin(tp, ip, 0);
|
|
|
xfs_trans_log_inode(tp, ip, XFS_ILOG_CORE);
|