Skip to content

Commit 5dd0b96

Browse files
Thomas Zimmermannalexdeucher
authored andcommitted
drm/radeon: Do not hold console lock while suspending clients
The radeon driver holds the console lock while suspending in-kernel DRM clients. This creates a circular dependency with the client-list mutex, which is supposed to be acquired first. Reported when combining radeon with another DRM driver. Therefore, do not take the console lock in radeon, but let the fbdev DRM client acquire the lock when needed. This is what all other DRM drivers so. Signed-off-by: Thomas Zimmermann <[email protected]> Reported-by: Jeff Johnson <[email protected]> Closes: https://lore.kernel.org/dri-devel/[email protected]/ Suggested-by: Ville Syrjälä <[email protected]> Signed-off-by: Alex Deucher <[email protected]> (cherry picked from commit 612ec7c)
1 parent 97a0f2b commit 5dd0b96

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

drivers/gpu/drm/radeon/radeon_device.c

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1635,11 +1635,9 @@ int radeon_suspend_kms(struct drm_device *dev, bool suspend,
16351635
pci_set_power_state(pdev, PCI_D3hot);
16361636
}
16371637

1638-
if (notify_clients) {
1639-
console_lock();
1640-
drm_client_dev_suspend(dev, true);
1641-
console_unlock();
1642-
}
1638+
if (notify_clients)
1639+
drm_client_dev_suspend(dev, false);
1640+
16431641
return 0;
16441642
}
16451643

0 commit comments

Comments
 (0)