Skip to contentSkip to conversation

Patch "ext4: properly align shifted xattrs when expanding inodes" has been added to the 4.7-stable tree

PATCH [email protected] 1 participant 1 message Sep 9, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

ext4: properly align shifted xattrs when expanding inodes

to the 4.7-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
ext4-properly-align-shifted-xattrs-when-expanding-inodes.patch
and it can be found in the queue-4.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 443a8c41cd49de66a3fda45b32b9860ea0292b84 Mon Sep 17 00:00:00 2001

From: Jan Kara <[email protected]>
Date: Thu, 11 Aug 2016 12:00:01 -0400
Subject: ext4: properly align shifted xattrs when expanding inodes

From: Jan Kara <[email protected]>

commit 443a8c41cd49de66a3fda45b32b9860ea0292b84 upstream.

We did not count with the padding of xattr value when computing desired shift of xattrs in the inode when expanding i_extra_isize. As a result we could create unaligned start of inline xattrs. Account for alignment properly.

---
 fs/ext4/xattr.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
fs/ext4/xattr.c +1 -1
@@ -1521,7 +1521,7 @@ retry:
 		if (entry_size + EXT4_XATTR_SIZE(size) >= isize_diff)
 			shift_bytes = isize_diff;
 		else
-			shift_bytes = entry_size + size;
+			shift_bytes = entry_size + EXT4_XATTR_SIZE(size);
 		/* Adjust the offsets and shift the remaining entries ahead */
 		ext4_xattr_shift_entries(entry, -shift_bytes,
 			(void *)raw_inode + EXT4_GOOD_OLD_INODE_SIZE +

Patches currently in stable-queue which might be from [email protected] are

queue-4.7/ext4-fix-xattr-shifting-when-expanding-inodes-part-2.patch queue-4.7/ext4-fix-xattr-shifting-when-expanding-inodes.patch queue-4.7/ext4-avoid-deadlock-when-expanding-inode-size.patch queue-4.7/ext4-properly-align-shifted-xattrs-when-expanding-inodes.patch