From: Dave Chinner <david@fromorbit.com>
To: Jens Axboe <axboe@kernel.dk>
Cc: linux-xfs@vger.kernel.org, linux-block@vger.kernel.org, hch@lst.de
Subject: Re: [PATCH 2/2] xfs: add 'discard_sync' mount flag
Date: Tue, 1 May 2018 07:31:20 +1000 [thread overview]
Message-ID: <20180430213120.GD13766@dastard> (raw)
In-Reply-To: <1525102372-8430-3-git-send-email-axboe@kernel.dk>
On Mon, Apr 30, 2018 at 09:32:52AM -0600, Jens Axboe wrote:
> XFS recently added support for async discards. While this can be
> a win for some workloads and devices, there are also cases where
> async bursty discard will severly harm the latencies of reads
> and writes.
FWIW, convention is it document the performance regression in the
commit message, not leave the reader to guess at what it was....
Did anyone analyse the pattern of discards being issued to work out
what pattern was worse for async vs sync discard? is it lots of
little discards, large extents being discarded, perhaps a problem
with the request request queue starving other IOs because we queue
so many async discards in such a short time (which is the difference
in behaviour vs the old code), or something else?
> Add a 'discard_sync' mount flag to revert to using sync discard,
> issuing them one at the time and waiting for each one. This fixes
> a big performance regression we had moving to kernels that include
> the XFS async discard support.
I'm not a fan of adding a mount option to work around bad,
unpredictable performance due to a mount option we recommend you
don't use because it results in bad, unpredictable performance.
Without any details of the discard pattern that results in problems
I don't think we should be changing anything - adding an opaque,
user-unfriendly mount option does nothing to address the underlying
problem - it's just a hack to work around the symptoms being seen...
More details of the regression and the root cause analysis is
needed, please.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2018-04-30 21:31 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-30 15:32 [PATCHSET 0/2] sync discard Jens Axboe
2018-04-30 15:32 ` [PATCH 1/2] block: add BLKDEV_DISCARD_SYNC flag Jens Axboe
2018-04-30 15:32 ` [PATCH 2/2] xfs: add 'discard_sync' mount flag Jens Axboe
2018-04-30 17:19 ` Brian Foster
2018-04-30 18:07 ` Jens Axboe
2018-04-30 18:25 ` Luis R. Rodriguez
2018-04-30 18:31 ` Jens Axboe
2018-04-30 19:19 ` Eric Sandeen
2018-04-30 19:21 ` Jens Axboe
2018-04-30 19:57 ` Eric Sandeen
2018-04-30 19:58 ` Jens Axboe
2018-04-30 22:59 ` Eric Sandeen
2018-04-30 23:02 ` Jens Axboe
2018-04-30 19:18 ` Brian Foster
2018-04-30 21:31 ` Dave Chinner [this message]
2018-04-30 21:42 ` Jens Axboe
2018-04-30 22:28 ` Dave Chinner
2018-04-30 22:40 ` Jens Axboe
2018-04-30 23:00 ` Jens Axboe
2018-04-30 23:23 ` Dave Chinner
2018-05-01 11:11 ` Brian Foster
2018-05-01 15:23 ` Jens Axboe
2018-05-02 2:54 ` Martin K. Petersen
2018-05-02 14:20 ` Jens Axboe
2018-04-30 23:01 ` Darrick J. Wong
2018-05-02 12:45 ` [PATCHSET 0/2] sync discard Christoph Hellwig
2018-05-02 14:19 ` Jens Axboe
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=20180430213120.GD13766@dastard \
--to=david@fromorbit.com \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=linux-block@vger.kernel.org \
--cc=linux-xfs@vger.kernel.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).