Skip to content

Commit

Permalink
GFS2: gfs2_set_acl(): Cache "no acl" as well
Browse files Browse the repository at this point in the history
When removing a default acl or setting an access acl that is entirely
represented in the file mode, we end up with acl == NULL in gfs2_set_acl(). In
that case, bring gfs2 in line with other file systems and cache the NULL acl
with set_cached_acl() instead of invalidating the cache with
forget_cached_acl().

Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
  • Loading branch information
Andreas Gruenbacher authored and Bob Peterson committed Mar 18, 2015
1 parent 28666d6 commit 932e468
Showing 1 changed file with 1 addition and 5 deletions.
6 changes: 1 addition & 5 deletions fs/gfs2/acl.c
Original file line number Diff line number Diff line change
Expand Up @@ -110,11 +110,7 @@ int gfs2_set_acl(struct inode *inode, struct posix_acl *acl, int type)
error = __gfs2_xattr_set(inode, name, data, len, 0, GFS2_EATYPE_SYS);
if (error)
goto out;

if (acl)
set_cached_acl(inode, type, acl);
else
forget_cached_acl(inode, type);
set_cached_acl(inode, type, acl);
out:
kfree(data);
return error;
Expand Down

0 comments on commit 932e468

Please sign in to comment.