On Fri 16-10-20 11:39:52, Xianting Tian wrote: > In shrink_slab(), it directly goes to 'out' label only when it > can't get the lock of shrinker_rwsew. In this case, it doesn't > do the real work of shrinking slab, so we don't need trigger a > reschedule by cond_resched(). Your changelog doesn't explain why this is not needed or undesirable. Do you see any actual problem? The point of this code is to provide a deterministic scheduling point regardless of the shrinker_rwsew. > > Signed-off-by: Xianting Tian <tian.xianting@xxxxxxx> > --- > mm/vmscan.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index 466fc3144..676e97b28 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -687,8 +687,9 @@ static unsigned long shrink_slab(gfp_t gfp_mask, int nid, > } > > up_read(&shrinker_rwsem); > -out: > + > cond_resched(); > +out: > return freed; > } > > -- > 2.17.1 > -- Michal Hocko SUSE Labs