On Fri, May 22, 2020 at 01:50:53AM +0100, Al Viro wrote: > On Thu, May 21, 2020 at 05:19:37PM -0700, Bijan Mottahedeh wrote: > > Calling statx directly both simplifies the interface and avoids potential > > incompatibilities between sync and async invokations. > > > > Signed-off-by: Bijan Mottahedeh <bijan.mottahedeh@xxxxxxxxxx> > > --- > > fs/io_uring.c | 53 +++++++---------------------------------------------- > > 1 file changed, 7 insertions(+), 46 deletions(-) > > > > diff --git a/fs/io_uring.c b/fs/io_uring.c > > index 12284ea..0540961 100644 > > --- a/fs/io_uring.c > > +++ b/fs/io_uring.c > > @@ -427,7 +427,10 @@ struct io_open { > > union { > > unsigned mask; > > }; > > - struct filename *filename; > > + union { > > + struct filename *filename; > > + const char __user *fname; > > + }; > > NAK. io_uring is already has ridiculous amount of multiplexing, > but this kind of shit is right out. > > And frankly, the more I look at it, the more I want to rip > struct io_open out. This kind of trashcan structures has > caused tons of headache pretty much every time we had those. > Don't do it. s/io_open/io_kiocb/, sorry for typo.