On Tue, Apr 26, 2011 at 5:47 PM, KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx> wrote: >> > > { >> > > 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. Thank you for the pointer. My patch is intended to consolidate all existing parameters passed from reclaim code to the shrinker. Talked w/ Nick and Andrew from last LSF, we agree that this patch will be useful for other extensions later which allows us easily adding extensions to the shrinkers without shrinker files. Nick and I talked about the effort later to pass the nodemask down to the shrinker. He is cc-ed in the thread. Another thing I would like to repost is to add the reclaim priority down to the shrinker, which we won't throw tons of page caches pages by reclaiming one inode slab object. --Ying > > > > -- 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