public inbox for [email protected]
 help / color / mirror / Atom feed
From: Stefano Garzarella <[email protected]>
To: Konrad Rzeszutek Wilk <[email protected]>
Cc: Jens Axboe <[email protected]>, Sargun Dhillon <[email protected]>,
	Kees Cook <[email protected]>,
	[email protected], [email protected],
	Kernel Hardening <[email protected]>,
	Jann Horn <[email protected]>, Aleksa Sarai <[email protected]>,
	Christian Brauner <[email protected]>,
	Stefan Hajnoczi <[email protected]>,
	[email protected],
	Alexander Viro <[email protected]>,
	Jeff Moyer <[email protected]>
Subject: Re: [PATCH RFC 0/3] io_uring: add restrictions to support untrusted applications and guests
Date: Fri, 10 Jul 2020 18:20:17 +0200	[thread overview]
Message-ID: <20200710162017.qdu34ermtxh3rfgl@steredhat> (raw)
In-Reply-To: <[email protected]>

Hi Konrad,

On Fri, Jul 10, 2020 at 11:33:09AM -0400, Konrad Rzeszutek Wilk wrote:
> .snip..
> > Just to recap the proposal, the idea is to add some restrictions to the
> > operations (sqe, register, fixed file) to safely allow untrusted applications
> > or guests to use io_uring queues.
> 
> Hi!
> 
> This is neat and quite cool - but one thing that keeps nagging me is
> what how much overhead does this cut from the existing setup when you use
> virtio (with guests obviously)?

I need to do more tests, but the preliminary results that I reported on
the original proposal [1] show an overhead of ~ 4.17 uS (with iodepth=1)
when I'm using virtio ring processed in a dedicated iothread:

  - 73 kIOPS using virtio-blk + QEMU iothread + io_uring backend
  - 104 kIOPS using io_uring passthrough

>                                 That is from a high level view the
> beaty of io_uring being passed in the guest is you don't have the
> virtio ring -> io_uring processing, right?

Right, and potentially we can share the io_uring queues directly to the
guest userspace applications, cutting down the cost of Linux block
layer in the guest.

Thanks for your feedback,
Stefano

[1] https://lore.kernel.org/io-uring/20200609142406.upuwpfmgqjeji4lc@steredhat/


  reply	other threads:[~2020-07-10 16:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-10 14:19 [PATCH RFC 0/3] io_uring: add restrictions to support untrusted applications and guests Stefano Garzarella
2020-07-10 14:19 ` [PATCH RFC 1/3] io_uring: use an enumeration for io_uring_register(2) opcodes Stefano Garzarella
2020-07-10 14:19 ` [PATCH RFC 2/3] io_uring: add IOURING_REGISTER_RESTRICTIONS opcode Stefano Garzarella
2020-07-10 17:52   ` Jens Axboe
2020-07-13  8:07     ` Stefano Garzarella
2020-07-10 14:19 ` [PATCH RFC 3/3] io_uring: allow disabling rings during the creation Stefano Garzarella
2020-07-10 15:33 ` [PATCH RFC 0/3] io_uring: add restrictions to support untrusted applications and guests Konrad Rzeszutek Wilk
2020-07-10 16:20   ` Stefano Garzarella [this message]
2020-07-13  9:24     ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200710162017.qdu34ermtxh3rfgl@steredhat \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    [email protected] \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox