diff options
Diffstat (limited to 'fs/aufs/debug.c')
-rw-r--r-- | fs/aufs/debug.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/aufs/debug.c b/fs/aufs/debug.c index 4fdc9d422..44bdb5ff8 100644 --- a/fs/aufs/debug.c +++ b/fs/aufs/debug.c @@ -163,9 +163,9 @@ static int do_pri_dentry(aufs_bindex_t bindex, struct dentry *dentry) { struct dentry *wh = NULL; int hn; + struct inode *inode; struct au_iinfo *iinfo; struct au_hinode *hi; - struct inode *inode; if (!dentry || IS_ERR(dentry)) { dpri("d%d: err %ld\n", bindex, PTR_ERR(dentry)); @@ -180,11 +180,12 @@ static int do_pri_dentry(aufs_bindex_t bindex, struct dentry *dentry) d_unhashed(dentry) ? "un" : ""); hn = -1; inode = NULL; - if (bindex >= 0 - && d_is_positive(dentry) - && au_test_aufs(dentry->d_sb)) + if (d_is_positive(dentry)) inode = d_inode(dentry); - if (inode && !au_is_bad_inode(inode)) { + if (inode + && au_test_aufs(dentry->d_sb) + && bindex >= 0 + && !au_is_bad_inode(inode)) { iinfo = au_ii(inode); hi = au_hinode(iinfo, bindex); hn = !!au_hn(hi); |