62 lines
2.1 KiB
Diff
62 lines
2.1 KiB
Diff
From 250087e69e9c123ea58fba31cf301355ee6cb49a Mon Sep 17 00:00:00 2001
|
|
From: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Date: Mon, 23 Sep 2024 22:11:41 -0400
|
|
Subject: [PATCH 013/213] bcachefs: kill btree_trans_restart_nounlock()
|
|
Content-Type: text/plain; charset="utf-8"
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Redundant, the normal btree_trans_restart() doesn't unlock.
|
|
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
|
|
---
|
|
fs/bcachefs/btree_iter.h | 7 +++----
|
|
fs/bcachefs/btree_trans_commit.c | 2 +-
|
|
2 files changed, 4 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/fs/bcachefs/btree_iter.h b/fs/bcachefs/btree_iter.h
|
|
index 0bda054f80d7..24406f723283 100644
|
|
--- a/fs/bcachefs/btree_iter.h
|
|
+++ b/fs/bcachefs/btree_iter.h
|
|
@@ -341,21 +341,20 @@ static inline void bch2_trans_verify_not_unlocked(struct btree_trans *trans)
|
|
}
|
|
|
|
__always_inline
|
|
-static int btree_trans_restart_nounlock(struct btree_trans *trans, int err)
|
|
+static int btree_trans_restart_ip(struct btree_trans *trans, int err, unsigned long ip)
|
|
{
|
|
BUG_ON(err <= 0);
|
|
BUG_ON(!bch2_err_matches(-err, BCH_ERR_transaction_restart));
|
|
|
|
trans->restarted = err;
|
|
- trans->last_restarted_ip = _THIS_IP_;
|
|
+ trans->last_restarted_ip = ip;
|
|
return -err;
|
|
}
|
|
|
|
__always_inline
|
|
static int btree_trans_restart(struct btree_trans *trans, int err)
|
|
{
|
|
- btree_trans_restart_nounlock(trans, err);
|
|
- return -err;
|
|
+ return btree_trans_restart_ip(trans, err, _THIS_IP_);
|
|
}
|
|
|
|
bool bch2_btree_node_upgrade(struct btree_trans *,
|
|
diff --git a/fs/bcachefs/btree_trans_commit.c b/fs/bcachefs/btree_trans_commit.c
|
|
index 3d951846a1be..b47f11881fe4 100644
|
|
--- a/fs/bcachefs/btree_trans_commit.c
|
|
+++ b/fs/bcachefs/btree_trans_commit.c
|
|
@@ -624,7 +624,7 @@ bch2_trans_commit_write_locked(struct btree_trans *trans, unsigned flags,
|
|
|
|
if (race_fault()) {
|
|
trace_and_count(c, trans_restart_fault_inject, trans, trace_ip);
|
|
- return btree_trans_restart_nounlock(trans, BCH_ERR_transaction_restart_fault_inject);
|
|
+ return btree_trans_restart(trans, BCH_ERR_transaction_restart_fault_inject);
|
|
}
|
|
|
|
/*
|
|
--
|
|
2.45.2
|
|
|