mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 05:34:13 +08:00
udf: Convert udf_get_parent() to new directory iteration code
Convert udf_get_parent() to use udf_fiiter_find_entry(). Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
parent
200918b34d
commit
9b06fbef42
@ -1367,17 +1367,15 @@ static struct dentry *udf_get_parent(struct dentry *child)
|
||||
{
|
||||
struct kernel_lb_addr tloc;
|
||||
struct inode *inode = NULL;
|
||||
struct fileIdentDesc cfi;
|
||||
struct udf_fileident_bh fibh;
|
||||
struct udf_fileident_iter iter;
|
||||
int err;
|
||||
|
||||
if (!udf_find_entry(d_inode(child), &dotdot_name, &fibh, &cfi))
|
||||
return ERR_PTR(-EACCES);
|
||||
err = udf_fiiter_find_entry(d_inode(child), &dotdot_name, &iter);
|
||||
if (err)
|
||||
return ERR_PTR(err);
|
||||
|
||||
if (fibh.sbh != fibh.ebh)
|
||||
brelse(fibh.ebh);
|
||||
brelse(fibh.sbh);
|
||||
|
||||
tloc = lelb_to_cpu(cfi.icb.extLocation);
|
||||
tloc = lelb_to_cpu(iter.fi.icb.extLocation);
|
||||
udf_fiiter_release(&iter);
|
||||
inode = udf_iget(child->d_sb, &tloc);
|
||||
if (IS_ERR(inode))
|
||||
return ERR_CAST(inode);
|
||||
|
Loading…
Reference in New Issue
Block a user