This is a note to let you know that I've just added the patch titled

    e1000: fix return value not set on error

to the 2.6.37-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     e1000-fix-return-value-not-set-on-error.patch
and it can be found in the queue-2.6.37 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From 19a0b67afd174c4db261d587b5c67704dcd53c17 Mon Sep 17 00:00:00 2001
From: Dean Nelson <[email protected]>
Date: Thu, 11 Nov 2010 05:50:25 +0000
Subject: e1000: fix return value not set on error

From: Dean Nelson <[email protected]>

commit 19a0b67afd174c4db261d587b5c67704dcd53c17 upstream.

Dean noticed that 'err' wasn't being set when the "goto err_dma"
statement is executed in the following hunk from the commit. It's value
will be zero as a result of a successful call to e1000_init_hw_struct().

This patch changes the error condition to be correctly propagated.

Signed-off-by:  Dean Nelson <[email protected]>
Signed-off-by: Jesse Brandeburg <[email protected]>
Tested-by: Emil Tantilov <[email protected]>
Signed-off-by: Jeff Kirsher <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/net/e1000/e1000_main.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -971,11 +971,13 @@ static int __devinit e1000_probe(struct
                 */
                dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(64));
                pci_using_dac = 1;
-       } else if (!dma_set_mask(&pdev->dev, DMA_BIT_MASK(32))) {
-               dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        } else {
-               pr_err("No usable DMA config, aborting\n");
-               goto err_dma;
+               err = dma_set_mask(&pdev->dev, DMA_BIT_MASK(32));
+               if (err) {
+                       pr_err("No usable DMA config, aborting\n");
+                       goto err_dma;
+               }
+               dma_set_coherent_mask(&pdev->dev, DMA_BIT_MASK(32));
        }
 
        netdev->netdev_ops = &e1000_netdev_ops;


Patches currently in stable-queue which might be from [email protected] are

queue-2.6.37/e1000-fix-return-value-not-set-on-error.patch

_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable

Reply via email to