Linux Device Mapper development
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@kernel.org>
To: Joe Thornber <thornber@redhat.com>
Cc: keescook@chromium.org, heinzm@redhat.com, ejt@redhat.com,
	nhuck@google.com, ebiggers@kernel.org, dm-devel@redhat.com,
	mpatocka@redhat.com, luomeng12@huawei.com
Subject: Re: [dm-devel] [dm-6.4 PATCH 5/8] dm bufio: improve concurrent IO performance
Date: Thu, 23 Mar 2023 05:51:34 -0400	[thread overview]
Message-ID: <ZBwhJmxVVupuou4h@redhat.com> (raw)
In-Reply-To: <CAJ0trDbFi0U+nJMkqi8Z9WDwWoAUO0qFMRyY5d7qxUU4mwpgzQ@mail.gmail.com>

On Thu, Mar 23 2023 at  3:51P -0400,
Joe Thornber <thornber@redhat.com> wrote:

> Mike,
> 
> I'm Nacking this patch here.  You've taken the comment from my latest
> patch, and attached it to something else.  I don't know if you've taken an
> older patch and updated it, or taken the latest patch and downgraded it.

I lean on git to tell me if code is identical.

Since we're now clearly keeping score here. I used git to compare what
I had here (with various small whitespace tweaks and other nits):
https://git.kernel.org/pub/scm/linux/kernel/git/snitzer/linux.git/log/?h=2023-03-01-thin-concurrency-8

with your -8 code:
https://github.com/jthornber/linux/tree/2023-03-21-thin-concurrency-8

I had to deal with the problem that you didn't use my tree you rebased
so I had to reconcile not losing my handful of fluff.

I leaned on the fact that your -7 and -8 were identical in code:
git diff ejt/2023-02-28-thin-concurrency-7 ejt/2023-03-21-thin-concurrency-8 -- drivers/md/dm-bufio.c

I could've just generated my fluff and folded it into your new clean
-8.  But I went the other way around, instead I picked up your other
incremental changes from -7 and folded them into what I had. No real
reason, that's just how I did it.

> For instance the latest patch uses the name 'struct dm_buffer_cache', but
> it looks like you've renamed to 'struct buffer_cache' and then posted
> another patch in the series that renames back to dm_buffer_cache.

Right, I was cherry-picking your incremantal changes your staged in -7
before your clean patch rollup in your -8. How the struct rename
occurred to the code didn't much matter to me, so long as the change
was made.  But yeah I should've just folded it.  Not a big deal.

> I also see the comment change:
> 
> original "A refcount_t for hold_count does not work." which has changed to
> "NOTE: attempting to use refcount_t instead of atomic_t caused crashes!".
> Talk about over dramatisation (If the hold_count is incorrect we detect and
> BUG).

Yes, but I was aiming to leave breadcrumbs if/when someone might think
to retry using refcount_t to see why it "does not work". I was trying
to save future me or you or someone else some time. By making it
clear: there will be dragons.

But in doing so I unwittingly already unleashed different dragons ;)

> I can't stand by my code if I don't know what's being sent up in my name.
>
> Please use the patchset from this branch:
> https://github.com/jthornber/linux/tree/2023-03-21-thin-concurrency-8

We've resolved this now interactively in chat, but I had to reply on
dm-devel to let others know.  Again, on a code level what I posted to
dm-devel reflects what was staged in 2023-03-21-thin-concurrency-8:

For me this yields my fluff I was referring to above:
git diff ejt/2023-03-21-thin-concurrency-8 dm/dm-6.4 -- drivers/md/dm-bufio.c

Biggest difference being dm_buffer struct member reordering (which I
had discussed with you).

For the benefit of others, I since dropped patch 1 and patch 2
(max_discard_granularity and bio-prison-v1 patch) but pulled them to
the HEAD of this new development branch (that has extra debugging):
https://git.kernel.org/pub/scm/linux/kernel/git/snitzer/linux.git/log/?h=dm-6.4

I'll go back to bed now, hopefully you'll have this discard issue
fixed in a couple hours when I return (as we discussed). ;)

Mike

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


  reply	other threads:[~2023-03-23  9:51 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-22 18:18 [dm-devel] [dm-6.4 PATCH 0/8] dm bufio, thin: improve concurrent IO performance Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 1/8] dm: split discards further if target sets max_discard_granularity Mike Snitzer
2023-03-23  8:00   ` Joe Thornber
2023-03-23  8:45     ` Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 2/8] dm bio prison v1: improve concurrent IO performance Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 3/8] dm bufio: remove unused dm_bufio_release_move interface Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 4/8] dm bufio: move dm_buffer struct Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 5/8] dm bufio: improve concurrent IO performance Mike Snitzer
2023-03-23  7:51   ` Joe Thornber
2023-03-23  9:51     ` Mike Snitzer [this message]
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 6/8] dm bufio: move dm_bufio_client members to avoid spanning cachelines Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 7/8] dm bufio: rename buffer_cache struct to dm_buffer_cache Mike Snitzer
2023-03-22 18:18 ` [dm-devel] [dm-6.4 PATCH 8/8] dm thin: speed up cell_defer_no_holder() Mike Snitzer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZBwhJmxVVupuou4h@redhat.com \
    --to=snitzer@kernel.org \
    --cc=dm-devel@redhat.com \
    --cc=ebiggers@kernel.org \
    --cc=ejt@redhat.com \
    --cc=heinzm@redhat.com \
    --cc=keescook@chromium.org \
    --cc=luomeng12@huawei.com \
    --cc=mpatocka@redhat.com \
    --cc=nhuck@google.com \
    --cc=thornber@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox