ceph: fix dir_auth check in ceph_fill_dirfrag()
-1 is CDIR_AUTH_PARENT, it means dir's auth mds is the same as inode's auth mds Signed-off-by: Yan, Zheng <zyan@redhat.com>
This commit is contained in:
parent
a407846ef7
commit
421721195a
@ -254,6 +254,9 @@ static int ceph_fill_dirfrag(struct inode *inode,
|
|||||||
diri_auth = ci->i_auth_cap->mds;
|
diri_auth = ci->i_auth_cap->mds;
|
||||||
spin_unlock(&ci->i_ceph_lock);
|
spin_unlock(&ci->i_ceph_lock);
|
||||||
|
|
||||||
|
if (mds == -1) /* CDIR_AUTH_PARENT */
|
||||||
|
mds = diri_auth;
|
||||||
|
|
||||||
mutex_lock(&ci->i_fragtree_mutex);
|
mutex_lock(&ci->i_fragtree_mutex);
|
||||||
if (ndist == 0 && mds == diri_auth) {
|
if (ndist == 0 && mds == diri_auth) {
|
||||||
/* no delegation info needed. */
|
/* no delegation info needed. */
|
||||||
|
Loading…
Reference in New Issue
Block a user