On Wed, 29 May 2013 09:57:20 -0500 Seth Jennings <[email protected]>
wrote:
> > > +/*********************************
> > > +* helpers
> > > +**********************************/
> > > +static inline bool zswap_is_full(void)
> > > +{
> > > + return (totalram_pages * zswap_max_pool_percent / 100 <
> > > + zswap_pool_pages);
> > > +}
> >
> > We have had issues in the past where percentage-based tunables were too
> > coarse on very large machines. For example, a terabyte machine where 0
> > bytes is too small and 10GB is too large.
>
> Yes, this is known limitation of the code right now and it is a high priority
> to come up with something better. It isn't clear what dynamic sizing policy
> should be used so, until such time as that policy can be determined, this is a
> simple stop-gap that works well enough for simple setups.
It's a module parameter and hence is part of the userspace interface.
It's undesirable that the interface be changed, and it would be rather
dumb to merge it as-is when we *know* that it will be changed.
I don't think we can remove the parameter altogether (or can we?), so I
suggest we finalise it ASAP. Perhaps rename it to
zswap_max_pool_ratio, with a range 1..999999. Better ideas needed :(
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel