Re: IORING_OP_CLOSE fails on fd opened with O_PATH

Clay Harris
2020-06-08T11:21:41Z

On Sun, May 31 2020 at 08:46:03 -0600, Jens Axboe quoth thus:

> On 5/31/20 6:47 AM, Clay Harris wrote:
> > Tested on kernel 5.6.14
> >
> > $ ./closetest closetest.c
> >
> > path closetest.c open on fd 3 with O_RDONLY
> > ---- io_uring close(3)
> > ---- ordinary close(3)
> > ordinary close(3) failed, errno 9: Bad file descriptor
> >
> >
> > $ ./closetest closetest.c opath
> >
> > path closetest.c open on fd 3 with O_PATH
> > ---- io_uring close(3)
> > io_uring close() failed, errno 9: Bad file descriptor
> > ---- ordinary close(3)
> > ordinary close(3) returned 0
>
> Can you include the test case, please? Should be an easy fix, but no
> point rewriting a test case if I can avoid it...

Sure. Here's a cleaned-up test program.
https://claycon.org/software/io_uring/tests/close_opath.c

> --
> Jens Axboe