netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] First pass of cleanups for pskb_expand_head
@ 2012-05-05  0:26 Alexander Duyck
  2012-05-05  0:26 ` [PATCH 1/3] skb: Drop bad code from pskb_expand_head Alexander Duyck
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Alexander Duyck @ 2012-05-05  0:26 UTC (permalink / raw)
  To: netdev; +Cc: davem, eric.dumazet, jeffrey.t.kirsher

After looking over the tcp coalesing and GRO code a couple of days ago it
occurred to me that pskb_expand_head has a few flaws.  A few of which are
addressed in this patch series.

This change set takes care of some of the minor cleanup items.  One thing
that caught my eye is the fact the memmove code in the fast-path is likely
no longer doing any thing but burning cycles on a call that doesn't
actually move any memory.

The other change is a follow on to that to drop the fastpath variable which
really just means if the skb is cloned or not.

The final change in this set just adds an inline for getting the end offset
since there were multiple places where we were computing end - head to get
the offset and if we are storing it as an offset it makes more sense to
just pull the actual value.

There are a few more items that I will try to get to next week.  The big one
is the fact that pskb_expand_head can mess up the truesize since it can
allocate a new head but never updates the truesize.  I plan on adding a helper
function for the cases where we are just using it unshare the head so I can
identify the places where we are actually modifying the size.

---

Alexander Duyck (3):
      skb: Add inline helper for getting the skb end offset from head
      skb: Drop "fastpath" variable for skb_cloned check in pskb_expand_head
      skb: Drop bad code from pskb_expand_head


 drivers/atm/ambassador.c             |    2 +
 drivers/atm/idt77252.c               |    2 +
 drivers/net/wimax/i2400m/usb-rx.c    |    2 +
 drivers/staging/octeon/ethernet-tx.c |    2 +
 include/linux/skbuff.h               |   12 ++++++++-
 net/core/skbuff.c                    |   46 ++++++++++------------------------
 6 files changed, 29 insertions(+), 37 deletions(-)

-- 
Thanks,

Alex

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2012-05-06 17:13 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-05  0:26 [PATCH 0/3] First pass of cleanups for pskb_expand_head Alexander Duyck
2012-05-05  0:26 ` [PATCH 1/3] skb: Drop bad code from pskb_expand_head Alexander Duyck
2012-05-05  5:35   ` Eric Dumazet
2012-05-06 17:13     ` David Miller
2012-05-05  0:26 ` [PATCH 2/3] skb: Drop "fastpath" variable for skb_cloned check in pskb_expand_head Alexander Duyck
2012-05-05  5:37   ` Eric Dumazet
2012-05-06 17:13     ` David Miller
2012-05-05  0:26 ` [PATCH 3/3] skb: Add inline helper for getting the skb end offset from head Alexander Duyck
2012-05-05  5:39   ` Eric Dumazet
2012-05-06 17:13     ` David Miller
2012-05-05  5:44 ` [PATCH 0/3] First pass of cleanups for pskb_expand_head Eric Dumazet
2012-05-05  6:51   ` Alexander Duyck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).