Revert "proc: allow pid_revalidate() during LOOKUP_RCU"

This reverts commit da4d6b9cf80ae5b0083f640133b85b68b53b6497.

Appears to cause stale dcache entries for inodes in /proc/$pid
filesystem resulting in ESRCH failures on access to files
under /proc/self

Bug: 305682813
Bug: 306055483
Bug: 319054925
Signed-off-by: Todd Kjos <tkjos@google.com>
Change-Id: I004338c043d7e777fdfef343e45ccb20ff4d503b
(cherry picked from commit 43a07d84dad8dbf1ed7dd13caaa5232d526ad951)
diff --git a/fs/proc/base.c b/fs/proc/base.c
index f7c6474c..69261a1 100644
--- a/fs/proc/base.c
+++ b/fs/proc/base.c
@@ -2010,21 +2010,19 @@
 {
 	struct inode *inode;
 	struct task_struct *task;
-	int ret = 0;
 
-	rcu_read_lock();
-	inode = d_inode_rcu(dentry);
-	if (!inode)
-		goto out;
-	task = pid_task(proc_pid(inode), PIDTYPE_PID);
+	if (flags & LOOKUP_RCU)
+		return -ECHILD;
+
+	inode = d_inode(dentry);
+	task = get_proc_task(inode);
 
 	if (task) {
 		pid_update_inode(task, inode);
-		ret = 1;
+		put_task_struct(task);
+		return 1;
 	}
-out:
-	rcu_read_unlock();
-	return ret;
+	return 0;
 }
 
 static inline bool proc_inode_is_dead(struct inode *inode)