Lines Matching refs:ext_arg
2477 struct ext_arg { struct
2488 struct ext_arg *ext_arg, in __io_cqring_wait_schedule() argument
2498 if (ext_arg->iowait && current_pending_io()) in __io_cqring_wait_schedule()
2511 struct ext_arg *ext_arg, in io_cqring_wait_schedule() argument
2525 return __io_cqring_wait_schedule(ctx, iowq, ext_arg, start_time); in io_cqring_wait_schedule()
2533 struct ext_arg *ext_arg) in io_cqring_wait() argument
2562 iowq.min_timeout = ext_arg->min_time; in io_cqring_wait()
2566 if (ext_arg->ts_set) { in io_cqring_wait()
2567 iowq.timeout = timespec64_to_ktime(ext_arg->ts); in io_cqring_wait()
2572 if (ext_arg->sig) { in io_cqring_wait()
2575 ret = set_compat_user_sigmask((const compat_sigset_t __user *)ext_arg->sig, in io_cqring_wait()
2576 ext_arg->argsz); in io_cqring_wait()
2579 ret = set_user_sigmask(ext_arg->sig, ext_arg->argsz); in io_cqring_wait()
2607 ret = io_cqring_wait_schedule(ctx, &iowq, ext_arg, start_time); in io_cqring_wait()
3259 const void __user *argp, struct ext_arg *ext_arg) in io_get_ext_arg() argument
3264 ext_arg->iowait = !(flags & IORING_ENTER_NO_IOWAIT); in io_get_ext_arg()
3271 ext_arg->sig = (const sigset_t __user *) argp; in io_get_ext_arg()
3278 if (ext_arg->argsz != sizeof(struct io_uring_reg_wait)) in io_get_ext_arg()
3286 ext_arg->min_time = READ_ONCE(w->min_wait_usec) * NSEC_PER_USEC; in io_get_ext_arg()
3287 ext_arg->sig = u64_to_user_ptr(READ_ONCE(w->sigmask)); in io_get_ext_arg()
3288 ext_arg->argsz = READ_ONCE(w->sigmask_sz); in io_get_ext_arg()
3290 ext_arg->ts.tv_sec = READ_ONCE(w->ts.tv_sec); in io_get_ext_arg()
3291 ext_arg->ts.tv_nsec = READ_ONCE(w->ts.tv_nsec); in io_get_ext_arg()
3292 ext_arg->ts_set = true; in io_get_ext_arg()
3301 if (ext_arg->argsz != sizeof(arg)) in io_get_ext_arg()
3315 ext_arg->min_time = arg.min_wait_usec * NSEC_PER_USEC; in io_get_ext_arg()
3316 ext_arg->sig = u64_to_user_ptr(arg.sigmask); in io_get_ext_arg()
3317 ext_arg->argsz = arg.sigmask_sz; in io_get_ext_arg()
3319 if (get_timespec64(&ext_arg->ts, u64_to_user_ptr(arg.ts))) in io_get_ext_arg()
3321 ext_arg->ts_set = true; in io_get_ext_arg()
3432 struct ext_arg ext_arg = { .argsz = argsz }; in SYSCALL_DEFINE6() local
3434 ret2 = io_get_ext_arg(ctx, flags, argp, &ext_arg); in SYSCALL_DEFINE6()
3437 &ext_arg); in SYSCALL_DEFINE6()