From: Patrick McHardy <kaber@trash.net>
To: Jan Engelhardt <jengelh@computergmbh.de>
Cc: "Ilpo Järvinen" <ilpo.jarvinen@helsinki.fi>,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
"David Miller" <davem@davemloft.net>,
"Arnaldo Carvalho de Melo" <acme@redhat.com>
Subject: Re: [RFC PATCH 3/8] [NET]: uninline dev_alloc_skb, de-bloats a lot
Date: Wed, 20 Feb 2008 17:27:39 +0100 [thread overview]
Message-ID: <47BC54FB.2050508@trash.net> (raw)
In-Reply-To: <Pine.LNX.4.64.0802201651580.26109@fbirervta.pbzchgretzou.qr>
Jan Engelhardt wrote:
> On Feb 20 2008 15:47, Ilpo Järvinen wrote:
>> -23668 392 funcs, 104 +, 23772 -, diff: -23668 --- dev_alloc_skb
>>
>> -static inline struct sk_buff *dev_alloc_skb(unsigned int length)
>> -{
>> - return __dev_alloc_skb(length, GFP_ATOMIC);
>> -}
>> +extern struct sk_buff *dev_alloc_skb(unsigned int length);
>
> Striking. How can this even happen? A callsite which calls
>
> dev_alloc_skb(n)
>
> is just equivalent to
>
> __dev_alloc_skb(n, GFP_ATOMIC);
>
> which means there's like 4 (or 8 if it's long) bytes more on the
> stack. For a worst case, count in another 8 bytes for push and pop or mov on
> the stack. But that still does not add up to 23 kb.
__dev_alloc_skb() is also an inline function which performs
some extra work. Which raises the question - if dev_alloc_skb()
is uninlined, shouldn't __dev_alloc_skb() be uninline as well?
next prev parent reply other threads:[~2008-02-20 16:38 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-20 13:47 [RFC PATCH 0/8]: uninline & uninline Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 1/8] [NET]: uninline skb_put, de-bloats a lot Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 2/8] [NET]: uninline skb_pull, " Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 3/8] [NET]: uninline dev_alloc_skb, " Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 4/8] [NET]: uninline skb_push, " Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 5/8] [NET]: uninline dst_release Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 6/8] [NET]: uninline skb_trim, de-bloats Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 7/8] [SCTP]: uninline sctp_add_cmd_sf Ilpo Järvinen
2008-02-20 13:47 ` [RFC PATCH 8/8] Jhash in too big for inlining, move under lib/ Ilpo Järvinen
2008-02-23 8:02 ` Andrew Morton
2008-02-23 10:05 ` Ilpo Järvinen
2008-02-23 18:21 ` Andrew Morton
2008-02-23 13:06 ` Andi Kleen
2008-02-20 22:16 ` [RFC PATCH 7/8] [SCTP]: uninline sctp_add_cmd_sf Vlad Yasevich
2008-02-20 22:34 ` Ilpo Järvinen
2008-02-21 15:27 ` Vlad Yasevich
2008-02-20 16:19 ` [RFC PATCH 3/8] [NET]: uninline dev_alloc_skb, de-bloats a lot Jan Engelhardt
2008-02-20 16:27 ` Patrick McHardy [this message]
2008-02-20 16:30 ` Jan Engelhardt
2008-02-20 22:18 ` Ilpo Järvinen
2008-03-12 15:27 ` Ilpo Järvinen
2008-02-20 13:54 ` [RFC PATCH 1/8] [NET]: uninline skb_put, " Patrick McHardy
2008-02-20 13:57 ` Eric Dumazet
2008-02-23 8:02 ` [RFC PATCH 0/8]: uninline & uninline Andrew Morton
2008-02-23 10:11 ` Ilpo Järvinen
2008-02-23 13:15 ` Andi Kleen
2008-02-23 18:06 ` Ilpo Järvinen
2008-02-23 18:55 ` Andrew Morton
2008-02-23 19:58 ` Hua Zhong
2008-02-23 21:02 ` Andi Kleen
2008-02-27 19:08 ` profile-likely patch (was " Valdis.Kletnieks
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=47BC54FB.2050508@trash.net \
--to=kaber@trash.net \
--cc=acme@redhat.com \
--cc=davem@davemloft.net \
--cc=ilpo.jarvinen@helsinki.fi \
--cc=jengelh@computergmbh.de \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.