Searched hist:b581755b (Results 1 – 1 of 1) sorted by relevance
/openbmc/linux/fs/overlayfs/ |
H A D | inode.c | b581755b Mon Jun 06 09:21:37 CDT 2016 Miklos Szeredi <mszeredi@redhat.com> ovl: xattr filter fix
a) ovl_need_xattr_filter() is wrong, we can have multiple lower layers overlaid, all of which (except the lowest one) honouring the "trusted.overlay.opaque" xattr. So need to filter everything except the bottom and the pure-upper layer.
b) we no longer can assume that inode is attached to dentry in get/setxattr.
This patch unconditionally filters private xattrs to fix both of the above. Performance impact for get/removexattrs is likely in the noise.
For listxattrs it might be measurable in pathological cases, but I very much hope nobody cares. If they do, we'll fix it then.
Reported-by: Vivek Goyal <vgoyal@redhat.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com> Fixes: b96809173e94 ("security_d_instantiate(): move to the point prior to attaching dentry to inode") b581755b Mon Jun 06 09:21:37 CDT 2016 Miklos Szeredi <mszeredi@redhat.com> ovl: xattr filter fix a) ovl_need_xattr_filter() is wrong, we can have multiple lower layers overlaid, all of which (except the lowest one) honouring the "trusted.overlay.opaque" xattr. So need to filter everything except the bottom and the pure-upper layer. b) we no longer can assume that inode is attached to dentry in get/setxattr. This patch unconditionally filters private xattrs to fix both of the above. Performance impact for get/removexattrs is likely in the noise. For listxattrs it might be measurable in pathological cases, but I very much hope nobody cares. If they do, we'll fix it then. Reported-by: Vivek Goyal <vgoyal@redhat.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com> Fixes: b96809173e94 ("security_d_instantiate(): move to the point prior to attaching dentry to inode")
|