Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d5bb68ad authored by Al Viro's avatar Al Viro
Browse files

another race fix in jfs_check_acl()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 72c04902
Loading
Loading
Loading
Loading
+7 −6
Original line number Diff line number Diff line
@@ -118,15 +118,16 @@ out:

static int jfs_check_acl(struct inode *inode, int mask)
{
	if (inode->i_acl == ACL_NOT_CACHED) {
	struct posix_acl *acl = jfs_get_acl(inode, ACL_TYPE_ACCESS);

	if (IS_ERR(acl))
		return PTR_ERR(acl);
	if (acl) {
		int error = posix_acl_permission(inode, acl, mask);
		posix_acl_release(acl);
		return error;
	}

	if (inode->i_acl)
		return posix_acl_permission(inode, inode->i_acl, mask);
	return -EAGAIN;
}