Messages in this thread | | | From | Muchun Song <> | Date | Wed, 9 Sep 2020 20:10:38 +0800 | Subject | Re: [External] Re: [PATCH] mm/vmscan: fix infinite loop in drop_slab_node |
| |
On Wed, Sep 9, 2020 at 5:59 PM Chris Down <chris@chrisdown.name> wrote: > > Muchun Song writes: > >1. Double the threshold currently hard coded as "10" with each iteration > > suggested by Vlastimil. It is also a good idea. > > I think this sounds reasonable, although I'd like to see what the difference in > reclaim looks like in practice. > > >2. In the while loop, we can check whether the TASK_KILLABLE > > signal is set, if so, we should break the loop. like the following code > > snippe. Thanks. > > > >@@ -704,6 +704,9 @@ void drop_slab_node(int nid) > > do { > > struct mem_cgroup *memcg = NULL; > > > >+ if (fatal_signal_pending(current)) > >+ return; > >+ > > freed = 0; > > memcg = mem_cgroup_iter(NULL, NULL, NULL); > > do { > > Regardless of anything, I think this is probably a good idea. Could you send it > as a patch? :-)
OK, Will do that thanks.
> > Thanks, > > Chris
-- Yours, Muchun
| |