staging: xillybus: Fixes related to "rc" variable
[firefly-linux-kernel-4.4.55.git] / mm / hugetlb_cgroup.c
index 493f758445e724d5b1b67383c24bf20436557a3a..a67c26e0f360211f21fdb6b19f0f54fc9d3fe726 100644 (file)
@@ -217,7 +217,7 @@ void hugetlb_cgroup_uncharge_page(int idx, unsigned long nr_pages,
 
        if (hugetlb_cgroup_disabled())
                return;
-       VM_BUG_ON(!spin_is_locked(&hugetlb_lock));
+       lockdep_assert_held(&hugetlb_lock);
        h_cg = hugetlb_cgroup_from_page(page);
        if (unlikely(!h_cg))
                return;
@@ -275,6 +275,7 @@ static ssize_t hugetlb_cgroup_write(struct kernfs_open_file *of,
                ret = res_counter_memparse_write_strategy(buf, &val);
                if (ret)
                        break;
+               val = ALIGN(val, 1ULL << huge_page_shift(&hstates[idx]));
                ret = res_counter_set_limit(&h_cg->hugepage[idx], val);
                break;
        default:
@@ -358,9 +359,8 @@ static void __init __hugetlb_cgroup_file_init(int idx)
        cft = &h->cgroup_files[4];
        memset(cft, 0, sizeof(*cft));
 
-       WARN_ON(cgroup_add_cftypes(&hugetlb_cgrp_subsys, h->cgroup_files));
-
-       return;
+       WARN_ON(cgroup_add_legacy_cftypes(&hugetlb_cgrp_subsys,
+                                         h->cgroup_files));
 }
 
 void __init hugetlb_cgroup_file_init(void)