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.
> 
> >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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to