https://bugzilla.novell.com/show_bug.cgi?id=736718
https://bugzilla.novell.com/show_bug.cgi?id=736718#c2
--- Comment #2 from Egbert Eich
priv->minor->master = drm_master_create(priv->minor); .... priv->master = drm_master_get(priv->minor->master); .... mutex_unlock(&dev->struct_mutex); if (dev->driver->master_create) { ret = dev->driver->master_create(dev, priv->master);
... } If an interrupt happens in the '>' marked section this crash happens. The destroy case has a similar problem however it's easier to fix as dev->driver->master_destroy() is called with the lock held. However since we cannot use mutexes in interrupt handlers the update of last_dispatch needs to be moved out of the interrupt handler. In fact it is a bit strange why dev->driver->master_create() is not called with the lock held. Changing this would change the semantics of the call and break the radeon driver. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.