From 615a433cbaf940ded189f615ae40bc9f49c62ae6 Mon Sep 17 00:00:00 2001 From: Andres More Date: Mon, 12 Jul 2010 19:28:25 -0300 Subject: [PATCH] --- yaml --- r: 205908 b: refs/heads/master c: 529e5b32355305d2488363ba7404c6041d73995d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/staging/vt6656/main_usb.c | 46 ++++++++++++------------- 2 files changed, 23 insertions(+), 25 deletions(-) diff --git a/[refs] b/[refs] index 24960f836900..1a3087d90db2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 6d4e807c5a302f10a3b80c7382c9a2a04ed6ec3f +refs/heads/master: 529e5b32355305d2488363ba7404c6041d73995d diff --git a/trunk/drivers/staging/vt6656/main_usb.c b/trunk/drivers/staging/vt6656/main_usb.c index 217e8a62a603..0b95db43fc2c 100644 --- a/trunk/drivers/staging/vt6656/main_usb.c +++ b/trunk/drivers/staging/vt6656/main_usb.c @@ -1306,39 +1306,37 @@ static int device_dma0_tx_80211(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } -static int device_xmit(struct sk_buff *skb, struct net_device *dev) { - PSDevice pDevice=netdev_priv(dev); - struct net_device_stats* pStats = &pDevice->stats; +static int device_xmit(struct sk_buff *skb, struct net_device *dev) +{ + PSDevice pDevice = netdev_priv(dev); + struct net_device_stats *stats = &pDevice->stats; + spin_lock_irq(&pDevice->lock); - spin_lock_irq(&pDevice->lock); + netif_stop_queue(dev); - netif_stop_queue(pDevice->dev); + if (!pDevice->bLinkPass) { + dev_kfree_skb_irq(skb); + goto out; + } - if (pDevice->bLinkPass == FALSE) { - dev_kfree_skb_irq(skb); - spin_unlock_irq(&pDevice->lock); - return 0; - } - if (pDevice->bStopDataPkt == TRUE) { - dev_kfree_skb_irq(skb); - pStats->tx_dropped++; - spin_unlock_irq(&pDevice->lock); - return 0; - } + if (pDevice->bStopDataPkt) { + dev_kfree_skb_irq(skb); + stats->tx_dropped++; + goto out; + } - if(nsDMA_tx_packet(pDevice, TYPE_AC0DMA, skb) !=0) { //mike add:xmit fail! - if (netif_queue_stopped(pDevice->dev)) - netif_wake_queue(pDevice->dev); - } + if (nsDMA_tx_packet(pDevice, TYPE_AC0DMA, skb)) { + if (netif_queue_stopped(dev)) + netif_wake_queue(dev); + } - spin_unlock_irq(&pDevice->lock); +out: + spin_unlock_irq(&pDevice->lock); - return 0; + return NETDEV_TX_OK; } - - static unsigned const ethernet_polynomial = 0x04c11db7U; static inline u32 ether_crc(int length, unsigned char *data) {