Messages in this thread | | | Date | Fri, 21 Jul 2023 08:43:48 -0600 | Subject | Re: [PATCH 06/10] io_uring: add support for futex wake and wait | From | Jens Axboe <> |
| |
On 7/21/23 5:37?AM, Peter Zijlstra wrote: > On Fri, Jul 21, 2023 at 01:30:31PM +0200, Peter Zijlstra wrote: > > Sorry, I was too quick.. > > iof->uaddr = sqe->addr; > iof->val = sqe->futex_val; > iof->mask = sqe->futex_mask; > flags = sqe->futex_flags; > > if (flags & ~FUTEX2_MASK) > return -EINVAL; > > iof->flags = futex2_to_flags(flags); > if (!futex_flags_valid(iof->flags)) > return -EINVAL; > > if (!futex_validate_input(iof->flags, iof->val) || > !futex_validate_input(iof->flags, iof->mask)) > return -EINVAL
Something like that should work, with some variable names fixed up. I just went with 'addr' for the futex address, addr2 for the value, and addr3 for the mask.
Rebased on top of your first 4 updated patches, and added a single patch that moves FUTEX2_MASK, will run some testing to validate it's all still sane.
-- Jens Axboe
| |