Re: [PATCH 05/16] Add io_uring IO interface

2019-01-16 Thread Jens Axboe
On 1/16/19 8:16 AM, Arnd Bergmann wrote: > On Wed, Jan 16, 2019 at 4:12 PM Jens Axboe wrote: >> On 1/16/19 3:41 AM, Arnd Bergmann wrote: >>> On Tue, Jan 15, 2019 at 3:55 AM Jens Axboe wrote: diff --git a/arch/x86/entry/syscalls/syscall_32.tbl b/arch/x86/entry/syscalls/syscall_32.tbl >>

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-16 Thread Arnd Bergmann
On Wed, Jan 16, 2019 at 4:12 PM Jens Axboe wrote: > On 1/16/19 3:41 AM, Arnd Bergmann wrote: > > On Tue, Jan 15, 2019 at 3:55 AM Jens Axboe wrote: > >> diff --git a/arch/x86/entry/syscalls/syscall_32.tbl > >> b/arch/x86/entry/syscalls/syscall_32.tbl > >> index 3cf7b533b3d1..194e79c0032e 100644 >

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-16 Thread Jens Axboe
On 1/16/19 3:41 AM, Arnd Bergmann wrote: > On Tue, Jan 15, 2019 at 3:55 AM Jens Axboe wrote: >> >> diff --git a/arch/x86/entry/syscalls/syscall_32.tbl >> b/arch/x86/entry/syscalls/syscall_32.tbl >> index 3cf7b533b3d1..194e79c0032e 100644 >> --- a/arch/x86/entry/syscalls/syscall_32.tbl >> +++ b/ar

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-16 Thread Arnd Bergmann
On Wed, Jan 16, 2019 at 11:41 AM Arnd Bergmann wrote: > > +/* > > + * IO submission data structure (Submission Queue Entry) > > + */ > > +struct io_uring_sqe { > > + __u8opcode; /* type of operation for this sqe */ > > + __u8flags; /* as of now unused */ > > +

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-16 Thread Arnd Bergmann
On Tue, Jan 15, 2019 at 3:55 AM Jens Axboe wrote: > > diff --git a/arch/x86/entry/syscalls/syscall_32.tbl > b/arch/x86/entry/syscalls/syscall_32.tbl > index 3cf7b533b3d1..194e79c0032e 100644 > --- a/arch/x86/entry/syscalls/syscall_32.tbl > +++ b/arch/x86/entry/syscalls/syscall_32.tbl > @@ -398,3

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-15 Thread Jens Axboe
On 1/15/19 9:55 AM, Jens Axboe wrote: > On 1/15/19 9:51 AM, Jonathan Corbet wrote: >> On Mon, 14 Jan 2019 19:55:20 -0700 >> Jens Axboe wrote: >> >> So the [0/16] cover letter seems to have gone astray this time? > > It did go out, but I forgot to add a Subject line to it... > > https://marc.info

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-15 Thread Jens Axboe
On 1/15/19 9:51 AM, Jonathan Corbet wrote: > On Mon, 14 Jan 2019 19:55:20 -0700 > Jens Axboe wrote: > > So the [0/16] cover letter seems to have gone astray this time? It did go out, but I forgot to add a Subject line to it... https://marc.info/?l=linux-block&m=154752095709422&w=2 >> The subm

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-15 Thread Jonathan Corbet
On Mon, 14 Jan 2019 19:55:20 -0700 Jens Axboe wrote: So the [0/16] cover letter seems to have gone astray this time? Anyway, a couple of minor notes/questions: > The submission queue (SQ) and completion queue (CQ) rings are shared > between the application and the kernel. This eliminates the ne

[PATCH 05/16] Add io_uring IO interface

2019-01-14 Thread Jens Axboe
The submission queue (SQ) and completion queue (CQ) rings are shared between the application and the kernel. This eliminates the need to copy data back and forth to submit and complete IO. IO submissions use the io_uring_sqe data structure, and completions are generated in the form of io_uring_sqe

[PATCH 05/16] Add io_uring IO interface

2019-01-12 Thread Jens Axboe
The submission queue (SQ) and completion queue (CQ) rings are shared between the application and the kernel. This eliminates the need to copy data back and forth to submit and complete IO. IO submissions use the io_uring_sqe data structure, and completions are generated in the form of io_uring_sqe

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-09 Thread Jens Axboe
On 1/9/19 11:30 AM, Christoph Hellwig wrote: > On Wed, Jan 09, 2019 at 08:53:31AM -0700, Jens Axboe wrote: +static int io_setup_rw(int rw, const struct io_uring_iocb *iocb, + struct iovec **iovec, struct iov_iter *iter) +{ + void __user *buf = (void __user *)(ui

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-09 Thread Christoph Hellwig
On Wed, Jan 09, 2019 at 08:53:31AM -0700, Jens Axboe wrote: > >> +static int io_setup_rw(int rw, const struct io_uring_iocb *iocb, > >> + struct iovec **iovec, struct iov_iter *iter) > >> +{ > >> + void __user *buf = (void __user *)(uintptr_t)iocb->addr; > >> + size_t ret; > >> +

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-09 Thread Jens Axboe
On 1/9/19 5:10 AM, Christoph Hellwig wrote: >> index 293733f61594..9ef9987b4192 100644 >> --- a/fs/Makefile >> +++ b/fs/Makefile >> @@ -29,7 +29,7 @@ obj-$(CONFIG_SIGNALFD) += signalfd.o >> obj-$(CONFIG_TIMERFD) += timerfd.o >> obj-$(CONFIG_EVENTFD) += even

Re: [PATCH 05/16] Add io_uring IO interface

2019-01-09 Thread Christoph Hellwig
> index 293733f61594..9ef9987b4192 100644 > --- a/fs/Makefile > +++ b/fs/Makefile > @@ -29,7 +29,7 @@ obj-$(CONFIG_SIGNALFD) += signalfd.o > obj-$(CONFIG_TIMERFD)+= timerfd.o > obj-$(CONFIG_EVENTFD)+= eventfd.o > obj-$(CONFIG_USERFAULTFD)+= userfa

[PATCH 05/16] Add io_uring IO interface

2019-01-08 Thread Jens Axboe
The submission queue (SQ) and completion queue (CQ) rings are shared between the application and the kernel. This eliminates the need to copy data back and forth to submit and complete IO. IO submissions use the io_uring_iocb data structure, and completions are generated in the form of io_uring_ev