Re: Access Control Lists for tmpfs

From: Arjan van de Ven
Date: Sat Sep 02 2006 - 03:22:21 EST


On Fri, 2006-09-01 at 14:52 -0700, Andrew Morton wrote:
> On Sat, 02 Sep 2006 00:14:23 +0200
> Andreas Gruenbacher <agruen@xxxxxxx> wrote:
>
> > +static void
> > +shmem_set_acl(struct inode *inode, int type, struct posix_acl *acl)
> > +{
> > + spin_lock(&inode->i_lock);
> > + switch(type) {
> > + case ACL_TYPE_ACCESS:
> > + if (SHMEM_I(inode)->i_acl)
> > + posix_acl_release(SHMEM_I(inode)->i_acl);
> > + SHMEM_I(inode)->i_acl = posix_acl_dup(acl);
> > + break;
>
> i_lock is "general-purpose, innermost per-inode lock". Calling kfree()
> under it makes it no longer "innermost". But kfree() is surely atomic wrt
> everything which filesystems and the VFS will want to do, so that's OK.

and lockdep probably will yell loudly if there's a problem.



--
VGER BF report: H 0
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/