Re: [PATCH 0/2] z3fold fixes
From: Vitaly Wool
Date: Thu Dec 22 2016 - 18:04:54 EST
On Thu, Dec 22, 2016 at 10:55 PM, Dan Streetman <ddstreet@xxxxxxxx> wrote:
> On Sun, Dec 18, 2016 at 3:15 AM, Vitaly Wool <vitalywool@xxxxxxxxx> wrote:
>> On Tue, Nov 29, 2016 at 11:39 PM, Andrew Morton
>> <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
>>> On Tue, 29 Nov 2016 17:33:19 -0500 Dan Streetman <ddstreet@xxxxxxxx> wrote:
>>>
>>>> On Sat, Nov 26, 2016 at 2:15 PM, Vitaly Wool <vitalywool@xxxxxxxxx> wrote:
>>>> > Here come 2 patches with z3fold fixes for chunks counting and locking. As commit 50a50d2 ("z3fold: don't fail kernel build is z3fold_header is too big") was NAK'ed [1], I would suggest that we removed that one and the next z3fold commit cc1e9c8 ("z3fold: discourage use of pages that weren't compacted") and applied the coming 2 instead.
>>>>
>>>> Instead of adding these onto all the previous ones, could you redo the
>>>> entire z3fold series? I think it'll be simpler to review the series
>>>> all at once and that would remove some of the stuff from previous
>>>> patches that shouldn't be there.
>>>>
>>>> If that's ok with Andrew, of course, but I don't think any of the
>>>> z3fold patches have been pushed to Linus yet.
>>>
>>> Sounds good to me. I had a few surprise rejects when merging these
>>> two, which indicates that things might be out of sync.
>>>
>>> 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
>>> z3fold-use-per-page-spinlock.patch
>>> z3fold-discourage-use-of-pages-that-werent-compacted.patch
>>> z3fold-fix-header-size-related-issues.patch
>>> z3fold-fix-locking-issues.patch
>>
>> My initial suggestion was to have it the following way:
>> z3fold-limit-first_num-to-the-actual-range-of-possible-buddy-indexes.patch
>
> this is a good one, acked by both of us; it should stay and go upstream to Linus
>
>> z3fold-make-pages_nr-atomic.patch
>
> the change itself looks ok and I acked it, but as Andrew commented the
> log says nothing about why it's being changed; the atomic function is
> slower so the log should explain why it's being changed; anyone
> reviewing the log history won't know why you made the change, and the
> change all by itself is a step backwards in performance.
>
>> z3fold-extend-compaction-function.patch
>
> this explictly has a bug in it that's fixed in one of the later
> patches; instead, this should be fixed up and resent.
>
>> z3fold-use-per-page-spinlock.patch
>
> i should have explicitly nak'ed this, as not only did it add a bug
> (fixed by the the other 'fix-' patch below) but its design should be
> replaced by kref counting, which your latest patch is working
> towards...
>
>> z3fold-fix-header-size-related-issues.patch
>> z3fold-fix-locking-issues.patch
>
> and these fix the known problems in the previous patches.
>
>>
>> I would prefer to keep the fix-XXX patches separate since e. g.
>> z3fold-fix-header-size-related-issues.patch concerns also the problems
>> that have been in the code for a while now. I am ok with folding these
>> into the relevant main patches but once again, given that some fixes
>> are related to the code that is already merged, I don't see why it
>> would be better.
>
> none of those patches are "merged", the last z3fold patch in Linus'
> tree is 43afc194 from June. Just because they're in Andrew's mmotm
> queue (and/or linux-next) doesn't mean they are going to be
> merged...(correct me please if I'm wrong there Andrew)
that I do understand, however,
z3fold-fix-header-size-related-issues.patch fixes the off-by-one issue
present in the code that is in Linus's tree too.
> So as you can see by my patch-by-patch breakdown, almost all of them
> need changes based on feedback from various people. And they are all
> related - your goal is to improve z3fold performance, right? IMHO
> they should be sent as a single patch series with that goal in the
> cover letter, including specific details and numbers about how the
> series does improve performance.
but that is a good idea anyway, the only thing i\m not sure about is
whether it makes sense to fold
z3fold-fix-header-size-related-issues.patch into another or not.
~vitaly