On Mon, Feb 08, 2021 at 12:14:49PM -0500, Konrad Rzeszutek Wilk wrote: > > ring buffer or whatever because you know I/O will be copied anyway > > and none of all the hard work higher layers do to make the I/O suitable > > for a normal device apply. > > I lost you here. Sorry, are you saying have a simple ring protocol > (like NVME has), where the ring entries (SG or DMA phys) are statically > allocated and whenever NVME driver gets data from user-space it > would copy it in there? Yes. Basically extend the virtio or NVMe ring/queue concept to not just cover commands and completions, but also the data transfers.