From: Josef Bacik <josef@toxicpanda.com>
To: linux-btrfs@vger.kernel.org, kernel-team@fb.com
Subject: [PATCH 13/20] btrfs: run delayed iputs before committing the transaction for data
Date: Wed, 29 Jan 2020 18:50:17 -0500 [thread overview]
Message-ID: <20200129235024.24774-14-josef@toxicpanda.com> (raw)
In-Reply-To: <20200129235024.24774-1-josef@toxicpanda.com>
Before we were waiting on iputs after we committed the transaction, but
this doesn't really make much sense. We want to reclaim any space we
may have in order to be more likely to commit the transaction, due to
pinned space being added by running the delayed iputs. Fix this by
making delayed iputs run before committing the transaction.
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
---
fs/btrfs/space-info.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/btrfs/space-info.c b/fs/btrfs/space-info.c
index b4c43af7b499..03e8c45365ea 100644
--- a/fs/btrfs/space-info.c
+++ b/fs/btrfs/space-info.c
@@ -857,8 +857,8 @@ static const enum btrfs_flush_state evict_flush_states[] = {
static const enum btrfs_flush_state data_flush_states[] = {
ALLOC_CHUNK_FORCE,
FLUSH_DELALLOC_WAIT,
- COMMIT_TRANS,
RUN_DELAYED_IPUTS,
+ COMMIT_TRANS,
};
static const enum btrfs_flush_state free_space_inode_flush_states[] = {
--
2.24.1
next prev parent reply other threads:[~2020-01-29 23:50 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-29 23:50 [PATCH 00/20][RFC] Convert data reservations to the ticketing infrastructure Josef Bacik
2020-01-29 23:50 ` [PATCH 01/20] btrfs: change nr to u64 in btrfs_start_delalloc_roots Josef Bacik
2020-01-30 12:06 ` Nikolay Borisov
2020-01-31 15:07 ` Josef Bacik
2020-01-31 15:13 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 02/20] btrfs: remove orig from shrink_delalloc Josef Bacik
2020-01-30 11:44 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 03/20] btrfs: handle U64_MAX for shrink_delalloc Josef Bacik
2020-01-30 11:46 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 04/20] btrfs: make shrink_delalloc take space_info as an arg Josef Bacik
2020-01-30 12:15 ` Nikolay Borisov
2020-01-30 12:35 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 05/20] btrfs: make ALLOC_CHUNK use the space info flags Josef Bacik
2020-01-30 13:19 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 06/20] btrfs: call btrfs_try_granting_tickets when freeing reserved bytes Josef Bacik
2020-01-31 11:16 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 07/20] btrfs: call btrfs_try_granting_tickets when unpinning anything Josef Bacik
2020-01-31 11:25 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 08/20] btrfs: call btrfs_try_granting_tickets when reserving space Josef Bacik
2020-01-31 11:37 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 09/20] btrfs: use the btrfs_space_info_free_bytes_may_use helper for delalloc Josef Bacik
2020-01-31 11:56 ` Nikolay Borisov
2020-01-29 23:50 ` [PATCH 10/20] btrfs: add flushing states for handling data reservations Josef Bacik
2020-01-29 23:50 ` [PATCH 11/20] btrfs: add btrfs_reserve_data_bytes and use it Josef Bacik
2020-01-29 23:50 ` [PATCH 12/20] btrfs: use ticketing for data space reservations Josef Bacik
2020-01-29 23:50 ` Josef Bacik [this message]
2020-01-29 23:50 ` [PATCH 14/20] btrfs: flush delayed refs when trying to reserve data space Josef Bacik
2020-01-29 23:50 ` [PATCH 15/20] btrfs: serialize data reservations if we are flushing Josef Bacik
2020-01-29 23:50 ` [PATCH 16/20] btrfs: rework chunk allocate for data reservations Josef Bacik
2020-01-29 23:50 ` [PATCH 17/20] btrfs: drop the commit_cycles stuff " Josef Bacik
2020-01-29 23:50 ` [PATCH 18/20] btrfs: use the same helper for data and metadata reservations Josef Bacik
2020-01-29 23:50 ` [PATCH 19/20] btrfs: do async reclaim for data reservations Josef Bacik
2020-01-29 23:50 ` [PATCH 20/20] btrfs: kill the priority_reclaim_space helper Josef Bacik
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=20200129235024.24774-14-josef@toxicpanda.com \
--to=josef@toxicpanda.com \
--cc=kernel-team@fb.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox