ovl: check IS_APPEND() on real upper inode
authorAmir Goldstein <amir73il@gmail.com>
Sat, 8 Apr 2017 11:49:07 +0000 (14:49 +0300)
committerMiklos Szeredi <mszeredi@redhat.com>
Thu, 20 Apr 2017 14:37:26 +0000 (16:37 +0200)
commitb0990fbbbd147da2096b24f2d462abe02ca251fd
treecf376e535baa2a18c3f8a63e393b2f1c54e1b366
parent78757af6518a35bdc22b4e7f660ff9dbbeba35d7
ovl: check IS_APPEND() on real upper inode

For overlay file open, check IS_APPEND() on the real upper inode
inside d_real(), because the overlay inode does not have the
S_APPEND flag and IS_APPEND() can only be checked at open time.

Note that because overlayfs does not copy up the chattr inode flags
(i.e. S_APPEND, S_IMMUTABLE), the IS_APPEND() check is only relevant
for upper inodes that were set with chattr +a and not to lower
inodes that had chattr +a before copy up.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
fs/overlayfs/super.c