Messages in this thread | | | Subject | Re: [Bug #12574] possible circular locking dependency detected | From | Eric Anholt <> | Date | Tue, 10 Feb 2009 14:41:56 -0800 |
| |
On Wed, 2009-02-11 at 00:37 +0200, Michael S. Tsirkin wrote: > Dave, dri guys, > Could you take a look at this circular dependency please (below)? I > observe it when suspending laptop with radeon drm loaded and with > lockdep enabled. It seems that the root of the problem is that > various vm ops such as drm_vm_open, drm_mmap) are called with mm > semaphore taken, and take dev->struct_mutex. On the other hand, > drm_rmmap_locked is called with dev->struct_mutex, and calls mtrr_del > which depends on mm semaphore indirectly. > > What do you think?
Yes, there are real lock inversions now due to the GTT mmap code. It's going to be a pain to fix (I tried getting the mmap_sem -> struct_mutex path to go away, but the fact that mmap_sem is held over the fault handler pretty much kills that). It's high on the list, though.
-- Eric Anholt eric@anholt.net eric.anholt@intel.com
[unhandled content-type:application/pgp-signature] | |