| Date | Thu, 6 Jan 2022 17:12:16 +0100 | From | Michal Hocko <> | Subject | Re: [PATCH v6 6/9] mm: multigenerational lru: aging |
| |
On Tue 04-01-22 13:22:25, Yu Zhao wrote: > +static struct lru_gen_mm_walk *alloc_mm_walk(void) > +{ > + if (!current->reclaim_state || !current->reclaim_state->mm_walk) > + return kvzalloc(sizeof(struct lru_gen_mm_walk), GFP_KERNEL); > + > + return current->reclaim_state->mm_walk; > +} > + > +static void free_mm_walk(struct lru_gen_mm_walk *walk) > +{ > + if (!current->reclaim_state || !current->reclaim_state->mm_walk) > + kvfree(walk); > +}
Do I get it right that you are allocating from the reclaim context? What prevents this to completely deplete the memory as the reclaim context is PF_MEMALLOC? -- Michal Hocko SUSE Labs
|