Revert "BACKPORT: ANDROID: Expose MGLRU admin file to sysfs"

This reverts commit 75e7a5e2265fb455c59f734d5ebddb6650a65753.

Change-Id: I72e346a23e6f99cca9db203f319d6dd1ae4a9d19
Signed-off-by: Kameron Lutes <[email protected]>
diff --git a/mm/vmscan.c b/mm/vmscan.c
index 3a15ab1..23eda73 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -193,8 +193,6 @@ struct scan_control {
  */
 int vm_swappiness = 60;
 
-struct kernfs_node *lru_gen_admin_node;
-
 static void set_task_reclaim_state(struct task_struct *task,
 				   struct reclaim_state *rs)
 {
@@ -4198,7 +4196,6 @@ static void inc_max_seq(struct lruvec *lruvec, bool can_swap, bool full_scan)
 
 	spin_unlock_irq(&lruvec->lru_lock);
 
-	kernfs_notify(lru_gen_admin_node);
 	trace_android_vh_mglru_new_gen(NULL);
 }
 
@@ -5265,105 +5262,9 @@ static struct kobj_attribute lru_gen_enabled_attr = __ATTR(
 	enabled, 0644, show_enabled, store_enabled
 );
 
-int print_node_mglru(struct lruvec *lruvec, char *buf, int orig_pos)
-{
-	unsigned long seq;
-	struct lru_gen_struct *lrugen = &lruvec->lrugen;
-
-	DEFINE_MAX_SEQ(lruvec);
-	DEFINE_MIN_SEQ(lruvec);
-
-	int print_pos = orig_pos;
-
-	seq = min(min_seq[0], min_seq[1]);
-
-	for (; seq <= max_seq; seq++) {
-		int gen, type, zone;
-		unsigned int msecs;
-
-		gen = lru_gen_from_seq(seq);
-		msecs = jiffies_to_msecs(jiffies - READ_ONCE(lrugen->timestamps[gen]));
-
-		print_pos += snprintf(buf + print_pos, PAGE_SIZE - print_pos,
-			" %10lu %10u", seq, msecs);
-
-		for (type = 0; type < ANON_AND_FILE; type++) {
-			long size = 0;
-
-			if (seq < min_seq[type]) {
-				print_pos += snprintf(buf + print_pos,
-					PAGE_SIZE - print_pos, "         -0 ");
-				continue;
-			}
-
-			for (zone = 0; zone < MAX_NR_ZONES; zone++)
-				size += READ_ONCE(lrugen->nr_pages[gen][type][zone]);
-
-			print_pos += snprintf(buf + print_pos,
-				PAGE_SIZE - print_pos, " %10lu ", max(size, 0L));
-		}
-
-		print_pos += snprintf(buf + print_pos, PAGE_SIZE - print_pos, "\n");
-
-	}
-
-	return print_pos - orig_pos;
-}
-
-static ssize_t lru_gen_admin_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf)
-{
-	struct lruvec *lruvec;
-	struct mem_cgroup *memcg;
-
-	char *path = kvmalloc(PATH_MAX, GFP_KERNEL);
-	int buf_len = 0;
-
-	if (!path)
-		return -EINVAL;
-	path[0] = 0;
-	buf[0] = 0;
-	memcg = mem_cgroup_iter(NULL, NULL, NULL);
-	do {
-		int nid;
-
-		for_each_node_state(nid, N_MEMORY) {
-			lruvec = mem_cgroup_lruvec(memcg, NODE_DATA(nid));
-			if (lruvec) {
-				if (nid == first_memory_node) {
-#ifdef CONFIG_MEMCG
-					if (memcg)
-						cgroup_path(memcg->css.cgroup, path, PATH_MAX);
-					else
-						path[0] = 0;
-#endif
-					buf_len += snprintf(buf + buf_len, PAGE_SIZE - buf_len,
-						"memcg %5hu %s\n", mem_cgroup_id(memcg), path);
-				}
-
-				buf_len += snprintf(buf + buf_len, PAGE_SIZE - buf_len,
-					" node %5d\n", nid);
-				buf_len += print_node_mglru(lruvec, buf, buf_len);
-			}
-		}
-	} while ((memcg = mem_cgroup_iter(NULL, memcg, NULL)));
-
-	if (buf_len >= PAGE_SIZE)
-		buf_len = PAGE_SIZE - 1;
-	buf[buf_len] = 0;
-
-	kvfree(path);
-
-	return buf_len;
-}
-
-static struct kobj_attribute lru_gen_admin_attr = __ATTR(
-	admin, 0444, lru_gen_admin_show, NULL
-);
-
 static struct attribute *lru_gen_attrs[] = {
 	&lru_gen_min_ttl_attr.attr,
 	&lru_gen_enabled_attr.attr,
-	&lru_gen_admin_attr.attr,
 	NULL
 };
 
@@ -5780,14 +5681,11 @@ void lru_gen_exit_memcg(struct mem_cgroup *memcg)
 
 static int __init init_lru_gen(void)
 {
-	struct kernfs_node *tmp;
 	BUILD_BUG_ON(MIN_NR_GENS + 1 >= MAX_NR_GENS);
 	BUILD_BUG_ON(BIT(LRU_GEN_WIDTH) <= MAX_NR_GENS);
 
 	if (sysfs_create_group(mm_kobj, &lru_gen_attr_group))
 		pr_err("lru_gen: failed to create sysfs group\n");
-	tmp = kernfs_find_and_get(mm_kobj->sd, "lru_gen");
-	lru_gen_admin_node = kernfs_find_and_get(tmp, "admin");
 
 	debugfs_create_file("lru_gen", 0644, NULL, NULL, &lru_gen_rw_fops);
 	debugfs_create_file("lru_gen_full", 0444, NULL, NULL, &lru_gen_ro_fops);