mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 05:04:09 +08:00
xfs: turn the XFS_DA_OP_REPLACE checks in xfs_attr_shortform_addname into asserts
Since commit deed951287
("xfs: Check for -ENOATTR or -EEXIST"), the
high-level attr code does a lookup for any attr we're trying to set,
and does the checks to handle the create vs replace cases, which thus
never hit the low-level attr code.
Turn the checks in xfs_attr_shortform_addname as they must never trip.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: "Darrick J. Wong" <djwong@kernel.org>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Chandan Babu R <chandanbabu@kernel.org>
This commit is contained in:
parent
074aea4be1
commit
378b6aef9d
@ -1072,8 +1072,7 @@ xfs_attr_shortform_addname(
|
||||
if (xfs_attr_sf_findname(args)) {
|
||||
int error;
|
||||
|
||||
if (!(args->op_flags & XFS_DA_OP_REPLACE))
|
||||
return -EEXIST;
|
||||
ASSERT(args->op_flags & XFS_DA_OP_REPLACE);
|
||||
|
||||
error = xfs_attr_sf_removename(args);
|
||||
if (error)
|
||||
@ -1087,8 +1086,7 @@ xfs_attr_shortform_addname(
|
||||
*/
|
||||
args->op_flags &= ~XFS_DA_OP_REPLACE;
|
||||
} else {
|
||||
if (args->op_flags & XFS_DA_OP_REPLACE)
|
||||
return -ENOATTR;
|
||||
ASSERT(!(args->op_flags & XFS_DA_OP_REPLACE));
|
||||
}
|
||||
|
||||
if (args->namelen >= XFS_ATTR_SF_ENTSIZE_MAX ||
|
||||
|
Loading…
Reference in New Issue
Block a user