summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorDivy Le Ray <divy@chelsio.com>2007-11-16 02:06:32 +0300
committerDavid S. Miller <davem@davemloft.net>2007-11-16 02:06:32 +0300
commit7de6af0f23b25df8da9719ecae1916b669d0b03d (patch)
tree6e8574a662e39373c85f8fb22532ce38239dcad1 /drivers
parent6452a5fde03717c55dbb8b6b0b5bfab510ad38d5 (diff)
downloadlinux-7de6af0f23b25df8da9719ecae1916b669d0b03d.tar.xz
[CHELSIO]: Fix skb->dev setting.
eth_type_trans() now sets skb->dev. Access skb->def after it gets set. Signed-off-by: Divy Le Ray <divy@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/chelsio/sge.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/chelsio/sge.c b/drivers/net/chelsio/sge.c
index ffa7e649a6ef..443666292a5c 100644
--- a/drivers/net/chelsio/sge.c
+++ b/drivers/net/chelsio/sge.c
@@ -1379,11 +1379,11 @@ static void sge_rx(struct sge *sge, struct freelQ *fl, unsigned int len)
}
__skb_pull(skb, sizeof(*p));
- skb->dev->last_rx = jiffies;
st = per_cpu_ptr(sge->port_stats[p->iff], smp_processor_id());
st->rx_packets++;
skb->protocol = eth_type_trans(skb, adapter->port[p->iff].dev);
+ skb->dev->last_rx = jiffies;
if ((adapter->flags & RX_CSUM_ENABLED) && p->csum == 0xffff &&
skb->protocol == htons(ETH_P_IP) &&
(skb->data[9] == IPPROTO_TCP || skb->data[9] == IPPROTO_UDP)) {