Lines Matching defs:vs
388 * @vs: The futex list to wait on
402 int futex_wait_multiple_setup(struct futex_vector *vs, int count, int *woken)
430 if (!(vs[i].w.flags & FLAGS_SHARED) && retry)
433 ret = get_futex_key(u64_to_user_ptr(vs[i].w.uaddr),
434 vs[i].w.flags,
435 &vs[i].q.key, FUTEX_READ);
444 u32 __user *uaddr = (u32 __user *)(unsigned long)vs[i].w.uaddr;
445 struct futex_q *q = &vs[i].q;
446 u32 val = vs[i].w.val;
473 *woken = futex_unqueue_multiple(vs, i);
501 * @vs: List of futexes to wait for
502 * @count: Length of vs
508 static void futex_sleep_multiple(struct futex_vector *vs, unsigned int count,
514 for (; count; count--, vs++) {
515 if (!READ_ONCE(vs->q.lock_ptr))
524 * @vs: The list of futexes to wait on
536 int futex_wait_multiple(struct futex_vector *vs, unsigned int count,
545 ret = futex_wait_multiple_setup(vs, count, &hint);
554 futex_sleep_multiple(vs, count, to);
558 ret = futex_unqueue_multiple(vs, count);