Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee70fca0 authored by Martin Brandenburg's avatar Martin Brandenburg Committed by Mike Marshall
Browse files

orangefs: don't d_drop in d_revalidate since the caller will

parent ee3b8d37
Loading
Loading
Loading
Loading
+2 −8
Original line number Original line Diff line number Diff line
@@ -82,7 +82,6 @@ static int orangefs_revalidate_lookup(struct dentry *dentry)
out_drop:
out_drop:
	gossip_debug(GOSSIP_DCACHE_DEBUG, "%s:%s:%d revalidate failed\n",
	gossip_debug(GOSSIP_DCACHE_DEBUG, "%s:%s:%d revalidate failed\n",
	    __FILE__, __func__, __LINE__);
	    __FILE__, __func__, __LINE__);
	d_drop(dentry);
	goto out_release_op;
	goto out_release_op;
}
}


@@ -109,10 +108,8 @@ static int orangefs_d_revalidate(struct dentry *dentry, unsigned int flags)
	 * If this passes, the positive dentry still exists or the negative
	 * If this passes, the positive dentry still exists or the negative
	 * dentry still does not exist.
	 * dentry still does not exist.
	 */
	 */
	if (!orangefs_revalidate_lookup(dentry)) {
	if (!orangefs_revalidate_lookup(dentry))
		d_drop(dentry);
		return 0;
		return 0;
	}


	/* We do not need to continue with negative dentries. */
	/* We do not need to continue with negative dentries. */
	if (!dentry->d_inode)
	if (!dentry->d_inode)
@@ -125,13 +122,10 @@ static int orangefs_d_revalidate(struct dentry *dentry, unsigned int flags)
	if (ret < 0) {
	if (ret < 0) {
		gossip_debug(GOSSIP_DCACHE_DEBUG, "%s:%s:%d getattr failure.\n",
		gossip_debug(GOSSIP_DCACHE_DEBUG, "%s:%s:%d getattr failure.\n",
		    __FILE__, __func__, __LINE__);
		    __FILE__, __func__, __LINE__);
		d_drop(dentry);
		return 0;
		return 0;
	}
	}
	if (ret == 0) {
	if (ret == 0)
		d_drop(dentry);
		return 0;
		return 0;
	}


out:
out:
	gossip_debug(GOSSIP_DCACHE_DEBUG,
	gossip_debug(GOSSIP_DCACHE_DEBUG,