On Tue, May 25, 2021 at 10:59:25AM -0400, Tony Krowiak wrote: > > But this is alot of complicated and unused code to solve a lock > > ordering problem.. > > If you have a better solution, I'm all ears. I've been down this > road a couple of times now and solving lock ordering for > multiple asynchronous processes is not trivial. This seems like > a reasonable solution and provides for flexibility for including > additional hooks to handle interception of other AP instructions. Lock ordering is very trivial. In this case you have to always hold the hook lock before obtaining the matrix_dev lock. From what I remember there was only one error on the set path where they were ordered wrong Jason