Lines Matching refs:vs
413 int futex_wait_multiple_setup(struct futex_vector *vs, int count, int *woken) in futex_wait_multiple_setup() argument
436 if (!(vs[i].w.flags & FLAGS_SHARED) && retry) in futex_wait_multiple_setup()
439 ret = get_futex_key(u64_to_user_ptr(vs[i].w.uaddr), in futex_wait_multiple_setup()
440 vs[i].w.flags, in futex_wait_multiple_setup()
441 &vs[i].q.key, FUTEX_READ); in futex_wait_multiple_setup()
450 u32 __user *uaddr = (u32 __user *)(unsigned long)vs[i].w.uaddr; in futex_wait_multiple_setup()
451 struct futex_q *q = &vs[i].q; in futex_wait_multiple_setup()
452 u32 val = vs[i].w.val; in futex_wait_multiple_setup()
475 *woken = futex_unqueue_multiple(vs, i); in futex_wait_multiple_setup()
510 static void futex_sleep_multiple(struct futex_vector *vs, unsigned int count, in futex_sleep_multiple() argument
516 for (; count; count--, vs++) { in futex_sleep_multiple()
517 if (!READ_ONCE(vs->q.lock_ptr)) in futex_sleep_multiple()
538 int futex_wait_multiple(struct futex_vector *vs, unsigned int count, in futex_wait_multiple() argument
547 ret = futex_wait_multiple_setup(vs, count, &hint); in futex_wait_multiple()
556 futex_sleep_multiple(vs, count, to); in futex_wait_multiple()
560 ret = futex_unqueue_multiple(vs, count); in futex_wait_multiple()