Re: [PATCH] Improve behaviour of Netlink Sockets
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2004-09-24 22:06:51
On Fri, Sep 24, 2004 at 10:58:55AM -0700, David S. Miller wrote:
On Fri, 24 Sep 2004 16:26:04 +1000 Herbert Xu [off-list ref] wrote:quoted
It also means those responders that can calculate the correct size of the reply doesn't need to go through this copy process.This is the crux of the problem, you don't know how big the response will be until you look at the whole object you are returning.
I understand. What I'm saying is that some of these places already know how big it is going to be. See tcp_diag.c for an example. So we shouldn't impose the copy over head on everyone.
This is why I suggested the PAGE_SIZE scratchpad, you build the response fully into there, then you know the exact size SKB you need so you allocate it and copy into it from the scratch pad.
I agree completely. I'm just saying that the current NLM_GOODSIZE skb is the perfect scratch-pad so we don't need a new one. All we need to do is to insert a helper call just before netlink_unicast to copy and trim the packet in the places that need it. Cheers, -- Visit Openswan at http://www.openswan.org/ Email: Herbert Xu ~{PmV>HI~} [off-list ref] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt