gfs2: Allow append and immutable bits to coexist
authorBob Peterson <rpeterso@redhat.com>
Wed, 25 Aug 2021 17:57:24 +0000 (12:57 -0500)
committerAndreas Gruenbacher <agruenba@redhat.com>
Mon, 25 Oct 2021 06:42:18 +0000 (08:42 +0200)
commita500bd3155f24398be968fa1fdba37308063f059
tree0666d74711f2c6daad9cebd78ee0582ebb43daf4
parentc98c2ca5eae988c47991074643e5543df60ada35
gfs2: Allow append and immutable bits to coexist

Before this patch, function do_gfs2_set_flags checked if the append
and immutable flags were being set while already set. If so, error -EPERM
was given. There's no reason why these two flags should be mutually
exclusive, and if you set them separately, you will, in essence, set
one while it is already set. For example:

chattr +a /mnt/gfs2/file1
chattr +i /mnt/gfs2/file1

The first command sets the append-only flag. Since they are additive,
the second command sets the immutable flag AND append-only flag,
since they both coexist in i_diskflags. So the second command should
not return an error. This bug caused xfstests generic/545 to fail.

This patch simply removes the invalid checks.
I also eliminated an unused parm from do_gfs2_set_flags.

Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
fs/gfs2/file.c