Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5a2ab034 authored by Matthew Wilcox's avatar Matthew Wilcox
Browse files

media: Convert entity ID allocation to new IDA API



Removes a call to ida_pre_get().

Signed-off-by: default avatarMatthew Wilcox <willy@infradead.org>
Reviewed-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
parent b3fa6417
Loading
Loading
Loading
Loading
+5 −11
Original line number Diff line number Diff line
@@ -575,18 +575,12 @@ int __must_check media_device_register_entity(struct media_device *mdev,
	entity->num_links = 0;
	entity->num_backlinks = 0;

	if (!ida_pre_get(&mdev->entity_internal_idx, GFP_KERNEL))
		return -ENOMEM;

	mutex_lock(&mdev->graph_mutex);

	ret = ida_get_new_above(&mdev->entity_internal_idx, 1,
				&entity->internal_idx);
	if (ret < 0) {
		mutex_unlock(&mdev->graph_mutex);
	ret = ida_alloc_min(&mdev->entity_internal_idx, 1, GFP_KERNEL);
	if (ret < 0)
		return ret;
	}
	entity->internal_idx = ret;

	mutex_lock(&mdev->graph_mutex);
	mdev->entity_internal_idx_max =
		max(mdev->entity_internal_idx_max, entity->internal_idx);

@@ -632,7 +626,7 @@ static void __media_device_unregister_entity(struct media_entity *entity)
	struct media_interface *intf;
	unsigned int i;

	ida_simple_remove(&mdev->entity_internal_idx, entity->internal_idx);
	ida_free(&mdev->entity_internal_idx, entity->internal_idx);

	/* Remove all interface links pointing to this entity */
	list_for_each_entry(intf, &mdev->interfaces, graph_obj.list) {