drm: Use srcu to protect drm_device.unplugged
Use srcu to protect drm_device.unplugged in a race free manner. Drivers can use drm_dev_enter()/drm_dev_exit() to protect and mark sections preventing access to device resources that are not available after the device is gone. Suggested-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Noralf Trønnes <noralf@tronnes.org> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Reviewed-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Tested-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com> Cc: intel-gfx@lists.freedesktop.org Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/1522222715-11814-1-git-send-email-andr2000@gmail.com
This commit is contained in:

committed by
Oleksandr Andrushchenko

parent
790861cc34
commit
bee330f3d6
@@ -46,7 +46,14 @@ struct drm_device {
|
||||
/* currently active master for this device. Protected by master_mutex */
|
||||
struct drm_master *master;
|
||||
|
||||
atomic_t unplugged; /**< Flag whether dev is dead */
|
||||
/**
|
||||
* @unplugged:
|
||||
*
|
||||
* Flag to tell if the device has been unplugged.
|
||||
* See drm_dev_enter() and drm_dev_is_unplugged().
|
||||
*/
|
||||
bool unplugged;
|
||||
|
||||
struct inode *anon_inode; /**< inode for private address-space */
|
||||
char *unique; /**< unique name of the device */
|
||||
/*@} */
|
||||
|
Reference in New Issue
Block a user