patch-2.4.22 linux-2.4.22/drivers/atm/horizon.c
Next file: linux-2.4.22/drivers/atm/idt77252.c
Previous file: linux-2.4.22/drivers/atm/he.h
Back to the patch index
Back to the overall index
- Lines: 23
- Date:
2003-08-25 04:44:41.000000000 -0700
- Orig file:
linux-2.4.21/drivers/atm/horizon.c
- Orig date:
2002-08-02 17:39:43.000000000 -0700
diff -urN linux-2.4.21/drivers/atm/horizon.c linux-2.4.22/drivers/atm/horizon.c
@@ -1765,17 +1765,20 @@
{
unsigned int tx_len = skb->len;
- unsigned int tx_iovcnt = ATM_SKB(skb)->iovcnt;
+ unsigned int tx_iovcnt = skb_shinfo(skb)->nr_frags;
// remember this so we can free it later
dev->tx_skb = skb;
if (tx_iovcnt) {
// scatter gather transfer
dev->tx_regions = tx_iovcnt;
- dev->tx_iovec = (struct iovec *) skb->data;
+ dev->tx_iovec = 0; /* @@@ needs rewritten */
dev->tx_bytes = 0;
PRINTD (DBG_TX|DBG_BUS, "TX start scatter-gather transfer (iovec %p, len %d)",
skb->data, tx_len);
+ tx_release (dev);
+ hrz_kfree_skb (skb);
+ return -EIO;
} else {
// simple transfer
dev->tx_regions = 0;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)