summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/ocfs2/xattr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c
index 1b21fbc16d73..5fd85f517868 100644
--- a/fs/ocfs2/xattr.c
+++ b/fs/ocfs2/xattr.c
@@ -1971,8 +1971,7 @@ static void ocfs2_xa_remove_entry(struct ocfs2_xa_loc *loc)
ocfs2_xa_wipe_namevalue(loc);
loc->xl_entry = NULL;
- le16_add_cpu(&xh->xh_count, -1);
- count = le16_to_cpu(xh->xh_count);
+ count = le16_to_cpu(xh->xh_count) - 1;
/*
* Only zero out the entry if there are more remaining. This is
@@ -1987,6 +1986,8 @@ static void ocfs2_xa_remove_entry(struct ocfs2_xa_loc *loc)
memset(&xh->xh_entries[count], 0,
sizeof(struct ocfs2_xattr_entry));
}
+
+ xh->xh_count = cpu_to_le16(count);
}
/*