···822822 break; /* Bad news! */823823 skb->dev = dev; /* Mark as being used by this device. */824824 skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */825825- vp->rx_ring[i].addr = isa_virt_to_bus(skb->tail);825825+ vp->rx_ring[i].addr = isa_virt_to_bus(skb->data);826826 }827827 vp->rx_ring[i - 1].next = isa_virt_to_bus(&vp->rx_ring[0]); /* Wrap the ring. */828828 outl(isa_virt_to_bus(&vp->rx_ring[0]), ioaddr + UpListPtr);···14061406 break; /* Bad news! */14071407 skb->dev = dev; /* Mark as being used by this device. */14081408 skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */14091409- vp->rx_ring[entry].addr = isa_virt_to_bus(skb->tail);14091409+ vp->rx_ring[entry].addr = isa_virt_to_bus(skb->data);14101410 vp->rx_skbuff[entry] = skb;14111411 }14121412 vp->rx_ring[entry].status = 0; /* Clear complete bit. */
+3-3
drivers/net/3c59x.c
···18021802 break; /* Bad news! */18031803 skb->dev = dev; /* Mark as being used by this device. */18041804 skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */18051805- vp->rx_ring[i].addr = cpu_to_le32(pci_map_single(VORTEX_PCI(vp), skb->tail, PKT_BUF_SZ, PCI_DMA_FROMDEVICE));18051805+ vp->rx_ring[i].addr = cpu_to_le32(pci_map_single(VORTEX_PCI(vp), skb->data, PKT_BUF_SZ, PCI_DMA_FROMDEVICE));18061806 }18071807 if (i != RX_RING_SIZE) {18081808 int j;···26322632 pci_dma_sync_single_for_cpu(VORTEX_PCI(vp), dma, PKT_BUF_SZ, PCI_DMA_FROMDEVICE);26332633 /* 'skb_put()' points to the start of sk_buff data area. */26342634 memcpy(skb_put(skb, pkt_len),26352635- vp->rx_skbuff[entry]->tail,26352635+ vp->rx_skbuff[entry]->data,26362636 pkt_len);26372637 pci_dma_sync_single_for_device(VORTEX_PCI(vp), dma, PKT_BUF_SZ, PCI_DMA_FROMDEVICE);26382638 vp->rx_copy++;···26782678 }26792679 skb->dev = dev; /* Mark as being used by this device. */26802680 skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */26812681- vp->rx_ring[entry].addr = cpu_to_le32(pci_map_single(VORTEX_PCI(vp), skb->tail, PKT_BUF_SZ, PCI_DMA_FROMDEVICE));26812681+ vp->rx_ring[entry].addr = cpu_to_le32(pci_map_single(VORTEX_PCI(vp), skb->data, PKT_BUF_SZ, PCI_DMA_FROMDEVICE));26822682 vp->rx_skbuff[entry] = skb;26832683 }26842684 vp->rx_ring[entry].status = 0; /* Clear complete bit. */
···12861286 np->rx_info[i].skb = skb;12871287 if (skb == NULL)12881288 break;12891289- np->rx_info[i].mapping = pci_map_single(np->pci_dev, skb->tail, np->rx_buf_sz, PCI_DMA_FROMDEVICE);12891289+ np->rx_info[i].mapping = pci_map_single(np->pci_dev, skb->data, np->rx_buf_sz, PCI_DMA_FROMDEVICE);12901290 skb->dev = dev; /* Mark as being used by this device. */12911291 /* Grrr, we cannot offset to correctly align the IP header. */12921292 np->rx_ring[i].rxaddr = cpu_to_dma(np->rx_info[i].mapping | RxDescValid);···15721572 pci_dma_sync_single_for_cpu(np->pci_dev,15731573 np->rx_info[entry].mapping,15741574 pkt_len, PCI_DMA_FROMDEVICE);15751575- eth_copy_and_sum(skb, np->rx_info[entry].skb->tail, pkt_len, 0);15751575+ eth_copy_and_sum(skb, np->rx_info[entry].skb->data, pkt_len, 0);15761576 pci_dma_sync_single_for_device(np->pci_dev,15771577 np->rx_info[entry].mapping,15781578 pkt_len, PCI_DMA_FROMDEVICE);···16961696 if (skb == NULL)16971697 break; /* Better luck next round. */16981698 np->rx_info[entry].mapping =16991699- pci_map_single(np->pci_dev, skb->tail, np->rx_buf_sz, PCI_DMA_FROMDEVICE);16991699+ pci_map_single(np->pci_dev, skb->data, np->rx_buf_sz, PCI_DMA_FROMDEVICE);17001700 skb->dev = dev; /* Mark as being used by this device. */17011701 np->rx_ring[entry].rxaddr =17021702 cpu_to_dma(np->rx_info[entry].mapping | RxDescValid);
+3-3
drivers/net/sundance.c
···10281028 skb->dev = dev; /* Mark as being used by this device. */10291029 skb_reserve(skb, 2); /* 16 byte align the IP header. */10301030 np->rx_ring[i].frag[0].addr = cpu_to_le32(10311031- pci_map_single(np->pci_dev, skb->tail, np->rx_buf_sz,10311031+ pci_map_single(np->pci_dev, skb->data, np->rx_buf_sz,10321032 PCI_DMA_FROMDEVICE));10331033 np->rx_ring[i].frag[0].length = cpu_to_le32(np->rx_buf_sz | LastFrag);10341034 }···13411341 np->rx_buf_sz,13421342 PCI_DMA_FROMDEVICE);1343134313441344- eth_copy_and_sum(skb, np->rx_skbuff[entry]->tail, pkt_len, 0);13441344+ eth_copy_and_sum(skb, np->rx_skbuff[entry]->data, pkt_len, 0);13451345 pci_dma_sync_single_for_device(np->pci_dev,13461346 desc->frag[0].addr,13471347 np->rx_buf_sz,···14001400 skb->dev = dev; /* Mark as being used by this device. */14011401 skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */14021402 np->rx_ring[entry].frag[0].addr = cpu_to_le32(14031403- pci_map_single(np->pci_dev, skb->tail,14031403+ pci_map_single(np->pci_dev, skb->data,14041404 np->rx_buf_sz, PCI_DMA_FROMDEVICE));14051405 }14061406 /* Perhaps we need not reset this field. */
···625625 tp->rx_buffers[i].skb = skb;626626 if (skb == NULL)627627 break;628628- mapping = pci_map_single(tp->pdev, skb->tail,628628+ mapping = pci_map_single(tp->pdev, skb->data,629629 PKT_BUF_SZ, PCI_DMA_FROMDEVICE);630630 tp->rx_buffers[i].mapping = mapping;631631 skb->dev = dev; /* Mark as being used by this device. */
+3-3
drivers/net/tulip/winbond-840.c
···849849 if (skb == NULL)850850 break;851851 skb->dev = dev; /* Mark as being used by this device. */852852- np->rx_addr[i] = pci_map_single(np->pci_dev,skb->tail,852852+ np->rx_addr[i] = pci_map_single(np->pci_dev,skb->data,853853 skb->len,PCI_DMA_FROMDEVICE);854854855855 np->rx_ring[i].buffer1 = np->rx_addr[i];···12691269 pci_dma_sync_single_for_cpu(np->pci_dev,np->rx_addr[entry],12701270 np->rx_skbuff[entry]->len,12711271 PCI_DMA_FROMDEVICE);12721272- eth_copy_and_sum(skb, np->rx_skbuff[entry]->tail, pkt_len, 0);12721272+ eth_copy_and_sum(skb, np->rx_skbuff[entry]->data, pkt_len, 0);12731273 skb_put(skb, pkt_len);12741274 pci_dma_sync_single_for_device(np->pci_dev,np->rx_addr[entry],12751275 np->rx_skbuff[entry]->len,···13151315 break; /* Better luck next round. */13161316 skb->dev = dev; /* Mark as being used by this device. */13171317 np->rx_addr[entry] = pci_map_single(np->pci_dev,13181318- skb->tail,13181318+ skb->data,13191319 skb->len, PCI_DMA_FROMDEVICE);13201320 np->rx_ring[entry].buffer1 = np->rx_addr[entry];13211321 }
+2-2
drivers/net/tulip/xircom_tulip_cb.c
···899899 break;900900 skb->dev = dev; /* Mark as being used by this device. */901901 tp->rx_ring[i].status = Rx0DescOwned; /* Owned by Xircom chip */902902- tp->rx_ring[i].buffer1 = virt_to_bus(skb->tail);902902+ tp->rx_ring[i].buffer1 = virt_to_bus(skb->data);903903 }904904 tp->dirty_rx = (unsigned int)(i - RX_RING_SIZE);905905···12911291 if (skb == NULL)12921292 break;12931293 skb->dev = dev; /* Mark as being used by this device. */12941294- tp->rx_ring[entry].buffer1 = virt_to_bus(skb->tail);12941294+ tp->rx_ring[entry].buffer1 = virt_to_bus(skb->data);12951295 work_done++;12961296 }12971297 tp->rx_ring[entry].status = Rx0DescOwned;
+2-2
drivers/net/typhoon.c
···16611661#endif1662166216631663 skb->dev = tp->dev;16641664- dma_addr = pci_map_single(tp->pdev, skb->tail,16641664+ dma_addr = pci_map_single(tp->pdev, skb->data,16651665 PKT_BUF_SZ, PCI_DMA_FROMDEVICE);1666166616671667 /* Since no card does 64 bit DAC, the high bits will never···17211721 pci_dma_sync_single_for_cpu(tp->pdev, dma_addr,17221722 PKT_BUF_SZ,17231723 PCI_DMA_FROMDEVICE);17241724- eth_copy_and_sum(new_skb, skb->tail, pkt_len, 0);17241724+ eth_copy_and_sum(new_skb, skb->data, pkt_len, 0);17251725 pci_dma_sync_single_for_device(tp->pdev, dma_addr,17261726 PKT_BUF_SZ,17271727 PCI_DMA_FROMDEVICE);
+3-3
drivers/net/via-rhine.c
···990990 skb->dev = dev; /* Mark as being used by this device. */991991992992 rp->rx_skbuff_dma[i] =993993- pci_map_single(rp->pdev, skb->tail, rp->rx_buf_sz,993993+ pci_map_single(rp->pdev, skb->data, rp->rx_buf_sz,994994 PCI_DMA_FROMDEVICE);995995996996 rp->rx_ring[i].addr = cpu_to_le32(rp->rx_skbuff_dma[i]);···15181518 PCI_DMA_FROMDEVICE);1519151915201520 eth_copy_and_sum(skb,15211521- rp->rx_skbuff[entry]->tail,15211521+ rp->rx_skbuff[entry]->data,15221522 pkt_len, 0);15231523 skb_put(skb, pkt_len);15241524 pci_dma_sync_single_for_device(rp->pdev,···15611561 break; /* Better luck next round. */15621562 skb->dev = dev; /* Mark as being used by this device. */15631563 rp->rx_skbuff_dma[entry] =15641564- pci_map_single(rp->pdev, skb->tail,15641564+ pci_map_single(rp->pdev, skb->data,15651565 rp->rx_buf_sz,15661566 PCI_DMA_FROMDEVICE);15671567 rp->rx_ring[entry].addr = cpu_to_le32(rp->rx_skbuff_dma[entry]);
+3-3
drivers/net/via-velocity.c
···13351335 if (vptr->flags & VELOCITY_FLAGS_IP_ALIGN)13361336 skb_reserve(new_skb, 2);1337133713381338- memcpy(new_skb->data, rx_skb[0]->tail, pkt_size);13381338+ memcpy(new_skb->data, rx_skb[0]->data, pkt_size);13391339 *rx_skb = new_skb;13401340 ret = 0;13411341 }···14561456 * Do the gymnastics to get the buffer head for data at14571457 * 64byte alignment.14581458 */14591459- skb_reserve(rd_info->skb, (unsigned long) rd_info->skb->tail & 63);14591459+ skb_reserve(rd_info->skb, (unsigned long) rd_info->skb->data & 63);14601460 rd_info->skb->dev = vptr->dev;14611461- rd_info->skb_dma = pci_map_single(vptr->pdev, rd_info->skb->tail, vptr->rx_buf_sz, PCI_DMA_FROMDEVICE);14611461+ rd_info->skb_dma = pci_map_single(vptr->pdev, rd_info->skb->data, vptr->rx_buf_sz, PCI_DMA_FROMDEVICE);1462146214631463 /*14641464 * Fill in the descriptor to match
···9292 * Set the source hardware address. 9393 */94949595- if(saddr)9696- memcpy(eth->h_source,saddr,dev->addr_len);9797- else9898- memcpy(eth->h_source,dev->dev_addr,dev->addr_len);9595+ if(!saddr)9696+ saddr = dev->dev_addr;9797+ memcpy(eth->h_source,saddr,dev->addr_len);999810099 /*101100 * Anyway, the loopback-device should never use this function...
···283283{284284 struct net_device *dev = skb->dev;285285 struct iphdr *iph = skb->nh.iph;286286+ int err;286287287288 /*288289 * Initialise the virtual path cache for the packet. It describes289290 * how the packet travels inside Linux networking.290291 */ 291292 if (skb->dst == NULL) {292292- if (ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))293293+ if ((err = ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))) {294294+ if (err == -EHOSTUNREACH)295295+ IP_INC_STATS_BH(IPSTATS_MIB_INADDRERRORS);293296 goto drop; 297297+ }294298 }295299296300#ifdef CONFIG_NET_CLS_ROUTE
+7-1
net/ipv4/ip_output.c
···188188 skb = skb2;189189 }190190191191- nf_reset(skb);191191+#ifdef CONFIG_BRIDGE_NETFILTER192192+ /* bridge-netfilter defers calling some IP hooks to the bridge layer193193+ * and still needs the conntrack reference.194194+ */195195+ if (skb->nf_bridge == NULL)196196+#endif197197+ nf_reset(skb);192198193199 if (hh) {194200 int hh_alen;