提交 c8fb7948 编写于 作者: A Arnaldo Carvalho de Melo 提交者: David S. Miller

[TR]: Make tr_type_trans set skb->dev

Signed-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 c1a4b86e
...@@ -933,8 +933,6 @@ static void xl_rx(struct net_device *dev) ...@@ -933,8 +933,6 @@ static void xl_rx(struct net_device *dev)
return ; return ;
} }
skb->dev = dev ;
while (xl_priv->rx_ring_tail != temp_ring_loc) { while (xl_priv->rx_ring_tail != temp_ring_loc) {
copy_len = xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfraglen & 0x7FFF ; copy_len = xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfraglen & 0x7FFF ;
frame_length -= copy_len ; frame_length -= copy_len ;
...@@ -967,8 +965,6 @@ static void xl_rx(struct net_device *dev) ...@@ -967,8 +965,6 @@ static void xl_rx(struct net_device *dev)
return ; return ;
} }
skb->dev = dev ;
skb2 = xl_priv->rx_ring_skb[xl_priv->rx_ring_tail] ; skb2 = xl_priv->rx_ring_skb[xl_priv->rx_ring_tail] ;
pci_unmap_single(xl_priv->pdev, xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfragaddr, xl_priv->pkt_buf_sz,PCI_DMA_FROMDEVICE) ; pci_unmap_single(xl_priv->pdev, xl_priv->xl_rx_ring[xl_priv->rx_ring_tail].upfragaddr, xl_priv->pkt_buf_sz,PCI_DMA_FROMDEVICE) ;
skb_put(skb2, frame_length) ; skb_put(skb2, frame_length) ;
......
...@@ -1771,7 +1771,6 @@ static void tr_rx(struct net_device *dev) ...@@ -1771,7 +1771,6 @@ static void tr_rx(struct net_device *dev)
/*BMS again, if she comes in with few but leaves with many */ /*BMS again, if she comes in with few but leaves with many */
skb_reserve(skb, sizeof(struct trh_hdr) - lan_hdr_len); skb_reserve(skb, sizeof(struct trh_hdr) - lan_hdr_len);
skb_put(skb, length); skb_put(skb, length);
skb->dev = dev;
data = skb->data; data = skb->data;
rbuffer_len = ntohs(readw(rbuf + offsetof(struct rec_buf, buf_len))); rbuffer_len = ntohs(readw(rbuf + offsetof(struct rec_buf, buf_len)));
rbufdata = rbuf + offsetof(struct rec_buf, data); rbufdata = rbuf + offsetof(struct rec_buf, data);
......
...@@ -944,8 +944,6 @@ static void streamer_rx(struct net_device *dev) ...@@ -944,8 +944,6 @@ static void streamer_rx(struct net_device *dev)
printk(KERN_WARNING "%s: Not enough memory to copy packet to upper layers. \n", dev->name); printk(KERN_WARNING "%s: Not enough memory to copy packet to upper layers. \n", dev->name);
streamer_priv->streamer_stats.rx_dropped++; streamer_priv->streamer_stats.rx_dropped++;
} else { /* we allocated an skb OK */ } else { /* we allocated an skb OK */
skb->dev = dev;
if (buffer_cnt == 1) { if (buffer_cnt == 1) {
/* release the DMA mapping */ /* release the DMA mapping */
pci_unmap_single(streamer_priv->pci_dev, pci_unmap_single(streamer_priv->pci_dev,
...@@ -1607,7 +1605,6 @@ static void streamer_arb_cmd(struct net_device *dev) ...@@ -1607,7 +1605,6 @@ static void streamer_arb_cmd(struct net_device *dev)
frame_data, buffer_len); frame_data, buffer_len);
} while (next_ptr && (buff_off = next_ptr)); } while (next_ptr && (buff_off = next_ptr));
mac_frame->dev = dev;
mac_frame->protocol = tr_type_trans(mac_frame, dev); mac_frame->protocol = tr_type_trans(mac_frame, dev);
#if STREAMER_NETWORK_MONITOR #if STREAMER_NETWORK_MONITOR
printk(KERN_WARNING "%s: Received MAC Frame, details: \n", printk(KERN_WARNING "%s: Received MAC Frame, details: \n",
......
...@@ -814,8 +814,6 @@ static void olympic_rx(struct net_device *dev) ...@@ -814,8 +814,6 @@ static void olympic_rx(struct net_device *dev)
olympic_priv->rx_ring_last_received += i ; olympic_priv->rx_ring_last_received += i ;
olympic_priv->rx_ring_last_received &= (OLYMPIC_RX_RING_SIZE -1) ; olympic_priv->rx_ring_last_received &= (OLYMPIC_RX_RING_SIZE -1) ;
} else { } else {
skb->dev = dev ;
/* Optimise based upon number of buffers used. /* Optimise based upon number of buffers used.
If only one buffer is used we can simply swap the buffers around. If only one buffer is used we can simply swap the buffers around.
If more than one then we must use the new buffer and copy the information If more than one then we must use the new buffer and copy the information
...@@ -1440,7 +1438,6 @@ static void olympic_arb_cmd(struct net_device *dev) ...@@ -1440,7 +1438,6 @@ static void olympic_arb_cmd(struct net_device *dev)
next_ptr=readw(buf_ptr+offsetof(struct mac_receive_buffer,next)); next_ptr=readw(buf_ptr+offsetof(struct mac_receive_buffer,next));
} while (next_ptr && (buf_ptr=olympic_priv->olympic_lap + ntohs(next_ptr))); } while (next_ptr && (buf_ptr=olympic_priv->olympic_lap + ntohs(next_ptr)));
mac_frame->dev = dev;
mac_frame->protocol = tr_type_trans(mac_frame, dev); mac_frame->protocol = tr_type_trans(mac_frame, dev);
if (olympic_priv->olympic_network_monitor) { if (olympic_priv->olympic_network_monitor) {
......
...@@ -3896,7 +3896,6 @@ static int smctr_process_rx_packet(MAC_HEADER *rmf, __u16 size, ...@@ -3896,7 +3896,6 @@ static int smctr_process_rx_packet(MAC_HEADER *rmf, __u16 size,
tp->MacStat.rx_bytes += skb->len; tp->MacStat.rx_bytes += skb->len;
/* Kick the packet on up. */ /* Kick the packet on up. */
skb->dev = dev;
skb->protocol = tr_type_trans(skb, dev); skb->protocol = tr_type_trans(skb, dev);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies; dev->last_rx = jiffies;
...@@ -4483,7 +4482,6 @@ static int smctr_rx_frame(struct net_device *dev) ...@@ -4483,7 +4482,6 @@ static int smctr_rx_frame(struct net_device *dev)
tp->MacStat.rx_bytes += skb->len; tp->MacStat.rx_bytes += skb->len;
/* Kick the packet on up. */ /* Kick the packet on up. */
skb->dev = dev;
skb->protocol = tr_type_trans(skb, dev); skb->protocol = tr_type_trans(skb, dev);
netif_rx(skb); netif_rx(skb);
dev->last_rx = jiffies; dev->last_rx = jiffies;
......
...@@ -2168,7 +2168,6 @@ static void tms380tr_rcv_status_irq(struct net_device *dev) ...@@ -2168,7 +2168,6 @@ static void tms380tr_rcv_status_irq(struct net_device *dev)
} }
else else
{ {
skb->dev = dev;
skb_put(skb, tp->MaxPacketSize); skb_put(skb, tp->MaxPacketSize);
rpl->SkbStat = SKB_DATA_COPY; rpl->SkbStat = SKB_DATA_COPY;
ReceiveDataPtr = rpl->MData; ReceiveDataPtr = rpl->MData;
......
...@@ -193,6 +193,7 @@ __be16 tr_type_trans(struct sk_buff *skb, struct net_device *dev) ...@@ -193,6 +193,7 @@ __be16 tr_type_trans(struct sk_buff *skb, struct net_device *dev)
struct trllc *trllc; struct trllc *trllc;
unsigned riflen=0; unsigned riflen=0;
skb->dev = dev;
skb->mac.raw = skb->data; skb->mac.raw = skb->data;
trh = tr_hdr(skb); trh = tr_hdr(skb);
......
...@@ -825,14 +825,16 @@ static void lec_push(struct atm_vcc *vcc, struct sk_buff *skb) ...@@ -825,14 +825,16 @@ static void lec_push(struct atm_vcc *vcc, struct sk_buff *skb)
if (!hlist_empty(&priv->lec_arp_empty_ones)) { if (!hlist_empty(&priv->lec_arp_empty_ones)) {
lec_arp_check_empties(priv, vcc, skb); lec_arp_check_empties(priv, vcc, skb);
} }
skb->dev = dev;
skb_pull(skb, 2); /* skip lec_id */ skb_pull(skb, 2); /* skip lec_id */
#ifdef CONFIG_TR #ifdef CONFIG_TR
if (priv->is_trdev) if (priv->is_trdev)
skb->protocol = tr_type_trans(skb, dev); skb->protocol = tr_type_trans(skb, dev);
else else
#endif #endif
{
skb->dev = dev;
skb->protocol = eth_type_trans(skb, dev); skb->protocol = eth_type_trans(skb, dev);
}
priv->stats.rx_packets++; priv->stats.rx_packets++;
priv->stats.rx_bytes += skb->len; priv->stats.rx_bytes += skb->len;
memset(ATM_SKB(skb), 0, sizeof(struct atm_skb_data)); memset(ATM_SKB(skb), 0, sizeof(struct atm_skb_data));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册