• Daniel Xu's avatar
    kernfs: Add option to enable user xattrs · 0c47383b
    Daniel Xu authored
    User extended attributes are useful as metadata storage for kernfs
    consumers like cgroups. Especially in the case of cgroups, it is useful
    to have a central metadata store that multiple processes/services can
    use to coordinate actions.
    
    A concrete example is for userspace out of memory killers. We want to
    let delegated cgroup subtree owners (running as non-root) to be able to
    say "please avoid killing this cgroup". This is especially important for
    desktop linux as delegated subtrees owners are less likely to run as
    root.
    
    This patch introduces a new flag, KERNFS_ROOT_SUPPORT_USER_XATTR, that
    lets kernfs consumers enable user xattr support. An initial limit of 128
    entries or 128KB -- whichever is hit first -- is placed per cgroup
    because xattrs come from kernel memory and we don't want to let
    unprivileged users accidentally eat up too much kernel memory.
    Signed-off-by: default avatarDaniel Xu <dxu@dxuuu.xyz>
    Acked-by: default avatarChris Down <chris@chrisdown.name>
    Reviewed-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: default avatarTejun Heo <tj@kernel.org>
    0c47383b
kernfs-internal.h 3.41 KB