Merge branch 'upstream-fixes' into upstream

Conflicts:

	drivers/net/e1000/e1000_ethtool.c
This commit is contained in:
Jeff Garzik
2006-06-08 15:55:45 -04:00
2 changed files with 8 additions and 9 deletions

View File

@@ -871,13 +871,16 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data)
*data = 0; *data = 0;
/* Hook up test interrupt handler just for this test */ /* Hook up test interrupt handler just for this test */
if (!request_irq(irq, &e1000_test_intr, 0, netdev->name, netdev)) { if (!request_irq(irq, &e1000_test_intr, SA_PROBEIRQ, netdev->name,
shared_int = FALSE; netdev)) {
} else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ, shared_int = FALSE;
} else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ,
netdev->name, netdev)){ netdev->name, netdev)){
*data = 1; *data = 1;
return -1; return -1;
} }
DPRINTK(PROBE,INFO, "testing %s interrupt\n",
(shared_int ? "shared" : "unshared"));
/* Disable all the interrupts */ /* Disable all the interrupts */
E1000_WRITE_REG(&adapter->hw, IMC, 0xFFFFFFFF); E1000_WRITE_REG(&adapter->hw, IMC, 0xFFFFFFFF);

View File

@@ -3494,7 +3494,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
buffer_info = &rx_ring->buffer_info[i]; buffer_info = &rx_ring->buffer_info[i];
while (rx_desc->status & E1000_RXD_STAT_DD) { while (rx_desc->status & E1000_RXD_STAT_DD) {
struct sk_buff *skb, *next_skb; struct sk_buff *skb;
u8 status; u8 status;
#ifdef CONFIG_E1000_NAPI #ifdef CONFIG_E1000_NAPI
if (*work_done >= work_to_do) if (*work_done >= work_to_do)
@@ -3512,8 +3512,6 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
prefetch(next_rxd); prefetch(next_rxd);
next_buffer = &rx_ring->buffer_info[i]; next_buffer = &rx_ring->buffer_info[i];
next_skb = next_buffer->skb;
prefetch(next_skb->data - NET_IP_ALIGN);
cleaned = TRUE; cleaned = TRUE;
cleaned_count++; cleaned_count++;
@@ -3644,7 +3642,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
struct e1000_buffer *buffer_info, *next_buffer; struct e1000_buffer *buffer_info, *next_buffer;
struct e1000_ps_page *ps_page; struct e1000_ps_page *ps_page;
struct e1000_ps_page_dma *ps_page_dma; struct e1000_ps_page_dma *ps_page_dma;
struct sk_buff *skb, *next_skb; struct sk_buff *skb;
unsigned int i, j; unsigned int i, j;
uint32_t length, staterr; uint32_t length, staterr;
int cleaned_count = 0; int cleaned_count = 0;
@@ -3674,8 +3672,6 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
prefetch(next_rxd); prefetch(next_rxd);
next_buffer = &rx_ring->buffer_info[i]; next_buffer = &rx_ring->buffer_info[i];
next_skb = next_buffer->skb;
prefetch(next_skb->data - NET_IP_ALIGN);
cleaned = TRUE; cleaned = TRUE;
cleaned_count++; cleaned_count++;