Zero-copy receive from socket into bio

From: Andreas Grünbacher <hidden>
Date: 2012-05-08 11:02:46

Dave and all,

I'm looking into supporting zero-copy receive in drbd again. It's not
clear to me
how to best get the network drivers to receive packets into page
aligned buffers.

In this particular case, the hardware is using the bnx2 and be2net 1Gbps and
10Gbps drivers.

Can you please offer some guidance?

I've already asked about this a year ago, unfortunately with no feedback:

    http://lwn.net/Articles/438406/

Quoting from that posting:
The basic idea is this: drbd transmits bios via sockets.  An ideal sender
sends the packet header and data in separate packets, and the network driver
[supports RX_COPYBREAK and] receives them into separate socket buffers.
The socket buffers end up aligned properly, and we add them to bios and
submit them, no copying required.
Thanks a lot,
Andreas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help