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

Commit c143c233 authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Al Viro
Browse files

vfs: Remove d_drop calls from d_revalidate implementations



Now that d_invalidate always succeeds it is not longer necessary or
desirable to hard code d_drop calls into filesystem specific
d_revalidate implementations.

Remove the unnecessary d_drop calls and rely on d_invalidate
to drop the dentries.  Using d_invalidate ensures that paths
to mount points will not be dropped.

Reviewed-by: default avatarMiklos Szeredi <miklos@szeredi.hu>
Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 5542aa2f
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -1069,7 +1069,6 @@ static int ceph_d_revalidate(struct dentry *dentry, unsigned int flags)
		ceph_dentry_lru_touch(dentry);
	} else {
		ceph_dir_clear_complete(dir);
		d_drop(dentry);
	}
	iput(dir);
	return valid;
+0 −4
Original line number Diff line number Diff line
@@ -1590,7 +1590,6 @@ int pid_revalidate(struct dentry *dentry, unsigned int flags)
		put_task_struct(task);
		return 1;
	}
	d_drop(dentry);
	return 0;
}

@@ -1727,9 +1726,6 @@ static int map_files_d_revalidate(struct dentry *dentry, unsigned int flags)
	put_task_struct(task);

out_notask:
	if (status <= 0)
		d_drop(dentry);

	return status;
}

+0 −2
Original line number Diff line number Diff line
@@ -129,8 +129,6 @@ static int tid_fd_revalidate(struct dentry *dentry, unsigned int flags)
		}
		put_task_struct(task);
	}

	d_drop(dentry);
	return 0;
}