Lines Matching refs:ipt
542 struct io_poll_table *ipt, __poll_t mask, in __io_arm_poll_handler() argument
550 ipt->pt._key = mask; in __io_arm_poll_handler()
551 ipt->req = req; in __io_arm_poll_handler()
552 ipt->error = 0; in __io_arm_poll_handler()
553 ipt->nr_entries = 0; in __io_arm_poll_handler()
565 ipt->owning = issue_flags & IO_URING_F_UNLOCKED; in __io_arm_poll_handler()
566 atomic_set(&req->poll_refs, (int)ipt->owning); in __io_arm_poll_handler()
578 mask = vfs_poll(req->file, &ipt->pt) & poll->events; in __io_arm_poll_handler()
580 if (unlikely(ipt->error || !ipt->nr_entries)) { in __io_arm_poll_handler()
583 if (!io_poll_can_finish_inline(req, ipt)) { in __io_arm_poll_handler()
587 ipt->result_mask = mask; in __io_arm_poll_handler()
590 return ipt->error ?: -EINVAL; in __io_arm_poll_handler()
595 if (!io_poll_can_finish_inline(req, ipt)) { in __io_arm_poll_handler()
600 ipt->result_mask = mask; in __io_arm_poll_handler()
608 io_poll_can_finish_inline(req, ipt)) { in __io_arm_poll_handler()
614 if (ipt->owning) { in __io_arm_poll_handler()
674 struct io_poll_table ipt; in io_arm_poll_handler() local
702 ipt.pt._qproc = io_async_queue_proc; in io_arm_poll_handler()
706 ret = __io_arm_poll_handler(req, &apoll->poll, &ipt, mask, issue_flags); in io_arm_poll_handler()
886 struct io_poll_table ipt; in io_poll_add() local
889 ipt.pt._qproc = io_poll_queue_proc; in io_poll_add()
891 ret = __io_arm_poll_handler(req, poll, &ipt, poll->events, issue_flags); in io_poll_add()
893 io_req_set_res(req, ipt.result_mask, 0); in io_poll_add()