ocfs2: use list_for_each_entry in ocfs2_find_local_alias()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Al Viro 2012-06-09 13:09:15 -04:00
Родитель 12447c4039
Коммит a614a092bf
1 изменённых файлов: 5 добавлений и 11 удалений

Просмотреть файл

@ -170,13 +170,10 @@ struct dentry *ocfs2_find_local_alias(struct inode *inode,
u64 parent_blkno,
int skip_unhashed)
{
struct list_head *p;
struct dentry *dentry = NULL;
struct dentry *dentry;
spin_lock(&inode->i_lock);
list_for_each(p, &inode->i_dentry) {
dentry = list_entry(p, struct dentry, d_alias);
list_for_each_entry(dentry, &inode->i_dentry, d_alias) {
spin_lock(&dentry->d_lock);
if (ocfs2_match_dentry(dentry, parent_blkno, skip_unhashed)) {
trace_ocfs2_find_local_alias(dentry->d_name.len,
@ -184,16 +181,13 @@ struct dentry *ocfs2_find_local_alias(struct inode *inode,
dget_dlock(dentry);
spin_unlock(&dentry->d_lock);
break;
spin_unlock(&inode->i_lock);
return dentry;
}
spin_unlock(&dentry->d_lock);
dentry = NULL;
}
spin_unlock(&inode->i_lock);
return dentry;
return NULL;
}
DEFINE_SPINLOCK(dentry_attach_lock);