From: Mike Snitzer <snitzer@redhat.com>
To: Christoph Hellwig <hch@lst.de>, axboe@kernel.dk
Cc: keith.busch@intel.com, emilne@redhat.com,
james.smart@broadcom.com, hare@suse.de, Bart.VanAssche@wdc.com,
linux-block@vger.kernel.org, linux-nvme@lists.infradead.org,
dm-devel@redhat.com
Subject: Re: [for-4.16 PATCH v2 1/5] block: establish request failover callback
Date: Fri, 29 Dec 2017 15:19:04 -0500 [thread overview]
Message-ID: <20171229201904.GA8876@redhat.com> (raw)
In-Reply-To: <20171229101013.GA25333@lst.de>
On Fri, Dec 29 2017 at 5:10am -0500,
Christoph Hellwig <hch@lst.de> wrote:
> On Tue, Dec 26, 2017 at 10:22:53PM -0500, Mike Snitzer wrote:
> > All requests allocated from a request_queue with this callback set can
> > failover their requests during completion.
> >
> > This callback is expected to use the blk_steal_bios() interface to
> > transfer a request's bios back to an upper-layer bio-based
> > request_queue.
> >
> > This will be used by both NVMe multipath and DM multipath. Without it
> > DM multipath cannot get access to NVMe-specific error handling that NVMe
> > core provides in nvme_complete_rq().
>
> And the whole point is that it should not get any such access.
No the whole point is you hijacked multipathing for little to no gain.
> The reason why we did nvme multipathing differently is because the
> design of dm-multipath inflicts so much pain on users that we absolutely
> want to avoid it this time around.
Is that the royal "we"?
_You_ are the one subjecting users to pain. There is no reason users
should need to have multiple management domains for multipathing unless
they opt-in. Linux _is_ about choice, yet you're working overtime to
limit that choice.
You are blatantly ignoring/rejecting both Hannes [1] and I. Your
attempt to impose _how_ NVMe multipathing must be done is unacceptable.
Hopefully Jens can see through your senseless position and will accept
patches 1 - 3 for 4.16. They offer very minimal change that enables
users to decide which multipathing they'd prefer to use with NVMe.
Just wish you could stop with this petty bullshit and actually
collaborate with people.
I've shown how easy it is to enable NVMe multipathing in terms of DM
multipath (yet preserve your native NVMe multipathing). Please stop
being so dogmatic. Are you scared of being proven wrong about what the
market wants?
If you'd allow progress toward native NVMe and DM multipathing
coexisting we'd let the users decide what they prefer. I don't need to
impose one way or the other, but I _do_ need to preserve DM multipath
compatibility given the extensive use of DM multipath in the enterprise
and increased tooling that builds upon it.
[1] http://lists.infradead.org/pipermail/linux-nvme/2017-October/013719.html
next prev parent reply other threads:[~2017-12-29 20:19 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-27 3:22 [for-4.16 PATCH v2 0/5] block, nvme, dm: allow DM multipath to use NVMe's error handler Mike Snitzer
2017-12-27 3:22 ` [for-4.16 PATCH v2 1/5] block: establish request failover callback Mike Snitzer
2017-12-29 10:10 ` Christoph Hellwig
2017-12-29 20:19 ` Mike Snitzer [this message]
2018-01-04 10:28 ` Christoph Hellwig
2018-01-04 14:42 ` Mike Snitzer
2017-12-27 3:22 ` [for-4.16 PATCH v2 2/5] nvme: use request_queue's failover_rq_fn callback for multipath failover Mike Snitzer
2017-12-29 10:11 ` Christoph Hellwig
2017-12-29 20:22 ` Mike Snitzer
2017-12-27 3:22 ` [for-4.16 PATCH v2 3/5] nvme: move nvme_req_needs_failover() from multipath to core Mike Snitzer
2017-12-27 3:22 ` [for-4.16 PATCH v2 4/5] dm mpath: use NVMe error handling to know when an error is retryable Mike Snitzer
2017-12-27 3:22 ` [for-4.16 PATCH v2 5/5] dm mpath: skip calls to end_io_bio if using NVMe bio-based and round-robin Mike Snitzer
2018-01-02 23:29 ` [for-4.16 PATCH v2 0/5] block, nvme, dm: allow DM multipath to use NVMe's error handler Keith Busch
2018-01-03 0:24 ` Mike Snitzer
2018-01-04 10:26 ` Christoph Hellwig
2018-01-04 14:08 ` Mike Snitzer
2018-01-04 16:26 ` Mike Snitzer
2018-01-08 6:52 ` Hannes Reinecke
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=20171229201904.GA8876@redhat.com \
--to=snitzer@redhat.com \
--cc=Bart.VanAssche@wdc.com \
--cc=axboe@kernel.dk \
--cc=dm-devel@redhat.com \
--cc=emilne@redhat.com \
--cc=hare@suse.de \
--cc=hch@lst.de \
--cc=james.smart@broadcom.com \
--cc=keith.busch@intel.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
/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;
as well as URLs for NNTP newsgroup(s).