In the Linux kernel, the following vulnerability has been resolved:IB/core: Fix a nested dead lock as part of ODP flowFix a nested dead lock as part of ODP flow by using mmput_async().From the below call trace [1] can see that calling mmput() once we havethe umem_odp->umem_mutex locked as required byib_umem_odp_map_dma_and_lock() might trigger in the same task theexit_mmap()->__mmu_notifier_release()->mlx5_ib_invalidate_range() whichmay dead lock when trying to lock the same mutex.Moving to use mmput_async() will solve the problem as the aboveexit_mmap() flow will be called in other task and will be executed oncethe lock will be available.[1][64843.077665] task:kworker/u133:2 state:D stack: 0 pid:80906 ppid:2 flags:0x00004000[64843.077672] Workqueue: mlx5_ib_page_fault mlx5_ib_eqe_pf_action [mlx5_ib][64843.077719] Call Trace:[64843.077722]
- https://git.kernel.org/stable/c/e8de6cb5755eae7b793d8c00c8696c8667d44a7f
No PoCs found on GitHub currently.