Lines Matching refs:resource

111 	struct client_resource resource;  member
118 struct client_resource resource; member
123 struct client_resource resource; member
131 struct client_resource resource; member
137 struct client_resource resource; member
158 static void schedule_if_iso_resource(struct client_resource *resource) in schedule_if_iso_resource() argument
160 if (resource->release == release_iso_resource) in schedule_if_iso_resource()
161 schedule_iso_resource(container_of(resource, in schedule_if_iso_resource()
162 struct iso_resource, resource), 0); in schedule_if_iso_resource()
487 struct client_resource *resource, gfp_t gfp_mask) in add_client_resource() argument
500 ret = idr_alloc(&client->resource_idr, resource, 0, 0, in add_client_resource()
503 resource->handle = ret; in add_client_resource()
505 schedule_if_iso_resource(resource); in add_client_resource()
519 struct client_resource *resource; in release_client_resource() local
523 resource = NULL; in release_client_resource()
525 resource = idr_find(&client->resource_idr, handle); in release_client_resource()
526 if (resource && resource->release == release) in release_client_resource()
530 if (!(resource && resource->release == release)) in release_client_resource()
534 *return_resource = resource; in release_client_resource()
536 resource->release(client, resource); in release_client_resource()
544 struct client_resource *resource) in release_transaction() argument
562 idr_remove(&client->resource_idr, e->r.resource.handle); in complete_transaction()
618 e->r.resource.release = release_transaction; in init_request()
619 ret = add_client_resource(client, &e->r.resource, GFP_KERNEL); in init_request()
664 struct client_resource *resource) in release_request() argument
666 struct inbound_transaction_resource *r = container_of(resource, in release_request()
667 struct inbound_transaction_resource, resource); in release_request()
715 r->resource.release = release_request; in handle_request()
716 ret = add_client_resource(handler->client, &r->resource, GFP_ATOMIC); in handle_request()
730 req->handle = r->resource.handle; in handle_request()
744 req->handle = r->resource.handle; in handle_request()
765 struct client_resource *resource) in release_address_handler() argument
768 container_of(resource, struct address_handler_resource, resource); in release_address_handler()
804 r->resource.release = release_address_handler; in ioctl_allocate()
805 ret = add_client_resource(client, &r->resource, GFP_KERNEL); in ioctl_allocate()
807 release_address_handler(client, &r->resource); in ioctl_allocate()
810 a->handle = r->resource.handle; in ioctl_allocate()
824 struct client_resource *resource; in ioctl_send_response() local
829 release_request, &resource) < 0) in ioctl_send_response()
832 r = container_of(resource, struct inbound_transaction_resource, in ioctl_send_response()
833 resource); in ioctl_send_response()
863 struct client_resource *resource) in release_descriptor() argument
866 container_of(resource, struct descriptor_resource, resource); in release_descriptor()
903 r->resource.release = release_descriptor; in ioctl_add_descriptor()
904 ret = add_client_resource(client, &r->resource, GFP_KERNEL); in ioctl_add_descriptor()
909 a->handle = r->resource.handle; in ioctl_add_descriptor()
1310 idr_find(&client->resource_idr, r->resource.handle)) { in iso_resource_work()
1311 idr_remove(&client->resource_idr, r->resource.handle); in iso_resource_work()
1330 e->iso_resource.handle = r->resource.handle; in iso_resource_work()
1348 struct client_resource *resource) in release_iso_resource() argument
1351 container_of(resource, struct iso_resource, resource); in release_iso_resource()
1393 r->resource.release = release_iso_resource; in init_iso_resource()
1394 ret = add_client_resource(client, &r->resource, GFP_KERNEL); in init_iso_resource()
1398 r->resource.release = NULL; in init_iso_resource()
1399 r->resource.handle = -1; in init_iso_resource()
1402 request->handle = r->resource.handle; in init_iso_resource()
1723 struct client_resource *resource = p; in is_outbound_transaction_resource() local
1725 return resource->release == release_transaction; in is_outbound_transaction_resource()
1742 struct client_resource *resource = p; in shutdown_resource() local
1745 resource->release(client, resource); in shutdown_resource()