Lines Matching refs:resource

20 static void	vmci_resource_do_remove(struct vmci_resource *resource);
163 vmci_resource_add(struct vmci_resource *resource, in vmci_resource_add() argument
169 ASSERT(resource); in vmci_resource_add()
174 resource_handle.resource); in vmci_resource_add()
178 vmci_hashtable_init_entry(&resource->hash_entry, resource_handle); in vmci_resource_add()
179 resource->type = resource_type; in vmci_resource_add()
180 resource->container_free_cb = container_free_cb; in vmci_resource_add()
181 resource->container_object = container_object; in vmci_resource_add()
185 &resource->hash_entry); in vmci_resource_add()
215 struct vmci_resource *resource; in vmci_resource_remove() local
217 resource = vmci_resource_get(resource_handle, resource_type); in vmci_resource_remove()
218 if (resource == NULL) in vmci_resource_remove()
222 vmci_hashtable_remove_entry(resource_table, &resource->hash_entry); in vmci_resource_remove()
224 vmci_resource_release(resource); in vmci_resource_remove()
249 struct vmci_resource *resource; in vmci_resource_get() local
254 resource = RESOURCE_CONTAINER(entry, struct vmci_resource, hash_entry); in vmci_resource_get()
256 resource->type == resource_type) { in vmci_resource_get()
257 return (resource); in vmci_resource_get()
281 vmci_resource_hold(struct vmci_resource *resource) in vmci_resource_hold() argument
284 ASSERT(resource); in vmci_resource_hold()
285 vmci_hashtable_hold_entry(resource_table, &resource->hash_entry); in vmci_resource_hold()
306 vmci_resource_do_remove(struct vmci_resource *resource) in vmci_resource_do_remove() argument
309 ASSERT(resource); in vmci_resource_do_remove()
311 if (resource->container_free_cb) { in vmci_resource_do_remove()
312 resource->container_free_cb(resource->container_object); in vmci_resource_do_remove()
332 vmci_resource_release(struct vmci_resource *resource) in vmci_resource_release() argument
336 ASSERT(resource); in vmci_resource_release()
339 &resource->hash_entry); in vmci_resource_release()
341 vmci_resource_do_remove(resource); in vmci_resource_release()
367 vmci_resource_handle(struct vmci_resource *resource) in vmci_resource_handle() argument
370 ASSERT(resource); in vmci_resource_handle()
371 return (resource->hash_entry.handle); in vmci_resource_handle()