• Richard Weinberger's avatar
    ubifs: Limit number of xattrs per inode · 9ca2d732
    Richard Weinberger authored
    Since we have to write one deletion inode per xattr
    into the journal, limit the max number of xattrs.
    
    In theory UBIFS supported up to 65535 xattrs per inode.
    But this never worked correctly, expect no powercuts happened.
    Now we support only as many xattrs as we can store in 50% of a
    LEB.
    Even for tiny flashes this allows dozens of xattrs per inode,
    which is for an embedded filesystem still fine.
    
    In case someone has existing inodes with much more xattrs, it is
    still possible to delete them.
    UBIFS will fall back to an non-atomic deletion mode.
    Reported-by: default avatarStefan Agner <stefan@agner.ch>
    Fixes: 1e51764a ("UBIFS: add new flash file system")
    Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
    9ca2d732
xattr.c 19.3 KB