public inbox for [email protected]
 help / color / mirror / Atom feed
* [GIT PULL] io_uring fixes for 5.7-rc
@ 2020-04-17 15:16 Jens Axboe
  2020-04-17 17:26 ` Linus Torvalds
  2020-04-17 17:45 ` pr-tracker-bot
  0 siblings, 2 replies; 7+ messages in thread
From: Jens Axboe @ 2020-04-17 15:16 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: [email protected], io-uring

Hi Linus,

- Series from Pavel, wrapping up the init/setup cleanup.

- Series from Pavel fixing some issues around deferral sequences

- Fix for splice punt check using the wrong struct file member

- Apply poll re-arm logic for pollable retry too

- Pollable retry should honor cancelation

- Fix for setup time error handling syzbot reported crash

- Work restore poll cancelation fix


  git://git.kernel.dk/linux-block.git tags/io_uring-5.7-2020-04-17


----------------------------------------------------------------
Jens Axboe (4):
      io_uring: correct O_NONBLOCK check for splice punt
      io_uring: check for need to re-wait in polled async handling
      io_uring: io_async_task_func() should check and honor cancelation
      io_uring: only post events in io_poll_remove_all() if we completed some

Pavel Begunkov (8):
      io_uring: remove obsolete @mm_fault
      io_uring: track mm through current->mm
      io_uring: early submission req fail code
      io_uring: keep all sqe->flags in req->flags
      io_uring: move all request init code in one place
      io_uring: fix cached_sq_head in io_timeout()
      io_uring: kill already cached timeout.seq_offset
      io_uring: don't count rqs failed after current one

Xiaoguang Wang (1):
      io_uring: restore req->work when canceling poll request

 fs/io_uring.c | 301 +++++++++++++++++++++++++++++++---------------------------
 1 file changed, 162 insertions(+), 139 deletions(-)

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [GIT PULL] io_uring fixes for 5.7-rc
  2020-04-17 15:16 [GIT PULL] io_uring fixes for 5.7-rc Jens Axboe
@ 2020-04-17 17:26 ` Linus Torvalds
  2020-04-17 17:27   ` Linus Torvalds
  2020-04-17 17:42   ` Jens Axboe
  2020-04-17 17:45 ` pr-tracker-bot
  1 sibling, 2 replies; 7+ messages in thread
From: Linus Torvalds @ 2020-04-17 17:26 UTC (permalink / raw)
  To: Jens Axboe; +Cc: [email protected], io-uring

On Fri, Apr 17, 2020 at 8:16 AM Jens Axboe <[email protected]> wrote:
>
> - Work restore poll cancelation fix

That whole apoll thing is disgusting.

I cannot convince myself it is right. How do you convince yourself?

                Linus

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [GIT PULL] io_uring fixes for 5.7-rc
  2020-04-17 17:26 ` Linus Torvalds
@ 2020-04-17 17:27   ` Linus Torvalds
  2020-04-17 17:42   ` Jens Axboe
  1 sibling, 0 replies; 7+ messages in thread
From: Linus Torvalds @ 2020-04-17 17:27 UTC (permalink / raw)
  To: Jens Axboe; +Cc: [email protected], io-uring

On Fri, Apr 17, 2020 at 10:26 AM Linus Torvalds
<[email protected]> wrote:
>
> I cannot convince myself it is right. How do you convince yourself?

.. and equally importantly: even if it were to be now correct - how do
you make sure it keeps working when it's so odd and subtle and crazy?

               Linus

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [GIT PULL] io_uring fixes for 5.7-rc
  2020-04-17 17:26 ` Linus Torvalds
  2020-04-17 17:27   ` Linus Torvalds
@ 2020-04-17 17:42   ` Jens Axboe
  1 sibling, 0 replies; 7+ messages in thread
From: Jens Axboe @ 2020-04-17 17:42 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: [email protected], io-uring

On 4/17/20 11:26 AM, Linus Torvalds wrote:
> On Fri, Apr 17, 2020 at 8:16 AM Jens Axboe <[email protected]> wrote:
>>
>> - Work restore poll cancelation fix
> 
> That whole apoll thing is disgusting.
> 
> I cannot convince myself it is right. How do you convince yourself?

