Messages in this thread | | | Date | Thu, 19 Aug 2021 10:55:09 -0500 | From | David Teigland <> | Subject | Re: [BUG] fs: dlm: possible ABBA deadlock |
| |
On Thu, Aug 19, 2021 at 04:54:57PM +0800, Jia-Ju Bai wrote: > Hello, > > My static analysis tool reports a possible ABBA deadlock in the dlm > filesystem in Linux 5.10: > > dlm_recover_waiters_pre() > mutex_lock(&ls->ls_waiters_mutex); --> line 5130 > recover_convert_waiter() > _receive_convert_reply() > lock_rsb() > mutex_lock(&r->res_mutex); --> line 69 > > dlm_recover_waiters_post() > lock_rsb() > mutex_lock(&r->res_mutex); --> line 69 > mutex_lock(&ls->ls_waiters_mutex); --> line 5307 > > When dlm_recover_waiters_pre() and dlm_recover_waiters_post() are > concurrently executed, the deadlock can occur. > > I am not quite sure whether this possible deadlock is real and how to fix it > if it is real. > Any feedback would be appreciated, thanks :)
They won't be concurrent, "pre" runs before recovery, and "post" is after. Dave
| |