Short reads are possible with cache=writeback (see Patch 3 for details).
Handle this by resubmitting requests until the read is completed.

Patch 1 adds trace events useful for debugging io_uring.

Patch 2 fixes EINTR.  This lays the groundwork for resubmitting requests in
Patch 3.

Aarushi: Feel free to squash this into your patch series if you are happy with
the code, I don't mind if the authorship information is lost.  After applying
these patches I can successfully boot a Fedora 30 guest qcow2 file with
cache=writeback.

Based-on: <20190610134905.22294-1-mehta.aar...@gmail.com>

Stefan Hajnoczi (3):
  block/io_uring: add submission and completion trace events
  block/io_uring: fix EINTR request resubmission
  block/io_uring: resubmit short buffered reads

 block/io_uring.c   | 136 ++++++++++++++++++++++++++++++++++-----------
 block/trace-events |   6 +-
 2 files changed, 108 insertions(+), 34 deletions(-)

-- 
2.21.0


Reply via email to