Re: [PATCH] memcg: writeback: use memcg->cgwb_list directly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun 22-04-18 01:50:57, Jan Kara wrote:
> On Sat 21-04-18 21:29:41, Wang Long wrote:
> > Signed-off-by: Wang Long <wanglong19@xxxxxxxxxxx>
> 
> Yeah, looks good. I guess it was originally intended to avoid compilation
> errors if CONFIG_CGROUP_WRITEBACK was disabled. But it doesn't seem likely
> we'll ever need that list outside of code under CONFIG_CGROUP_WRITEBACK. So
> you can add:

Yeah. Trivial wrappers like these are usualy more harm than goot.  But
please add _some_ words in the changelog.

> Reviewed-by: Jan Kara <jack@xxxxxxx>
> 
> 								Honza
> 
> > ---
> >  include/linux/memcontrol.h | 1 -
> >  mm/backing-dev.c           | 4 ++--
> >  mm/memcontrol.c            | 5 -----
> >  3 files changed, 2 insertions(+), 8 deletions(-)
> > 
> > diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h
> > index d99b71b..c0056e0 100644
> > --- a/include/linux/memcontrol.h
> > +++ b/include/linux/memcontrol.h
> > @@ -1093,7 +1093,6 @@ static inline void dec_lruvec_page_state(struct page *page,
> >  
> >  #ifdef CONFIG_CGROUP_WRITEBACK
> >  
> > -struct list_head *mem_cgroup_cgwb_list(struct mem_cgroup *memcg);
> >  struct wb_domain *mem_cgroup_wb_domain(struct bdi_writeback *wb);
> >  void mem_cgroup_wb_stats(struct bdi_writeback *wb, unsigned long *pfilepages,
> >  			 unsigned long *pheadroom, unsigned long *pdirty,
> > diff --git a/mm/backing-dev.c b/mm/backing-dev.c
> > index 023190c..0a48e05 100644
> > --- a/mm/backing-dev.c
> > +++ b/mm/backing-dev.c
> > @@ -555,7 +555,7 @@ static int cgwb_create(struct backing_dev_info *bdi,
> >  	memcg = mem_cgroup_from_css(memcg_css);
> >  	blkcg_css = cgroup_get_e_css(memcg_css->cgroup, &io_cgrp_subsys);
> >  	blkcg = css_to_blkcg(blkcg_css);
> > -	memcg_cgwb_list = mem_cgroup_cgwb_list(memcg);
> > +	memcg_cgwb_list = &memcg->cgwb_list;
> >  	blkcg_cgwb_list = &blkcg->cgwb_list;
> >  
> >  	/* look up again under lock and discard on blkcg mismatch */
> > @@ -734,7 +734,7 @@ static void cgwb_bdi_unregister(struct backing_dev_info *bdi)
> >   */
> >  void wb_memcg_offline(struct mem_cgroup *memcg)
> >  {
> > -	struct list_head *memcg_cgwb_list = mem_cgroup_cgwb_list(memcg);
> > +	struct list_head *memcg_cgwb_list = &memcg->cgwb_list;
> >  	struct bdi_writeback *wb, *next;
> >  
> >  	spin_lock_irq(&cgwb_lock);
> > diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> > index e074f7c..d1adb9c 100644
> > --- a/mm/memcontrol.c
> > +++ b/mm/memcontrol.c
> > @@ -3562,11 +3562,6 @@ static int mem_cgroup_oom_control_write(struct cgroup_subsys_state *css,
> >  
> >  #ifdef CONFIG_CGROUP_WRITEBACK
> >  
> > -struct list_head *mem_cgroup_cgwb_list(struct mem_cgroup *memcg)
> > -{
> > -	return &memcg->cgwb_list;
> > -}
> > -
> >  static int memcg_wb_domain_init(struct mem_cgroup *memcg, gfp_t gfp)
> >  {
> >  	return wb_domain_init(&memcg->cgwb_domain, gfp);
> > -- 
> > 1.8.3.1
> > 
> -- 
> Jan Kara <jack@xxxxxxxx>
> SUSE Labs, CR

-- 
Michal Hocko
SUSE Labs




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux