diff options
author | Alexander Aring <aahringo@redhat.com> | 2024-08-02 19:26:39 +0200 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2024-08-08 22:14:42 +0200 |
commit | d3b3d2d8e1aa394fc5fde4c0d3e32f8697c2b42c (patch) | |
tree | 6429b8256c92687bee3e57f64168251d6ab27f89 /fs/dlm | |
parent | dlm: cleanup memory allocation helpers (diff) | |
download | linux-d3b3d2d8e1aa394fc5fde4c0d3e32f8697c2b42c.tar.xz linux-d3b3d2d8e1aa394fc5fde4c0d3e32f8697c2b42c.zip |
dlm: remove unnecessary refcounts
This patch removes unnecessary refcounts that are obviously not
necessary because either when the pointer is passed as parameter or it
is part of a list we should already hold a reference to it.
Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm')
-rw-r--r-- | fs/dlm/lock.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/fs/dlm/lock.c b/fs/dlm/lock.c index 6930d7c57216..720715ddaf48 100644 --- a/fs/dlm/lock.c +++ b/fs/dlm/lock.c @@ -1442,18 +1442,6 @@ static void deactivate_rsb(struct kref *kref) } } -/* See comment for unhold_lkb */ - -static void unhold_rsb(struct dlm_rsb *r) -{ - int rv; - - /* inactive rsbs are not ref counted */ - WARN_ON(rsb_flag(r, RSB_INACTIVE)); - rv = kref_put(&r->res_ref, deactivate_rsb); - DLM_ASSERT(!rv, dlm_dump_rsb(r);); -} - void free_inactive_rsb(struct dlm_rsb *r) { WARN_ON_ONCE(!rsb_flag(r, RSB_INACTIVE)); @@ -1675,10 +1663,8 @@ static void del_lkb(struct dlm_rsb *r, struct dlm_lkb *lkb) static void move_lkb(struct dlm_rsb *r, struct dlm_lkb *lkb, int sts) { - hold_lkb(lkb); del_lkb(r, lkb); add_lkb(r, lkb, sts); - unhold_lkb(lkb); } static int msg_reply_type(int mstype) @@ -5409,7 +5395,6 @@ void dlm_recover_purge(struct dlm_ls *ls, const struct list_head *root_list) return; list_for_each_entry(r, root_list, res_root_list) { - hold_rsb(r); lock_rsb(r); if (is_master(r)) { purge_dead_list(ls, r, &r->res_grantqueue, @@ -5420,7 +5405,7 @@ void dlm_recover_purge(struct dlm_ls *ls, const struct list_head *root_list) nodeid_gone, &lkb_count); } unlock_rsb(r); - unhold_rsb(r); + cond_resched(); } |