From 8c9812418883b04e3a7a2e5db12012dc2e1b6b14 Mon Sep 17 00:00:00 2001
From: Koki Ryu <kokiryu@google.com>
Date: Thu, 22 Dec 2022 17:30:17 +0900
Subject: [PATCH] CHROMIUM: Add userspace notification for MGLRU generation
 creation

Add sysfs_notify so that every time a new MGLRU
generation is created so that user space programs can notice that by
polling /sys/kernel/mm/lru_gen/admin.

BUG=b:260967742
TEST=Built.
  Run /google/data/ro/users/su/suleiman/tests/poll.c on /sys/kernel/mm/lru_gen/admin
  while generating memory pressure with /google/data/ro/users/su/suleiman/tests/memtoy,
  ensuring it returns a POLLPRI event.
  Also made sure kernel built with USE=lockdebug doesn't have warnings.
Signed-off-by: Koki Ryu <kokiryu@google.com>
Signed-off-by: Suleiman Souhlal <suleiman@google.com>
Change-Id: I86aa889e360d219939c8e673067822cf340c0f01
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/4393685

[rebase66(tzungbi):
 Revised commit message.
   Imported message from https://crrev.com/c/3936130.
 Squashed:
   FIXUP: CHROMIUM: MGLRU: sysfs notification using a kernfs_node
     (https://crrev.com/c/4917866)
]
Signed-off-by: Tzung-Bi Shih <tzungbi@chromium.org>
---
 mm/vmscan.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/mm/vmscan.c b/mm/vmscan.c
index 499d93c0574fb44dd9ee50f4fe09273c1e3927b4..0536a047e73f09b024977e3fbad42946a5cea333 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -2545,6 +2545,8 @@ static bool can_age_anon_pages(struct pglist_data *pgdat,
 
 #ifdef CONFIG_LRU_GEN
 
+static struct kernfs_node *lru_gen_admin_node;
+
 #ifdef CONFIG_LRU_GEN_ENABLED
 DEFINE_STATIC_KEY_ARRAY_TRUE(lru_gen_caps, NR_LRU_GEN_CAPS);
 #define get_cap(cap)	static_branch_likely(&lru_gen_caps[cap])
@@ -3836,6 +3838,7 @@ static bool try_to_inc_max_seq(struct lruvec *lruvec, unsigned long seq,
 	struct lru_gen_mm_state *mm_state = get_mm_state(lruvec);
 
 	VM_WARN_ON_ONCE(seq > READ_ONCE(lrugen->max_seq));
+	kernfs_notify(lru_gen_admin_node);
 
 	if (!mm_state)
 		return inc_max_seq(lruvec, seq, can_swap, force_scan);
@@ -5762,11 +5765,14 @@ 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);
-- 
2.44.0.396.g6e790dbe36-goog

