From: Florian Fainelli Date: Wed, 8 Aug 2012 21:51:13 +0000 (+0000) Subject: nuport-mac: close possible race condition during start X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=5e877f02b4c12076623c5d42a3c4e0ba14221fdd;p=openwrt%2Fstaging%2Fzorun.git nuport-mac: close possible race condition during start SVN-Revision: 33069 --- diff --git a/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c b/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c index ebf95a6533..8cd3d0e6b6 100644 --- a/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c +++ b/target/linux/mcs814x/files-3.3/drivers/net/ethernet/mcs8140/nuport_mac.c @@ -809,7 +809,11 @@ static int nuport_mac_open(struct net_device *dev) nuport_mac_reset_rx_dma(priv); /* Start RX DMA */ - return nuport_mac_start_rx_dma(priv, priv->rx_skb[0]); + spin_lock_irqsave(&priv->lock, flags); + ret = nuport_mac_start_rx_dma(priv, priv->rx_skb[0]); + spin_unlock_irqrestore(&priv->lock, flags); + + return ret; out_rx_skb: nuport_mac_free_rx_ring(priv);