Re: [PATCH 3/5] drm: Add drm_object lease infrastructure [v4]

From: Keith Packard
Date: Mon Oct 16 2017 - 16:42:52 EST


Sean Paul <seanpaul@xxxxxxxxxxxx> writes:


> With these nits fixed,
> Reviewed-by: Sean Paul <seanpaul@xxxxxxxxxxxx>

Like this?

From 0aa52dd5a0873831c79c14942075354c041e5bed Mon Sep 17 00:00:00 2001
From: Keith Packard <keithp@xxxxxxxxxx>
Date: Mon, 16 Oct 2017 13:41:20 -0700
Subject: [PATCH] drm: Mark functions requiring idr_mutex. Add lockdep to
_drm_lease_revoke

Reasonable suggestions by Sean Paul.

Signed-off-by: Keith Packard <keithp@xxxxxxxxxx>
---
drivers/gpu/drm/drm_lease.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_lease.c b/drivers/gpu/drm/drm_lease.c
index 88c213f9c4ab..20694c77a2de 100644
--- a/drivers/gpu/drm/drm_lease.c
+++ b/drivers/gpu/drm/drm_lease.c
@@ -58,7 +58,9 @@ _drm_find_lessee(struct drm_master *master, int lessee_id)
}

/**
- * _drm_lease_held_master - check to see if an object is leased (or owned) by master
+ * _drm_lease_held_master - check to see if an object is leased (or
+ * owned) by master (idr_mutex held)
+ *
* @master: the master to check the lease status of
* @id: the id to check
*
@@ -77,7 +79,7 @@ static int _drm_lease_held_master(struct drm_master *master, int id)
}

/**
- * _drm_has_leased - check to see if an object has been leased
+ * _drm_has_leased - check to see if an object has been leased (idr mutex held)
* @master: the master to check the lease status of
* @id: the id to check
*
@@ -300,8 +302,8 @@ void drm_lease_destroy(struct drm_master *master)
}

/**
- * _drm_lease_revoke - revoke access to all leased objects
- * @master: the master losing its lease
+ * _drm_lease_revoke - revoke access to all leased objects (idr_mutex held)
+ * @top: the master losing its lease
*/

void _drm_lease_revoke(struct drm_master *top)
@@ -310,6 +312,7 @@ void _drm_lease_revoke(struct drm_master *top)
void *entry;
struct drm_master *master = top;

+ lockdep_assert_held(&top->dev->mode_config.idr_mutex);
/*
* Walk the tree starting at 'top' emptying all leases. Because
* the tree is fully connected, we can do this without recursing
--
2.15.0.rc0



--
-keith

Attachment: signature.asc
Description: PGP signature