Commit 3f798aa6 authored by Chengming Zhou's avatar Chengming Zhou Committed by Andrew Morton
Browse files

mm/list_lru: remove list_lru_putback()

Since the only user zswap_lru_putback() has gone, remove
list_lru_putback() too.

Link: https://lkml.kernel.org/r/20240126-zswap-writeback-race-v2-3-b10479847099@bytedance.com


Signed-off-by: default avatarChengming Zhou <zhouchengming@bytedance.com>
Acked-by: default avatarYosry Ahmed <yosryahmed@google.com>
Cc: Chris Li <chriscli@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Nhat Pham <nphamcs@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 5878303c
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -168,22 +168,6 @@ static inline unsigned long list_lru_count(struct list_lru *lru)
void list_lru_isolate(struct list_lru_one *list, struct list_head *item);
void list_lru_isolate_move(struct list_lru_one *list, struct list_head *item,
			   struct list_head *head);
/**
 * list_lru_putback: undo list_lru_isolate
 * @lru: the lru pointer.
 * @item: the item to put back.
 * @nid: the node id of the sublist to put the item back to.
 * @memcg: the cgroup of the sublist to put the item back to.
 *
 * Put back an isolated item into its original LRU. Note that unlike
 * list_lru_add, this does not increment the node LRU count (as
 * list_lru_isolate does not originally decrement this count).
 *
 * Since we might have dropped the LRU lock in between, recompute list_lru_one
 * from the node's id and memcg.
 */
void list_lru_putback(struct list_lru *lru, struct list_head *item, int nid,
		      struct mem_cgroup *memcg);

typedef enum lru_status (*list_lru_walk_cb)(struct list_head *item,
		struct list_lru_one *list, spinlock_t *lock, void *cb_arg);
+0 −14
Original line number Diff line number Diff line
@@ -162,20 +162,6 @@ void list_lru_isolate_move(struct list_lru_one *list, struct list_head *item,
}
EXPORT_SYMBOL_GPL(list_lru_isolate_move);

void list_lru_putback(struct list_lru *lru, struct list_head *item, int nid,
		      struct mem_cgroup *memcg)
{
	struct list_lru_one *list =
		list_lru_from_memcg_idx(lru, nid, memcg_kmem_id(memcg));

	if (list_empty(item)) {
		list_add_tail(item, &list->list);
		if (!list->nr_items++)
			set_shrinker_bit(memcg, nid, lru_shrinker_id(lru));
	}
}
EXPORT_SYMBOL_GPL(list_lru_putback);

unsigned long list_lru_count_one(struct list_lru *lru,
				 int nid, struct mem_cgroup *memcg)
{
+1 −1
Original line number Diff line number Diff line
@@ -410,7 +410,7 @@ static void zswap_lru_add(struct list_lru *list_lru, struct zswap_entry *entry)
	 * 2. list_lru_add() is called after memcg->kmemcg_id is updated. The
	 *    new entry will be added directly to memcg's parent's list_lru.
	 *
	 * Similar reasoning holds for list_lru_del() and list_lru_putback().
	 * Similar reasoning holds for list_lru_del().
	 */
	rcu_read_lock();
	memcg = mem_cgroup_from_entry(entry);