On Thursday 14. March 2002 03:19, Ephi Dror wrote: > Dear Trond, > > Thank you for your help. > > When I was reading > http://marc.merlins.org/linux/linux.conf.au_2001/Day3/ZeroCopyNet.html > > I had the feeling that NFS client side was completed. It says: > "... Now that the NFS client side has been fixed, the server side > (knfsd) still needs to be worked on. ....". This is why I thought it > should be somewhere. I assume that passage was referring to the UDP receive code and delayed fragmentation. For the particular case of NFS, the kernel does a copy (+checksum if hardware checksumming has not been done) directly from the fragmented skb. > In regards to the receiving side and NFS header splitting, you right > that to do it for each possible RPC command will be hard, however the > idea is just to do it for the RPC write request and RPC read respond and > I hope it should not be that hard. No idea. As I said, I'm not really aware of the type of hardware to which you refer, and how it would work. Do you have a reference? > I am interested to know if there is an interest in the LINUX community > to build support for such stuff too. I have no immediate plans to code for this sort of thing, but perhaps others are interested and are willing to contribute code? > 1. How is zerocopy sock->ops->sendpage operation related to Ethernet > cards that support fragments? I understand that scatter/gather > capabilities let you avoid copies in general in the outbound direction. As far as I know, the scatter/gather DMA is only needed in order to splits up each page into correctly-sized fragments. Without that capability, you need linear buffers of the form header+data i.e. you need the extra copy. Cheers, Trond -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/