search for: qs_hb_bm

Displaying 2 results from an estimated 2 matches for "qs_hb_bm".

2023 Jun 27
0
[PATCH] fs: ocfs: fix potential deadlock on &qs->qs_lock
...2quo_make_decision(struct work_struct *work) int quorum; int lowest_hb, lowest_reachable = 0, fence = 0; struct o2quo_state *qs = &o2quo_state; + unsigned long flags; - spin_lock(&qs->qs_lock); + spin_lock_irqsave(&qs->qs_lock, flags); lowest_hb = find_first_bit(qs->qs_hb_bm, O2NM_MAX_NODES); if (lowest_hb != O2NM_MAX_NODES) @@ -146,14 +147,14 @@ static void o2quo_make_decision(struct work_struct *work) out: if (fence) { - spin_unlock(&qs->qs_lock); + spin_unlock_irqrestore(&qs->qs_lock, flags); o2quo_fence_self(); } else { mlog(ML_NOTICE...
2023 Jun 27
0
[PATCH] fs: ocfs: fix potential deadlock on &qs->qs_lock
...2quo_make_decision(struct work_struct *work) int quorum; int lowest_hb, lowest_reachable = 0, fence = 0; struct o2quo_state *qs = &o2quo_state; + unsigned long flags; - spin_lock(&qs->qs_lock); + spin_lock_irqsave(&qs->qs_lock, flags); lowest_hb = find_first_bit(qs->qs_hb_bm, O2NM_MAX_NODES); if (lowest_hb != O2NM_MAX_NODES) @@ -146,14 +147,14 @@ static void o2quo_make_decision(struct work_struct *work) out: if (fence) { - spin_unlock(&qs->qs_lock); + spin_unlock_irqrestore(&qs->qs_lock, flags); o2quo_fence_self(); } else { mlog(ML_NOTICE...