lkml.org 
[lkml]   [2012]   [Jul]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 6/7] memcg: add per cgroup writeback pages accounting
    On 07/09/2012 12:14 PM, Fengguang Wu wrote:
    > On Mon, Jul 09, 2012 at 11:36:11AM +0800, Sha Zhengju wrote:
    >> On 07/08/2012 10:53 PM, Fengguang Wu wrote:
    >>>> @@ -2245,7 +2252,10 @@ int test_set_page_writeback(struct page *page)
    >>>> {
    >>>> struct address_space *mapping = page_mapping(page);
    >>>> int ret;
    >>>> + bool locked;
    >>>> + unsigned long flags;
    >>>>
    >>>> + mem_cgroup_begin_update_page_stat(page,&locked,&flags);
    >>>> if (mapping) {
    >>>> struct backing_dev_info *bdi = mapping->backing_dev_info;
    >>>> unsigned long flags;
    >>>> @@ -2272,6 +2282,8 @@ int test_set_page_writeback(struct page *page)
    >>>> }
    >>>> if (!ret)
    >>>> account_page_writeback(page);
    >>>> +
    >>>> + mem_cgroup_end_update_page_stat(page,&locked,&flags);
    >>>> return ret;
    >>>>
    >>>> }
    >>> Where is the MEM_CGROUP_STAT_FILE_WRITEBACK increased?
    >>>
    >> It's in account_page_writeback().
    >>
    >> void account_page_writeback(struct page *page)
    >> {
    >> + mem_cgroup_inc_page_stat(page, MEM_CGROUP_STAT_FILE_WRITEBACK);
    >> inc_zone_page_state(page, NR_WRITEBACK);
    >> }
    > I didn't find that chunk, perhaps it's lost due to rebase..

    Ah? a bit weird... you can refer to the link
    http://thread.gmane.org/gmane.linux.kernel.cgroups/3134
    which is an integral one. Thanks!

    >> There isn't a unified interface to dec/inc writeback accounting, so
    >> I just follow that.
    >> Maybe we can rework account_page_writeback() to also account
    >> dec in?
    > The current seperate inc/dec paths are fine. It sounds like
    > over-engineering if going any further.
    >
    > I'm a bit worried about some 3rd party kernel module to call
    > account_page_writeback() without mem_cgroup_begin/end_update_page_stat().
    > Will that lead to serious locking issues, or merely inaccurate
    > accounting?
    >
    > Thanks,
    > Fengguang
    > --
    > To unsubscribe from this list: send the line "unsubscribe cgroups" in
    > the body of a message to majordomo@vger.kernel.org
    > More majordomo info at http://vger.kernel.org/majordomo-info.html



    \
     
     \ /
      Last update: 2012-07-09 08:01    [from the cache]
    ©2003-2014 Jasper Spaans. hosted at Digital Ocean