> > > { > > > struct xfs_mount *mp; > > > struct xfs_perag *pag; > > > xfs_agnumber_t ag; > > > int reclaimable; > > > + int nr_to_scan = sc->nr_slab_to_reclaim; > > > + gfp_t gfp_mask = sc->gfp_mask; > > > > And, this very near meaning field .nr_scanned and .nr_slab_to_reclaim > > poped up new question. > > Why don't we pass more clever slab shrinker target? Why do we need pass > > similar two argument? > > > > I renamed the nr_slab_to_reclaim and nr_scanned in shrink struct. Oh no. that's not naming issue. example, Nick's previous similar patch pass zone-total-pages and how-much-scanned-pages. (ie shrink_slab don't calculate current magical target scanning objects anymore) ie, "4 * max_pass * (scanned / nr- lru_pages-in-zones)" Instead, individual shrink_slab callback calculate this one. see git://git.kernel.org/pub/scm/linux/kernel/git/npiggin/linux-npiggin.git I'm curious why you change the design from another guy's previous very similar effort and We have to be convinced which is better. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>