On 4/22/20 10:47 PM, Roman Gushchin wrote: > To make the memcg_kmem_bypass() function available outside of > the memcontrol.c, let's move it to memcontrol.h. The function > is small and nicely fits into static inline sort of functions. > > It will be used from the slab code. > > Signed-off-by: Roman Gushchin <guro@xxxxxx> Reviewed-by: Vlastimil Babka <vbabka@xxxxxxx> > --- > include/linux/memcontrol.h | 7 +++++++ > mm/memcontrol.c | 7 ------- > 2 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h > index 44b7d1244620..840eb8d486a8 100644 > --- a/include/linux/memcontrol.h > +++ b/include/linux/memcontrol.h > @@ -1462,6 +1462,13 @@ static inline bool memcg_kmem_enabled(void) > return static_branch_unlikely(&memcg_kmem_enabled_key); > } > > +static inline bool memcg_kmem_bypass(void) > +{ > + if (in_interrupt() || !current->mm || (current->flags & PF_KTHREAD)) > + return true; > + return false; > +} > + > static inline int memcg_kmem_charge_page(struct page *page, gfp_t gfp, > int order) > { > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index f957b029a62f..06a5929f4872 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -2941,13 +2941,6 @@ static void memcg_schedule_kmem_cache_create(struct mem_cgroup *memcg, > queue_work(memcg_kmem_cache_wq, &cw->work); > } > > -static inline bool memcg_kmem_bypass(void) > -{ > - if (in_interrupt() || !current->mm || (current->flags & PF_KTHREAD)) > - return true; > - return false; > -} > - > /** > * memcg_kmem_get_cache: select the correct per-memcg cache for allocation > * @cachep: the original global kmem cache >