|
@@ -643,7 +643,7 @@ static size_t ext4_xattr_free_space(struct ext4_xattr_entry *last,
|
|
|
size_t *min_offs, void *base, int *total)
|
|
|
{
|
|
|
for (; !IS_LAST_ENTRY(last); last = EXT4_XATTR_NEXT(last)) {
|
|
|
- if (!last->e_value_block && last->e_value_size) {
|
|
|
+ if (last->e_value_size) {
|
|
|
size_t offs = le16_to_cpu(last->e_value_offs);
|
|
|
if (offs < *min_offs)
|
|
|
*min_offs = offs;
|
|
@@ -663,7 +663,7 @@ ext4_xattr_set_entry(struct ext4_xattr_info *i, struct ext4_xattr_search *s)
|
|
|
/* Compute min_offs and last. */
|
|
|
last = s->first;
|
|
|
for (; !IS_LAST_ENTRY(last); last = EXT4_XATTR_NEXT(last)) {
|
|
|
- if (!last->e_value_block && last->e_value_size) {
|
|
|
+ if (last->e_value_size) {
|
|
|
size_t offs = le16_to_cpu(last->e_value_offs);
|
|
|
if (offs < min_offs)
|
|
|
min_offs = offs;
|
|
@@ -671,7 +671,7 @@ ext4_xattr_set_entry(struct ext4_xattr_info *i, struct ext4_xattr_search *s)
|
|
|
}
|
|
|
free = min_offs - ((void *)last - s->base) - sizeof(__u32);
|
|
|
if (!s->not_found) {
|
|
|
- if (!s->here->e_value_block && s->here->e_value_size) {
|
|
|
+ if (s->here->e_value_size) {
|
|
|
size_t size = le32_to_cpu(s->here->e_value_size);
|
|
|
free += EXT4_XATTR_SIZE(size);
|
|
|
}
|
|
@@ -693,7 +693,7 @@ ext4_xattr_set_entry(struct ext4_xattr_info *i, struct ext4_xattr_search *s)
|
|
|
s->here->e_name_len = name_len;
|
|
|
memcpy(s->here->e_name, i->name, name_len);
|
|
|
} else {
|
|
|
- if (!s->here->e_value_block && s->here->e_value_size) {
|
|
|
+ if (s->here->e_value_size) {
|
|
|
void *first_val = s->base + min_offs;
|
|
|
size_t offs = le16_to_cpu(s->here->e_value_offs);
|
|
|
void *val = s->base + offs;
|
|
@@ -727,8 +727,7 @@ ext4_xattr_set_entry(struct ext4_xattr_info *i, struct ext4_xattr_search *s)
|
|
|
last = s->first;
|
|
|
while (!IS_LAST_ENTRY(last)) {
|
|
|
size_t o = le16_to_cpu(last->e_value_offs);
|
|
|
- if (!last->e_value_block &&
|
|
|
- last->e_value_size && o < offs)
|
|
|
+ if (last->e_value_size && o < offs)
|
|
|
last->e_value_offs =
|
|
|
cpu_to_le16(o + size);
|
|
|
last = EXT4_XATTR_NEXT(last);
|
|
@@ -1327,7 +1326,7 @@ static void ext4_xattr_shift_entries(struct ext4_xattr_entry *entry,
|
|
|
|
|
|
/* Adjust the value offsets of the entries */
|
|
|
for (; !IS_LAST_ENTRY(last); last = EXT4_XATTR_NEXT(last)) {
|
|
|
- if (!last->e_value_block && last->e_value_size) {
|
|
|
+ if (last->e_value_size) {
|
|
|
new_offs = le16_to_cpu(last->e_value_offs) +
|
|
|
value_offs_shift;
|
|
|
BUG_ON(new_offs + le32_to_cpu(last->e_value_size)
|
|
@@ -1726,7 +1725,7 @@ static inline void ext4_xattr_hash_entry(struct ext4_xattr_header *header,
|
|
|
*name++;
|
|
|
}
|
|
|
|
|
|
- if (entry->e_value_block == 0 && entry->e_value_size != 0) {
|
|
|
+ if (entry->e_value_size != 0) {
|
|
|
__le32 *value = (__le32 *)((char *)header +
|
|
|
le16_to_cpu(entry->e_value_offs));
|
|
|
for (n = (le32_to_cpu(entry->e_value_size) +
|