Submitted by: William Immendorf <will.immendorf@gmail.com>
Date: 16/04/10
Origional Package Version: 2.6.33.2
Upstream Status: From Upstream
Origin: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dac876193cd79ced36d0462749ea47c05844fb49
Description: Fixes a segfault in the e1000e driver that causes init to segfault when booting up. This patch is espically useful for people that have a e1000e card installed in their system.

diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
index cfd09ce..73d43c5 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -661,6 +661,8 @@ static bool e1000_clean_tx_irq(struct e1000_adapter *adapter)
 				i = 0;
 		}
 
+		if (i == tx_ring->next_to_use)
+			break;
 		eop = tx_ring->buffer_info[i].next_to_watch;
 		eop_desc = E1000_TX_DESC(*tx_ring, eop);
 	}

