mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 04:34:08 +08:00
hugetlb_cgroup: use helper for_each_hstate and hstate_index
Use helper for_each_hstate and hstate_index to iterate the hstate and get the hstate index. Minor readability improvement. Link: https://lkml.kernel.org/r/20220729080106.12752-6-linmiaohe@huawei.com Signed-off-by: Miaohe Lin <linmiaohe@huawei.com> Reviewed-by: Mina Almasry <almasrymina@google.com> Cc: Mike Kravetz <mike.kravetz@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
99249387cf
commit
c37213c5ea
@ -75,11 +75,11 @@ parent_hugetlb_cgroup(struct hugetlb_cgroup *h_cg)
|
||||
|
||||
static inline bool hugetlb_cgroup_have_usage(struct hugetlb_cgroup *h_cg)
|
||||
{
|
||||
int idx;
|
||||
struct hstate *h;
|
||||
|
||||
for (idx = 0; idx < hugetlb_max_hstate; idx++) {
|
||||
for_each_hstate(h) {
|
||||
if (page_counter_read(
|
||||
hugetlb_cgroup_counter_from_cgroup(h_cg, idx)))
|
||||
hugetlb_cgroup_counter_from_cgroup(h_cg, hstate_index(h))))
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@ -225,17 +225,14 @@ static void hugetlb_cgroup_css_offline(struct cgroup_subsys_state *css)
|
||||
struct hugetlb_cgroup *h_cg = hugetlb_cgroup_from_css(css);
|
||||
struct hstate *h;
|
||||
struct page *page;
|
||||
int idx;
|
||||
|
||||
do {
|
||||
idx = 0;
|
||||
for_each_hstate(h) {
|
||||
spin_lock_irq(&hugetlb_lock);
|
||||
list_for_each_entry(page, &h->hugepage_activelist, lru)
|
||||
hugetlb_cgroup_move_parent(idx, h_cg, page);
|
||||
hugetlb_cgroup_move_parent(hstate_index(h), h_cg, page);
|
||||
|
||||
spin_unlock_irq(&hugetlb_lock);
|
||||
idx++;
|
||||
}
|
||||
cond_resched();
|
||||
} while (hugetlb_cgroup_have_usage(h_cg));
|
||||
|
Loading…
Reference in New Issue
Block a user