move d_rcu from overlapping d_child to overlapping d_alias
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -111,7 +111,7 @@ static int fpos_cmp(loff_t l, loff_t r)
|
||||
/*
|
||||
* When possible, we try to satisfy a readdir by peeking at the
|
||||
* dcache. We make this work by carefully ordering dentries on
|
||||
* d_u.d_child when we initially get results back from the MDS, and
|
||||
* d_child when we initially get results back from the MDS, and
|
||||
* falling back to a "normal" sync readdir if any dentries in the dir
|
||||
* are dropped.
|
||||
*
|
||||
@@ -147,11 +147,11 @@ static int __dcache_readdir(struct file *file, struct dir_context *ctx,
|
||||
p = parent->d_subdirs.prev;
|
||||
dout(" initial p %p/%p\n", p->prev, p->next);
|
||||
} else {
|
||||
p = last->d_u.d_child.prev;
|
||||
p = last->d_child.prev;
|
||||
}
|
||||
|
||||
more:
|
||||
dentry = list_entry(p, struct dentry, d_u.d_child);
|
||||
dentry = list_entry(p, struct dentry, d_child);
|
||||
di = ceph_dentry(dentry);
|
||||
while (1) {
|
||||
dout(" p %p/%p %s d_subdirs %p/%p\n", p->prev, p->next,
|
||||
@@ -174,7 +174,7 @@ more:
|
||||
!dentry->d_inode ? " null" : "");
|
||||
spin_unlock(&dentry->d_lock);
|
||||
p = p->prev;
|
||||
dentry = list_entry(p, struct dentry, d_u.d_child);
|
||||
dentry = list_entry(p, struct dentry, d_child);
|
||||
di = ceph_dentry(dentry);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user