Re: [PATCH] z3fold: discourage use of pages that weren't compacted

From: Vitaly Wool
Date: Tue Nov 15 2016 - 08:35:59 EST


On Tue, Nov 15, 2016 at 1:33 AM, Andrew Morton
<akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Fri, 11 Nov 2016 14:02:07 +0100 Vitaly Wool <vitalywool@xxxxxxxxx> wrote:
>
>> If a z3fold page couldn't be compacted, we don't want it to be
>> used for next object allocation in the first place. It makes more
>> sense to add it to the end of the relevant unbuddied list. If that
>> page gets compacted later, it will be added to the beginning of
>> the list then.
>>
>> This simple idea gives 5-7% improvement in randrw fio tests and
>> about 10% improvement in fio sequential read/write.
>
> This patch appears to require "z3fold: use per-page spinlock", and
> "z3fold: use per-page spinlock" doesn't apply properly.
>
> So things are in a bit of a mess.

Yep, sorry about that.

> I presently have
>
> z3fold-limit-first_num-to-the-actual-range-of-possible-buddy-indexes.patch
> z3fold-make-pages_nr-atomic.patch
> z3fold-extend-compaction-function.patch

These are not interdependent.

> Please take a look, figure out what we should do. Perhaps do it all as
> a coherent series rather than an interdependent dribble?

I'll come up with a 2-patch update in a short while.

~vitaly