On Tue 21-11-17 21:04:13, Tetsuo Handa wrote: > There are users calling unregister_shrinker() when register_shrinker() > failed. Add sanity check to unregister_shrinker(). > > Signed-off-by: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> > --- > mm/vmscan.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index c02c850..9e100cc 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -297,6 +297,8 @@ int register_shrinker(struct shrinker *shrinker) > */ > void unregister_shrinker(struct shrinker *shrinker) > { > + if (!shrinker->nr_deferred) > + return; make it WARN_ON(), we really want to know about those, because something is clearly wrong with them. > down_write(&shrinker_rwsem); > list_del(&shrinker->list); > up_write(&shrinker_rwsem); > -- > 1.8.3.1 > > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@xxxxxxxxx. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a> -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>