lkml.org 
[lkml]   [2012]   [Jun]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH -V8 10/16] hugetlb/cgroup: Add the cgroup pointer to page lru
(2012/06/09 17:59), Aneesh Kumar K.V wrote:
> From: "Aneesh Kumar K.V"<aneesh.kumar@linux.vnet.ibm.com>
>
> Add the hugetlb cgroup pointer to 3rd page lru.next. This limit
> the usage to hugetlb cgroup to only hugepages with 3 or more
> normal pages. I guess that is an acceptable limitation.
>
> Signed-off-by: Aneesh Kumar K.V<aneesh.kumar@linux.vnet.ibm.com>
> ---
> include/linux/hugetlb_cgroup.h | 31 +++++++++++++++++++++++++++++++
> mm/hugetlb.c | 4 ++++
> 2 files changed, 35 insertions(+)
>
> diff --git a/include/linux/hugetlb_cgroup.h b/include/linux/hugetlb_cgroup.h
> index 5794be4..ceff1d5 100644
> --- a/include/linux/hugetlb_cgroup.h
> +++ b/include/linux/hugetlb_cgroup.h
> @@ -26,6 +26,26 @@ struct hugetlb_cgroup {
> };
>
> #ifdef CONFIG_CGROUP_HUGETLB_RES_CTLR
> +static inline struct hugetlb_cgroup *hugetlb_cgroup_from_page(struct page *page)
> +{
> + if (!PageHuge(page))
> + return NULL;

I'm not very sure but....
VM_BUG_ON(!PageHuge(page)) ??



> + if (compound_order(page)< 3)
> + return NULL;
> + return (struct hugetlb_cgroup *)page[2].lru.next;
> +}
> +
> +static inline
> +int set_hugetlb_cgroup(struct page *page, struct hugetlb_cgroup *h_cg)
> +{
> + if (!PageHuge(page))
> + return -1;

ditto.

> + if (compound_order(page)< 3)
> + return -1;
> + page[2].lru.next = (void *)h_cg;
> + return 0;
> +}
> +

Thanks,
-Kame



\
 
 \ /
  Last update: 2012-06-12 10:41    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site