Lines Matching refs:prsrc
245 typedef void (rsrc_put_fn)(struct io_ring_ctx *ctx, struct io_rsrc_put *prsrc);
8100 static void io_rsrc_file_put(struct io_ring_ctx *ctx, struct io_rsrc_put *prsrc) in io_rsrc_file_put() argument
8102 struct file *file = prsrc->file; in io_rsrc_file_put()
8167 struct io_rsrc_put *prsrc, *tmp; in __io_rsrc_put_work() local
8169 list_for_each_entry_safe(prsrc, tmp, &ref_node->rsrc_list, list) { in __io_rsrc_put_work()
8170 list_del(&prsrc->list); in __io_rsrc_put_work()
8172 if (prsrc->tag) { in __io_rsrc_put_work()
8177 io_cqring_fill_event(ctx, prsrc->tag, 0, 0); in __io_rsrc_put_work()
8185 rsrc_data->do_put(ctx, prsrc); in __io_rsrc_put_work()
8186 kfree(prsrc); in __io_rsrc_put_work()
8340 struct io_rsrc_put *prsrc; in io_queue_rsrc_removal() local
8342 prsrc = kzalloc(sizeof(*prsrc), GFP_KERNEL); in io_queue_rsrc_removal()
8343 if (!prsrc) in io_queue_rsrc_removal()
8346 prsrc->tag = *io_get_tag_slot(data, idx); in io_queue_rsrc_removal()
8347 prsrc->rsrc = rsrc; in io_queue_rsrc_removal()
8348 list_add(&prsrc->list, &node->rsrc_list); in io_queue_rsrc_removal()
8806 static void io_rsrc_buf_put(struct io_ring_ctx *ctx, struct io_rsrc_put *prsrc) in io_rsrc_buf_put() argument
8808 io_buffer_unmap(ctx, &prsrc->buf); in io_rsrc_buf_put()
8809 prsrc->buf = NULL; in io_rsrc_buf_put()