History

mm: memcontrol: push down mem_cgroup_node_nr_lru_pages()

mem_cgroup_node_nr_lru_pages() is just a convenience wrapper around lruvec_page_state() that takes bitmasks of lru indexes and aggregates the counts for those. Replace callsites where the bitmask is simple enough with direct lruvec_page_state() calls. This removes the last extern user of mem_cgroup_node_nr_lru_pages(), so make that function private again, too.

Johannes Weiner committed 7 years ago

Commit 2b487e51 parent 22796c83 files · +10 −15Browse files

Unified · Split

3 files
  1. include/linux/memcontrol.h +0 −10
  2. mm/memcontrol.c +7 −3
  3. mm/workingset.c +3 −2
include/linux/memcontrol.h+0−10
@@ -501,9 +501,6 @@ int mem_cgroup_select_victim_node(struct mem_cgroup *memcg); · 500 unmodified lines
501void mem_cgroup_update_lru_size(struct lruvec *lruvec, enum lru_list lru,501void mem_cgroup_update_lru_size(struct lruvec *lruvec, enum lru_list lru,
502 int zid, int nr_pages);502 int zid, int nr_pages);
503 503
504unsigned long mem_cgroup_node_nr_lru_pages(struct mem_cgroup *memcg,
505 int nid, unsigned int lru_mask);
506
507static inline504static inline
508unsigned long mem_cgroup_get_zone_lru_size(struct lruvec *lruvec,505unsigned long mem_cgroup_get_zone_lru_size(struct lruvec *lruvec,
509 enum lru_list lru, int zone_idx)506 enum lru_list lru, int zone_idx)
@@ -954,13 +951,6 @@ unsigned long mem_cgroup_get_zone_lru_size(struct lruvec *lruvec, · 444 unmodified lines
954 return 0;951 return 0;
955}952}
956 953
957static inline unsigned long
958mem_cgroup_node_nr_lru_pages(struct mem_cgroup *memcg,
959 int nid, unsigned int lru_mask)
960{
961 return 0;
962}
963
964static inline unsigned long mem_cgroup_get_max(struct mem_cgroup *memcg)954static inline unsigned long mem_cgroup_get_max(struct mem_cgroup *memcg)
965{955{
966 return 0;956 return 0;
mm/memcontrol.c+7−3
@@ -725,7 +725,7 @@ static void mem_cgroup_charge_statistics(struct mem_cgroup *memcg, · 724 unmodified lines
725 __this_cpu_add(memcg->stat_cpu->nr_page_events, nr_pages);725 __this_cpu_add(memcg->stat_cpu->nr_page_events, nr_pages);
726}726}
727 727
728unsigned long mem_cgroup_node_nr_lru_pages(struct mem_cgroup *memcg,728static unsigned long mem_cgroup_node_nr_lru_pages(struct mem_cgroup *memcg,
729 int nid, unsigned int lru_mask)729 int nid, unsigned int lru_mask)
730{730{
731 struct lruvec *lruvec = mem_cgroup_lruvec(NODE_DATA(nid), memcg);731 struct lruvec *lruvec = mem_cgroup_lruvec(NODE_DATA(nid), memcg);
@@ -1425,11 +1425,15 @@ static bool mem_cgroup_out_of_memory(struct mem_cgroup *memcg, gfp_t gfp_mask, · 693 unmodified lines
1425static bool test_mem_cgroup_node_reclaimable(struct mem_cgroup *memcg,1425static bool test_mem_cgroup_node_reclaimable(struct mem_cgroup *memcg,
1426 int nid, bool noswap)1426 int nid, bool noswap)
1427{1427{
1428 if (mem_cgroup_node_nr_lru_pages(memcg, nid, LRU_ALL_FILE))1428 struct lruvec *lruvec = mem_cgroup_lruvec(NODE_DATA(nid), memcg);
1429
1430 if (lruvec_page_state(lruvec, NR_INACTIVE_FILE) ||
1431 lruvec_page_state(lruvec, NR_ACTIVE_FILE))
1429 return true;1432 return true;
1430 if (noswap || !total_swap_pages)1433 if (noswap || !total_swap_pages)
1431 return false;1434 return false;
1432 if (mem_cgroup_node_nr_lru_pages(memcg, nid, LRU_ALL_ANON))1435 if (lruvec_page_state(lruvec, NR_INACTIVE_ANON) ||
1436 lruvec_page_state(lruvec, NR_ACTIVE_ANON))
1433 return true;1437 return true;
1434 return false;1438 return false;
1435 1439
mm/workingset.c+3−2
@@ -426,10 +426,11 @@ static unsigned long count_shadow_nodes(struct shrinker *shrinker, · 425 unmodified lines
426#ifdef CONFIG_MEMCG426#ifdef CONFIG_MEMCG
427 if (sc->memcg) {427 if (sc->memcg) {
428 struct lruvec *lruvec;428 struct lruvec *lruvec;
429 int i;
429 430
430 pages = mem_cgroup_node_nr_lru_pages(sc->memcg, sc->nid,
431 LRU_ALL);
432 lruvec = mem_cgroup_lruvec(NODE_DATA(sc->nid), sc->memcg);431 lruvec = mem_cgroup_lruvec(NODE_DATA(sc->nid), sc->memcg);
432 for (pages = 0, i = 0; i < NR_LRU_LISTS; i++)
433 pages += lruvec_page_state(lruvec, NR_LRU_BASE + i);
433 pages += lruvec_page_state(lruvec, NR_SLAB_RECLAIMABLE);434 pages += lruvec_page_state(lruvec, NR_SLAB_RECLAIMABLE);
434 pages += lruvec_page_state(lruvec, NR_SLAB_UNRECLAIMABLE);435 pages += lruvec_page_state(lruvec, NR_SLAB_UNRECLAIMABLE);
435 } else436 } else

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t