skb->len, PCI_DMA_TODEVICE); dev_kfree_skb(skb); 
cp->tx_skb[i].len, PCI_DMA_TODEVICE); if (le32_to_cpu(cp->tx_ring[i].opts1) & LastFrag) dev_kfree_skb(skb); 
static void cp_clean_rings (struct cp_private *cp){	unsigned i;	memset(cp->rx_ring, 0, sizeof(struct cp_desc) * CP_RX_RING_SIZE);	memset(cp->tx_ring, 0, sizeof(struct cp_desc) * CP_TX_RING_SIZE);	for (i = 0; i < CP_RX_RING_SIZE; i++) {		if (cp->rx_skb[i].skb) {			pci_unmap_single(cp->pdev, cp->rx_skb[i].mapping,					 cp->rx_buf_sz, PCI_DMA_FROMDEVICE);			dev_kfree_skb(cp->rx_skb[i].skb);		}	}	for (i = 0; i < CP_TX_RING_SIZE; i++) {		if (cp->tx_skb[i].skb) {			struct sk_buff *skb = cp->tx_skb[i].skb;			pci_unmap_single(cp->pdev, cp->tx_skb[i].mapping,					 skb->len, PCI_DMA_TODEVICE);			dev_kfree_skb(skb);			cp->net_stats.tx_dropped++;		}	}	memset(&cp->rx_skb, 0, sizeof(struct ring_info) * CP_RX_RING_SIZE);	memset(&cp->tx_skb, 0, sizeof(struct ring_info) * CP_TX_RING_SIZE);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/5734418d4f3420352eae38c8fcec699bf09874c1/8139cp.c/buggy/drivers/net/8139cp.c