Re: [PATCH v2] z3fold: add shrinker

2016-10-13 Thread Vitaly Wool
On Thu, 13 Oct 2016 11:20:06 +1100 Dave Chinner wrote: > > That's an incorrect assumption. Long spinlock holds prevent > scheduling on that CPU, and so we still get latency problems. Fair enough. The problem is, some of the z3fold code that need mutual exclusion runs with preemption disabled s

Re: [PATCH v2] z3fold: add shrinker

2016-10-12 Thread Dave Chinner
On Wed, Oct 12, 2016 at 10:26:34AM +0200, Vitaly Wool wrote: > On Wed, 12 Oct 2016 09:52:06 +1100 > Dave Chinner wrote: > > > > > > > +static unsigned long z3fold_shrink_scan(struct shrinker *shrink, > > > + struct shrink_control *sc) > > > +{ > > > + struct z3fold_pool

Re: [PATCH v2] z3fold: add shrinker

2016-10-12 Thread Vitaly Wool
On Wed, 12 Oct 2016 09:52:06 +1100 Dave Chinner wrote: > > > +static unsigned long z3fold_shrink_scan(struct shrinker *shrink, > > + struct shrink_control *sc) > > +{ > > + struct z3fold_pool *pool = container_of(shrink, struct z3fold_pool, > > +

Re: [PATCH v2] z3fold: add shrinker

2016-10-11 Thread Dave Chinner
On Wed, Oct 12, 2016 at 12:18:27AM +0200, Vitaly Wool wrote: > > Here comes the correct shrinker patch for z3fold. This shrinker > implementation does not free up any pages directly but it allows > for a denser placement of compressed objects which results in > less actual pages consumed and highe

[PATCH v2] z3fold: add shrinker

2016-10-11 Thread Vitaly Wool
Here comes the correct shrinker patch for z3fold. This shrinker implementation does not free up any pages directly but it allows for a denser placement of compressed objects which results in less actual pages consumed and higher compression ratio therefore. This patch has been checked with the la