]> err.no Git - linux-2.6/blobdiff - drivers/net/e1000/e1000_ethtool.c
ipsec: Fix deadlock in xfrm_state management.
[linux-2.6] / drivers / net / e1000 / e1000_ethtool.c
index f9ac9a87ffabdad68735f3a1084cd3fb12130c97..6a3893acfe04e3f963b231a373446fe8d8615863 100644 (file)
@@ -483,10 +483,12 @@ static int e1000_get_eeprom(struct net_device *netdev,
                                            last_word - first_word + 1,
                                            eeprom_buff);
        else {
-               for (i = 0; i < last_word - first_word + 1; i++)
-                       if ((ret_val = e1000_read_eeprom(hw, first_word + i, 1,
-                                                       &eeprom_buff[i])))
+               for (i = 0; i < last_word - first_word + 1; i++) {
+                       ret_val = e1000_read_eeprom(hw, first_word + i, 1,
+                                                   &eeprom_buff[i]);
+                       if (ret_val)
                                break;
+               }
        }
 
        /* Device's eeprom is always little-endian, word addressable */
@@ -669,9 +671,11 @@ static int e1000_set_ringparam(struct net_device *netdev,
 
        if (netif_running(adapter->netdev)) {
                /* Try to get new resources before deleting old */
-               if ((err = e1000_setup_all_rx_resources(adapter)))
+               err = e1000_setup_all_rx_resources(adapter);
+               if (err)
                        goto err_setup_rx;
-               if ((err = e1000_setup_all_tx_resources(adapter)))
+               err = e1000_setup_all_tx_resources(adapter);
+               if (err)
                        goto err_setup_tx;
 
                /* save the new, restore the old in order to free it,
@@ -685,7 +689,8 @@ static int e1000_set_ringparam(struct net_device *netdev,
                kfree(rx_old);
                adapter->rx_ring = rxdr;
                adapter->tx_ring = txdr;
-               if ((err = e1000_up(adapter)))
+               err = e1000_up(adapter);
+               if (err)
                        goto err_setup;
        }
 
@@ -1057,17 +1062,17 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)
        if (!txdr->count)
                txdr->count = E1000_DEFAULT_TXD;
 
-       if (!(txdr->buffer_info = kcalloc(txdr->count,
-                                         sizeof(struct e1000_buffer),
-                                         GFP_KERNEL))) {
+       txdr->buffer_info = kcalloc(txdr->count, sizeof(struct e1000_buffer),
+                                   GFP_KERNEL);
+       if (!txdr->buffer_info) {
                ret_val = 1;
                goto err_nomem;
        }
 
        txdr->size = txdr->count * sizeof(struct e1000_tx_desc);
        txdr->size = ALIGN(txdr->size, 4096);
-       if (!(txdr->desc = pci_alloc_consistent(pdev, txdr->size,
-                                               &txdr->dma))) {
+       txdr->desc = pci_alloc_consistent(pdev, txdr->size, &txdr->dma);
+       if (!txdr->desc) {
                ret_val = 2;
                goto err_nomem;
        }
@@ -1088,7 +1093,8 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)
                struct sk_buff *skb;
                unsigned int size = 1024;
 
-               if (!(skb = alloc_skb(size, GFP_KERNEL))) {
+               skb = alloc_skb(size, GFP_KERNEL);
+               if (!skb) {
                        ret_val = 3;
                        goto err_nomem;
                }
@@ -1111,15 +1117,16 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)
        if (!rxdr->count)
                rxdr->count = E1000_DEFAULT_RXD;
 
-       if (!(rxdr->buffer_info = kcalloc(rxdr->count,
-                                         sizeof(struct e1000_buffer),
-                                         GFP_KERNEL))) {
+       rxdr->buffer_info = kcalloc(rxdr->count, sizeof(struct e1000_buffer),
+                                   GFP_KERNEL);
+       if (!rxdr->buffer_info) {
                ret_val = 4;
                goto err_nomem;
        }
 
        rxdr->size = rxdr->count * sizeof(struct e1000_rx_desc);
-       if (!(rxdr->desc = pci_alloc_consistent(pdev, rxdr->size, &rxdr->dma))) {
+       rxdr->desc = pci_alloc_consistent(pdev, rxdr->size, &rxdr->dma);
+       if (!rxdr->desc) {
                ret_val = 5;
                goto err_nomem;
        }
@@ -1142,8 +1149,8 @@ static int e1000_setup_desc_rings(struct e1000_adapter *adapter)
                struct e1000_rx_desc *rx_desc = E1000_RX_DESC(*rxdr, i);
                struct sk_buff *skb;
 
-               if (!(skb = alloc_skb(E1000_RXBUFFER_2048 + NET_IP_ALIGN,
-                               GFP_KERNEL))) {
+               skb = alloc_skb(E1000_RXBUFFER_2048 + NET_IP_ALIGN, GFP_KERNEL);
+               if (!skb) {
                        ret_val = 6;
                        goto err_nomem;
                }
@@ -1564,9 +1571,11 @@ static int e1000_loopback_test(struct e1000_adapter *adapter, u64 *data)
                goto out;
        }
 
-       if ((*data = e1000_setup_desc_rings(adapter)))
+       *data = e1000_setup_desc_rings(adapter);
+       if (*data)
                goto out;
-       if ((*data = e1000_setup_loopback_test(adapter)))
+       *data = e1000_setup_loopback_test(adapter);
+       if (*data)
                goto err_loopback;
        *data = e1000_run_loopback_test(adapter);
        e1000_loopback_cleanup(adapter);