From: Stephen Hemminger <shemminger@vyatta•com>
To: Alexander Duyck <alexander.h.duyck@intel•com>
Cc: Jeff Kirsher <jeffrey.t.kirsher@intel•com>,
Bruce Allan <bruce.w.allan@intel•com>,
Carolyn Wyborny <carolyn.wyborny@intel•com>,
Don Skidmore <donald.c.skidmore@intel•com>,
Greg Rose <gregory.v.rose@intel•com>,
Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel•com>,
"David S. Miller" <davem@davemloft•net>,
e1000-devel@lists•sourceforge.net, netdev@vger•kernel.org
Subject: [PATCH net-next] ixgbe: simplify padding and length checks (v2)
Date: Mon, 18 Jun 2012 16:31:11 -0700 [thread overview]
Message-ID: <20120618163111.4e46493b@nehalam.linuxnetplumber.net> (raw)
In-Reply-To: <4FDF9B37.3030804@intel.com>
The check for length <= 0 is bogus because length is unsigned, and network
stack never sends zero length packets (unless it is totally broken).
The check for really small packets can be optimized (using unlikely)
and calling skb_pad directly.
Signed-off-by: Stephen Hemminger <shemminger@vyatta•com>
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c 2012-06-18 10:53:09.130376800 -0700
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c 2012-06-18 15:20:44.364951004 -0700
@@ -6380,17 +6380,12 @@ static netdev_tx_t ixgbe_xmit_frame(stru
struct ixgbe_adapter *adapter = netdev_priv(netdev);
struct ixgbe_ring *tx_ring;
- if (skb->len <= 0) {
- dev_kfree_skb_any(skb);
- return NETDEV_TX_OK;
- }
-
/*
* The minimum packet size for olinfo paylen is 17 so pad the skb
* in order to meet this minimum size requirement.
*/
- if (skb->len < 17) {
- if (skb_padto(skb, 17))
+ if (unlikely(skb->len < 17)) {
+ if (skb_pad(skb, 17 - skb->len))
return NETDEV_TX_OK;
skb->len = 17;
}
next prev parent reply other threads:[~2012-06-18 23:31 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-18 17:58 [PATCH 1/2 net-next] ixgbe: use skb_padto Stephen Hemminger
2012-06-18 18:55 ` [PATCH 2/2 net-next] ixgbe: remove xmit length check Stephen Hemminger
2012-06-18 20:39 ` Jeff Kirsher
2012-06-18 20:38 ` [PATCH 1/2 net-next] ixgbe: use skb_padto Jeff Kirsher
2012-06-18 21:18 ` Alexander Duyck
2012-06-18 23:31 ` Stephen Hemminger [this message]
2012-06-19 23:30 ` [PATCH net-next] ixgbe: simplify padding and length checks (v2) Jeff Kirsher
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=20120618163111.4e46493b@nehalam.linuxnetplumber.net \
--to=shemminger@vyatta$(echo .)com \
--cc=alexander.h.duyck@intel$(echo .)com \
--cc=bruce.w.allan@intel$(echo .)com \
--cc=carolyn.wyborny@intel$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=donald.c.skidmore@intel$(echo .)com \
--cc=e1000-devel@lists$(echo .)sourceforge.net \
--cc=gregory.v.rose@intel$(echo .)com \
--cc=jeffrey.t.kirsher@intel$(echo .)com \
--cc=netdev@vger$(echo .)kernel.org \
--cc=peter.p.waskiewicz.jr@intel$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox