Subject: Re: [PKT_SCHED]: Add stateless NAT

From: Patrick McHardy <[email-masked]>
Date: Sat, 29 Sep 2007 17:21:23 +0200

Herbert Xu wrote:
> Herbert Xu <[email-masked]> wrote:
> 
>>On Fri, Sep 28, 2007 at 06:55:32PM +0200, Patrick McHardy wrote:
>>
>>>Looking at ip_input.o as example (everything without forced inlining):
>>>
>>>   text    data     bss     dec     hex filename
>>>   2076       8       0    2084     824 net/ipv4/ip_input.o
>>>   3483       8       0    3491     da3 net/ipv4/ip_input.o
>>
>>If it's so big perhaps it should be inlined? It'll be a tail
>>call anyway.
> 
> 
> s/should be/shouldn't be/

Unfortunately gcc doesn't perform tail call optimization when the
address of a parameter or local variable is passed to an extern
function before the tail call, which NF_HOOK does for the skb.