Skip to content

Commit 65aaca1

Browse files
committed
iommufd: Remove iommufd_ref_to_users()
This no longer has any callers, remove the function Kevin noticed that after commit 99f98a7 ("iommufd: IOMMUFD_DESTROY should not increase the refcount") there was only one other user and it turns out the rework in commit 9227da7 ("iommufd: Add iommufd_access_change_ioas(_id) helpers") got rid of the last one. Link: https://lore.kernel.org/r/0-v1-abb31bedd888+c1-iommufd_ref_to_users_jgg@nvidia.com Suggested-by: Kevin Tian <kevin.tian@intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
1 parent a35762d commit 65aaca1

File tree

1 file changed

+0
-23
lines changed

1 file changed

+0
-23
lines changed

drivers/iommu/iommufd/iommufd_private.h

Lines changed: 0 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -149,29 +149,6 @@ static inline void iommufd_put_object(struct iommufd_object *obj)
149149
up_read(&obj->destroy_rwsem);
150150
}
151151

152-
/**
153-
* iommufd_ref_to_users() - Switch from destroy_rwsem to users refcount
154-
* protection
155-
* @obj - Object to release
156-
*
157-
* Objects have two refcount protections (destroy_rwsem and the refcount_t
158-
* users). Holding either of these will prevent the object from being destroyed.
159-
*
160-
* Depending on the use case, one protection or the other is appropriate. In
161-
* most cases references are being protected by the destroy_rwsem. This allows
162-
* orderly destruction of the object because iommufd_object_destroy_user() will
163-
* wait for it to become unlocked. However, as a rwsem, it cannot be held across
164-
* a system call return. So cases that have longer term needs must switch
165-
* to the weaker users refcount_t.
166-
*
167-
* With users protection iommufd_object_destroy_user() will return false,
168-
* refusing to destroy the object, causing -EBUSY to userspace.
169-
*/
170-
static inline void iommufd_ref_to_users(struct iommufd_object *obj)
171-
{
172-
up_read(&obj->destroy_rwsem);
173-
/* iommufd_lock_obj() obtains users as well */
174-
}
175152
void iommufd_object_abort(struct iommufd_ctx *ictx, struct iommufd_object *obj);
176153
void iommufd_object_abort_and_destroy(struct iommufd_ctx *ictx,
177154
struct iommufd_object *obj);

0 commit comments

Comments
 (0)