2005-12-06 12:09:32

by kernel coder

[permalink] [raw]
Subject: zero copy

hi,
i'm trying to track the code flow of sendfile system call.Mine
ethernet card doesn't have scatter gather and checksum calculation
features.So stack should be making a copy of data.

Please tell me where in sendfile code flow,check for scatter gather
and cecksum features is made so that stack can decide whether to copy
data from user space or not.

lhrkernelcoder


2005-12-06 12:17:23

by Steven Whitehouse

[permalink] [raw]
Subject: Re: zero copy

Hi,

See sock_no_sendpage() in linux/net/core/sock.c for when network
protocols don't support zerocopy and tcp_sendpage() in
linux/net/ipv4/tcp.c for an example where it is supported. The
NETIF_F_SG and TCP_ZC_CSUM_FLAGS test in the latter function
is probably what you are after?

Steve.

On Tue, Dec 06, 2005 at 04:09:30AM -0800, kernel coder wrote:
> hi,
> i'm trying to track the code flow of sendfile system call.Mine
> ethernet card doesn't have scatter gather and checksum calculation
> features.So stack should be making a copy of data.
>
> Please tell me where in sendfile code flow,check for scatter gather
> and cecksum features is made so that stack can decide whether to copy
> data from user space or not.
>
> lhrkernelcoder
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/