lkml.org 
[lkml]   [2005]   [Aug]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: BUG: reiserfs+acl+quota deadlock
    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1




    Vladimir V. Saveliev wrote:
    > Hello
    >
    > Jan Kara wrote:
    >>> Tried the attached patch but it changed nothing, I trying to create
    >>> a new file as a user whose quota grace time has ran out will still
    >>> cause everything accessing the users homedir (the one with the quota)
    >>> to hang in D state.
    >>>
    >>> Also note that the bug I reported only exists when acl is also
    >>> enabled (does not have to be used). And although my kernel is not
    >>> built with debug (or reiserfs debug) support, I don't get any
    >>> oopses or reiserfs errors.. it just hangs.
    >>
    >
    > It looks like the problem is that reiserfs_new_inode can be called
    > either having xattrs locked or not.
    > It does unlocking/locking xattrs on error handling path, but has no idea
    > about whether
    > xattrs are locked of not.
    > The attached patch seems to fix the problem.
    > I am not sure whether it is correct way to fix this problem, though.

    Does this patch actually fix it? It shouldn't.

    The logic is like this: If a default ACL is associated with the parent
    when the inode is created, xattrs will be locked so that the ACL can be
    inherited. Since reiserfs_new_inode is called from the VFS layer with
    inode->i_sem downed, {set,remove}xattr is locked out. The default ACL
    can't be removed/added/changed while reiserfs_new_inode is running.
    Therefore, if there is a default ACL, xattrs must be locked.

    - -Jeff

    - --
    Jeff Mahoney
    SuSE Labs
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.4.0 (GNU/Linux)

    iD8DBQFC/LwALPWxlyuTD7IRAl1hAJ9dVKCWPYdMO85+EKjL+2kq9dy3ngCfdS9w
    56060gxdR2z0d6UFP79yQ1A=
    =S8+3
    -----END PGP SIGNATURE-----
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-08-12 17:13    [W:0.024 / U:88.996 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site