From: David Sterba <dsterba@suse.cz>
To: fdmanana@kernel.org
Cc: linux-btrfs@vger.kernel.org, josef@toxicpanda.com,
Filipe Manana <fdmanana@suse.com>
Subject: Re: [PATCH 0/2] btrfs: fix races between clone, fallocate and memory mapped writes
Date: Thu, 17 Dec 2020 16:02:03 +0100 [thread overview]
Message-ID: <20201217150203.GP6430@twin.jikos.cz> (raw)
In-Reply-To: <cover.1607939569.git.fdmanana@suse.com>
On Mon, Dec 14, 2020 at 09:56:40AM +0000, fdmanana@kernel.org wrote:
> From: Filipe Manana <fdmanana@suse.com>
>
> For a very long time there's been a race between clone/dedupe and memory
> mapped writes as well as between fallocate and memory mapped writes. For
> both cases the consequence of the race is that it can makes us deadlock
> when we are low on available metadata space, since clone/dedupe/fallocate
> start a transaction while holding file ranges locked, and allocating the
> metadata can result in the async reclaim task to flush the inodes being
> used by clone/dedupe/fallocate, if a memory mapped write happened before
> we locked the file ranges.
>
> For the dedupe case, Josef's recent fix [1] ("btrfs: fix race between dedupe
> and mmap") happens to fix this deadlock problem as well. The first patch
> in this patchset fixes the issue for both clone and dedupe, as it's centered
> on the shared extent locking function, and it is independent of Josef's fix
> (works both with and without that fix).
Thanks, I was wondering how all the patches are related.
>
> [1] https://lore.kernel.org/linux-btrfs/afdc2109f83fff1a925d7a66a6a047d4400721d4.1607724668.git.josef@toxicpanda.com/
>
> Filipe Manana (2):
> btrfs: fix race between cloning and memory mapped writes leading to
> deadlock
> btrfs: fix race between fallocate and memory mapped writes leading to
> deadlock
Added to misc-next, thanks.
next prev parent reply other threads:[~2020-12-17 15:04 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-14 9:56 [PATCH 0/2] btrfs: fix races between clone, fallocate and memory mapped writes fdmanana
2020-12-14 9:56 ` [PATCH 1/2] btrfs: fix race between cloning and memory mapped writes leading to deadlock fdmanana
2020-12-14 9:56 ` [PATCH 2/2] btrfs: fix race between fallocate " fdmanana
2020-12-17 15:02 ` David Sterba [this message]
2020-12-17 15:11 ` [PATCH 0/2] btrfs: fix races between clone, fallocate and memory mapped writes Filipe Manana
2020-12-17 16:10 ` David Sterba
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=20201217150203.GP6430@twin.jikos.cz \
--to=dsterba@suse.cz \
--cc=fdmanana@kernel.org \
--cc=fdmanana@suse.com \
--cc=josef@toxicpanda.com \
--cc=linux-btrfs@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.