0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 Large Extended Attribute Values
0004 -------------------------------
0005
0006 To enable ext4 to store extended attribute values that do not fit in the
0007 inode or in the single extended attribute block attached to an inode,
0008 the EA_INODE feature allows us to store the value in the data blocks of
0009 a regular file inode. This “EA inode” is linked only from the extended
0010 attribute name index and must not appear in a directory entry. The
0011 inode's i_atime field is used to store a checksum of the xattr value;
0012 and i_ctime/i_version store a 64-bit reference count, which enables
0013 sharing of large xattr values between multiple owning inodes. For
0014 backward compatibility with older versions of this feature, the
0015 i_mtime/i_generation *may* store a back-reference to the inode number
0016 and i_generation of the **one** owning inode (in cases where the EA
0017 inode is not referenced by multiple inodes) to verify that the EA inode
0018 is the correct one being accessed.