Merge branch 'upstream-fixes' of git://lost.foo-projects.org/~ahkok/git/netdev-2.6 into upstream-fixes
This commit is contained in:
commit
cb15f81beb
@ -870,13 +870,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,
|
||||||
|
netdev)) {
|
||||||
shared_int = FALSE;
|
shared_int = FALSE;
|
||||||
} else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ,
|
} 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);
|
||||||
|
@ -3519,7 +3519,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)
|
||||||
@ -3537,8 +3537,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++;
|
||||||
@ -3668,7 +3666,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;
|
||||||
@ -3697,8 +3695,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++;
|
||||||
|
Loading…
Reference in New Issue
Block a user