On Mon, Apr 15, 2013 at 03:38:08PM +0200, Dolkow, Snild wrote: > >Where is lowmem_shrink called from? I only see shrink called from the > >bcache sysfs handler __bch_cache_set(). The return value isn't checked > >there. > > > >Up to now this function has only returns positive numbers. > > > >There isn't a place which check LMK_BUSY so maybe it's best to just > >return zero? > > Hey Dan, > > lowmem_shrink is assigned to a shrinker struct > (include/linux/shrinker.h) and called in do_shrinker_shrink() in > mm/vmscan.c. That, in turn, is called and checked in a few places > in vmscan.c. > > >From the comments in shrinker.h: > "It should return the number of objects which remain in the > cache. If it returns -1, it means it cannot do any scanning at > this time (eg. there is a risk of deadlock). The callback must not > return -1 if nr_to_scan is zero." Ah. Good. -1 is the right return. But really should be a #define in shrinker.h instead of in drivers/staging/android/. regards, dan carpenter _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel