On Wed, Mar 04, 2020 at 11:00:16AM -0700, Jens Axboe wrote: > sqe->len can be set to a specific fd we want to use for accept4(), so > it uses that one instead of just assigning a free unused one. [...] > + accept->open_fd = READ_ONCE(sqe->len); > + if (!accept->open_fd) > + accept->open_fd = -1; 0 is a valid file descriptor. I realize that it seems unlikely, but I went to a fair bit of trouble in my patch series to ensure that userspace could use any valid file descriptor openat2, without a corner case like "you can't open as file descriptor 0", even though it would have been more convenient to just say "if you pass a non-zero fd in open_how". Please consider accepting a flag to determine the validity of open_fd. - Josh Triplett