From ab52cb3110324b6f9a1f7afac8014857b7b38eb4 Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Tue, 30 Sep 2008 12:30:18 +0000 Subject: [PATCH] Fixed freeing transmit socket buffers. --- devices/e100-2.6.20-ethercat.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/devices/e100-2.6.20-ethercat.c b/devices/e100-2.6.20-ethercat.c index 3dcb8489..c4195232 100644 --- a/devices/e100-2.6.20-ethercat.c +++ b/devices/e100-2.6.20-ethercat.c @@ -1748,10 +1748,9 @@ static int e100_tx_clean(struct nic *nic) le32_to_cpu(cb->u.tcb.tbd.buf_addr), le16_to_cpu(cb->u.tcb.tbd.size), PCI_DMA_TODEVICE); - if (!nic->ecdev) { - dev_kfree_skb_any(cb->skb); - cb->skb = NULL; - } + if (!nic->ecdev) + dev_kfree_skb_any(cb->skb); + cb->skb = NULL; tx_cleaned = 1; } cb->status = 0; @@ -1779,7 +1778,8 @@ static void e100_clean_cbs(struct nic *nic) le32_to_cpu(cb->u.tcb.tbd.buf_addr), le16_to_cpu(cb->u.tcb.tbd.size), PCI_DMA_TODEVICE); - dev_kfree_skb(cb->skb); + if (!nic->ecdev) + dev_kfree_skb(cb->skb); } nic->cb_to_clean = nic->cb_to_clean->next; nic->cbs_avail++;