req->poll is used for pure poll requests, req->apoll is used for poll
that is armed on behalf of a non-poll request. So the paths are actually
pretty well defined, for both the submission side entry, and the
completion side which is through the wakeup handlers.

The handlers that deal with the "poll on behalf of another request" is
pretty short and limited. Anything that uses "poll on behalf of others"
is not going to be queued async, which is the overlap with io_wq_work
in the io_kiocb structure. The only part we have to be a bit careful
with there is for the assume contexts, like mm etc. One of the fixes
in this pull request deals with that.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [GIT PULL] io_uring fixes for 5.7-rc
  2020-04-17 15:16 [GIT PULL] io_uring fixes for 5.7-rc Jens Axboe
  2020-04-17 17:26 ` Linus Torvalds
@ 2020-04-17 17:45 ` pr-tracker-bot
  1 sibling, 0 replies; 7+ messages in thread
From: pr-tracker-bot @ 2020-04-17 17:45 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Linus Torvalds, [email protected], io-uring

The pull request you sent on Fri, 17 Apr 2020 09:16:38 -0600:

> git://git.kernel.dk/linux-block.git tags/io_uring-5.7-2020-04-17

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/a2286a449baf11624d393aad28c1081cee3f47fb

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [GIT PULL] io_uring fixes for 5.7-rc
@ 2020-05-22 17:12 Jens Axboe
  2020-05-22 19:05 ` pr-tracker-bot
  0 siblings, 1 reply; 7+ messages in thread
From: Jens Axboe @ 2020-05-22 17:12 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: io-uring, [email protected]

Hi Linus,

A small collection of small fixes that should go into this release:

- Two fixes for async request preparation (Pavel)

- Busy clear fix for SQPOLL (Xiaoguang)

- Don't use kiocb->private for O_DIRECT buf index, some file systems use
  it (Bijan)

- Kill dead check in io_splice()

- Ensure sqo_wait is initialized early

- Cancel task_work if we fail adding to original process

- Only add (IO)pollable requests to iopoll list, fixing a regression in
  this merge window.

Please pull!


  git://git.kernel.dk/linux-block.git tags/io_uring-5.7-2020-05-22


----------------------------------------------------------------
Bijan Mottahedeh (1):
      io_uring: don't use kiocb.private to store buf_index

Jens Axboe (4):
      io_uring: initialize ctx->sqo_wait earlier
      io_uring: remove dead check in io_splice()
      io_uring: cancel work if task_work_add() fails
      io_uring: don't add non-IO requests to iopoll pending list

Pavel Begunkov (2):
      io_uring: don't prepare DRAIN reqs twice
      io_uring: fix FORCE_ASYNC req preparation

Xiaoguang Wang (1):
      io_uring: reset -EBUSY error when io sq thread is waken up

 fs/io_uring.c | 60 +++++++++++++++++++++++++++++++++--------------------------
 1 file changed, 34 insertions(+), 26 deletions(-)

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [GIT PULL] io_uring fixes for 5.7-rc
  2020-05-22 17:12 Jens Axboe
@ 2020-05-22 19:05 ` pr-tracker-bot
  0 siblings, 0 replies; 7+ messages in thread
From: pr-tracker-bot @ 2020-05-22 19:05 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Linus Torvalds, io-uring, [email protected]

The pull request you sent on Fri, 22 May 2020 11:12:07 -0600:

> git://git.kernel.dk/linux-block.git tags/io_uring-5.7-2020-05-22

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/444565650a5fe9c63ddf153e6198e31705dedeb2

Thank you!

-- 
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-05-22 19:05 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-17 15:16 [GIT PULL] io_uring fixes for 5.7-rc Jens Axboe
2020-04-17 17:26 ` Linus Torvalds
2020-04-17 17:27   ` Linus Torvalds
2020-04-17 17:42   ` Jens Axboe
2020-04-17 17:45 ` pr-tracker-bot
  -- strict thread matches above, loose matches on Subject: below --
2020-05-22 17:12 Jens Axboe
2020-05-22 19:05 ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox