Re: + net-uninline-skb_put.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 06 Nov 2006 14:42:33 -0800 (PST)
David Miller <[email protected]> wrote:

> From: [email protected]
> Date: Fri, 03 Nov 2006 14:18:29 -0800
> 
> > Subject: net: uninline skb_put()
> > From: Andrew Morton <[email protected]>
> > 
> > It has 34 callsites for a total of 2650 bytes.
> > 
> > Cc: Arnaldo Carvalho de Melo <[email protected]>
> > Signed-off-by: Andrew Morton <[email protected]>
> 
> A more accurate figure would probably be:
> 
> davem@sunset:~/src/GIT/net-2.6$ git grep skb_put | grep -v __skb_put | wc -l
> 1167
> 
> :-)

True.  I'm not sure what .config Arnaldo was using..

> Half of the cost of this interface are the assertions, which while
> useful are obviously over the top for such an oft-used routine in
> packet processing.
> 
> Without the assertion checks it's merely:
> 
> 	unsigned char *tmp = skb->tail;
> 	skb->tail += len;
> 	skb->len  += len;
> 	return tmp;
> 
> And even with 1167 call sites that is definitely something which
> should be inlined.

Yes.

Tricky.  I guess one suitable approach would be to create a standalone
skb-debugging config option.  There's quite a lot of debug stuff in there
which could be made conditional on that option.

But otoh, skb-debugging finds bugs.
-
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/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux