Thread (1 message) 1 message, 1 author, 2015-06-08

Re: [PATCH 0/5] Indirect memory registration feature

From: Christoph Hellwig <hidden>
Date: 2015-06-08 13:51:51

On Mon, Jun 08, 2015 at 04:39:23PM +0300, Sagi Grimberg wrote:
I have learned about QUEUE_FLAG_SG_GAPS from your recent comments on
the list. Won't setting this flag interfere with bio merges?
It would if any in-kernel consumer would actually generate such SG
lists.  But none does - the only source is vectored SG_IO support.
Ideally
I wouldn't want to restrict merges if my device supports this feature.
quoted
Right now drivers tat set these would always fail SG_IO ioctls using
iovecs, but that can be fixed much more easily by doing high level
bounce buffering compared to these horrible workarounds deep down in the
stack.
My tests have shown significant cpu savings with this against SW bounce
buffering, especially for large transfers. I've seen applications that
a significant part of their IO workload consists of this type of memory
layout.

I must say that I've always considered SW bounce buffering as a
work-around for an RDMA driver.
bounce buffering is always a workaround, and offloading it to silicone
just makes it a worse hack.  So please fix it in the proper layers
first, and if you really care about the vectored SG_IO case use
your indirect registrations just for that.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help