All of lore.kernel.org
 help / color / mirror / Atom feed
From: Josef Bacik <josef@toxicpanda.com>
To: fdmanana@gmail.com
Cc: linux-btrfs <linux-btrfs@vger.kernel.org>,
	kernel-team@fb.com, stable@vger.kernel.org,
	"René Rebe" <rene@exactcode.de>
Subject: Re: [PATCH] btrfs: Use the normal writeback path for flushing delalloc
Date: Mon, 4 Jan 2021 13:28:59 -0500	[thread overview]
Message-ID: <82aa5616-4d57-ddda-69f3-8bb6497583e3@toxicpanda.com> (raw)
In-Reply-To: <CAL3q7H5-L7Qs1ecZXPNiQ58rOCMXbpRaPPVFaEEnL0Gcmmfyvw@mail.gmail.com>

On 1/4/21 12:23 PM, Filipe Manana wrote:
> On Mon, Jan 4, 2021 at 5:06 PM Josef Bacik <josef@toxicpanda.com> wrote:
>>
>> This is a revert for 38d715f494f2 ("btrfs: use
>> btrfs_start_delalloc_roots in shrink_delalloc").  A user reported a
>> problem where performance was significantly worse with this patch
>> applied.  The problem needs to be fixed with proper pre-flushing, and
>> changes to how we deal with the work queues for the inodes.  However
>> that work is much more complicated than is acceptable for stable, and
>> simply reverting this patch fixes the problem.  The original patch was
>> a cleanup of the code, so it's fine to revert it.  My numbers for the
>> original reported test, which was untarring a copy of the firefox
>> sources, are as follows
>>
>> 5.9     0m54.258s
>> 5.10    1m26.212s
>> Fix     0m35.038s
>>
>> cc: stable@vger.kernel.org # 5.10
>> Reported-by: René Rebe <rene@exactcode.de>
>> Fixes: 38d715f494f2 ("btrfs: use btrfs_start_delalloc_roots in shrink_delalloc")
>> Signed-off-by: Josef Bacik <josef@toxicpanda.com>
>> ---
>> Dave, this is ontop of linus's branch, because we've changed the arguments for
>> btrfs_start_delalloc_roots in misc-next, and this needs to go back to 5.10 ASAP.
>> I can send a misc-next version if you want to have it there as well while we're
>> waiting for it to go into linus's tree, just let me know.
> 
> Adding this to stable releases will also make the following fix not
> work on stable releases:
> 
> https://lore.kernel.org/linux-btrfs/39c2a60aa682f69f9823f51aa119d37ef4b9f834.1606909923.git.fdmanana@suse.com/
> 
> Since now the async reclaim task can trigger writeback through
> writeback_inodes_sb_nr() and not only through
> btrfs_start_delalloc_roots().
> Other than changing that patch to make extent_write_cache_pages() do
> nothing when the inode has the bit BTRFS_INODE_NO_DELALLOC_FLUSH set,
> I'm not seeing other simple ways to do it.

Hmmm shit, ok let me see if I can make the perf regression go away while still 
using btrfs_start_delalloc_roots().  Thanks,

Josef

      reply	other threads:[~2021-01-04 18:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-04 17:03 [PATCH] btrfs: Use the normal writeback path for flushing delalloc Josef Bacik
2021-01-04 17:23 ` Filipe Manana
2021-01-04 18:28   ` Josef Bacik [this message]

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=82aa5616-4d57-ddda-69f3-8bb6497583e3@toxicpanda.com \
    --to=josef@toxicpanda.com \
    --cc=fdmanana@gmail.com \
    --cc=kernel-team@fb.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=rene@exactcode.de \
    --cc=stable@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.