diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-06-08 15:55:45 -0400 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-06-08 15:55:45 -0400 |
commit | bcd618e4eac6fbf82de05d23c15ecb694c62b8af (patch) | |
tree | e1a85b6a5f10c7ac20ef3b3357e15c5802dca019 /drivers/net/e1000 | |
parent | ba9b28d19a3251bb1dfe6a6f8cc89b96fb85f683 (diff) | |
parent | cb15f81beb1e2ad015d6e7aea2f9b49fdbda9d1a (diff) |
Merge branch 'upstream-fixes' into upstream
Conflicts:
drivers/net/e1000/e1000_ethtool.c
Diffstat (limited to 'drivers/net/e1000')
-rw-r--r-- | drivers/net/e1000/e1000_ethtool.c | 9 | ||||
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 8 |
2 files changed, 8 insertions, 9 deletions
diff --git a/drivers/net/e1000/e1000_ethtool.c b/drivers/net/e1000/e1000_ethtool.c index cfdf0b24ffc1..6ed7f599eba3 100644 --- a/drivers/net/e1000/e1000_ethtool.c +++ b/drivers/net/e1000/e1000_ethtool.c | |||
@@ -871,13 +871,16 @@ e1000_intr_test(struct e1000_adapter *adapter, uint64_t *data) | |||
871 | *data = 0; | 871 | *data = 0; |
872 | 872 | ||
873 | /* Hook up test interrupt handler just for this test */ | 873 | /* Hook up test interrupt handler just for this test */ |
874 | if (!request_irq(irq, &e1000_test_intr, 0, netdev->name, netdev)) { | 874 | if (!request_irq(irq, &e1000_test_intr, SA_PROBEIRQ, netdev->name, |
875 | shared_int = FALSE; | 875 | netdev)) { |
876 | } else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ, | 876 | shared_int = FALSE; |
877 | } else if (request_irq(irq, &e1000_test_intr, SA_SHIRQ, | ||
877 | netdev->name, netdev)){ | 878 | netdev->name, netdev)){ |
878 | *data = 1; | 879 | *data = 1; |
879 | return -1; | 880 | return -1; |
880 | } | 881 | } |
882 | DPRINTK(PROBE,INFO, "testing %s interrupt\n", | ||
883 | (shared_int ? "shared" : "unshared")); | ||
881 | 884 | ||
882 | /* Disable all the interrupts */ | 885 | /* Disable all the interrupts */ |
883 | E1000_WRITE_REG(&adapter->hw, IMC, 0xFFFFFFFF); | 886 | E1000_WRITE_REG(&adapter->hw, IMC, 0xFFFFFFFF); |
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index bd709e562778..115eff25d8c1 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -3494,7 +3494,7 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, | |||
3494 | buffer_info = &rx_ring->buffer_info[i]; | 3494 | buffer_info = &rx_ring->buffer_info[i]; |
3495 | 3495 | ||
3496 | while (rx_desc->status & E1000_RXD_STAT_DD) { | 3496 | while (rx_desc->status & E1000_RXD_STAT_DD) { |
3497 | struct sk_buff *skb, *next_skb; | 3497 | struct sk_buff *skb; |
3498 | u8 status; | 3498 | u8 status; |
3499 | #ifdef CONFIG_E1000_NAPI | 3499 | #ifdef CONFIG_E1000_NAPI |
3500 | if (*work_done >= work_to_do) | 3500 | if (*work_done >= work_to_do) |
@@ -3512,8 +3512,6 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, | |||
3512 | prefetch(next_rxd); | 3512 | prefetch(next_rxd); |
3513 | 3513 | ||
3514 | next_buffer = &rx_ring->buffer_info[i]; | 3514 | next_buffer = &rx_ring->buffer_info[i]; |
3515 | next_skb = next_buffer->skb; | ||
3516 | prefetch(next_skb->data - NET_IP_ALIGN); | ||
3517 | 3515 | ||
3518 | cleaned = TRUE; | 3516 | cleaned = TRUE; |
3519 | cleaned_count++; | 3517 | cleaned_count++; |
@@ -3644,7 +3642,7 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, | |||
3644 | struct e1000_buffer *buffer_info, *next_buffer; | 3642 | struct e1000_buffer *buffer_info, *next_buffer; |
3645 | struct e1000_ps_page *ps_page; | 3643 | struct e1000_ps_page *ps_page; |
3646 | struct e1000_ps_page_dma *ps_page_dma; | 3644 | struct e1000_ps_page_dma *ps_page_dma; |
3647 | struct sk_buff *skb, *next_skb; | 3645 | struct sk_buff *skb; |
3648 | unsigned int i, j; | 3646 | unsigned int i, j; |
3649 | uint32_t length, staterr; | 3647 | uint32_t length, staterr; |
3650 | int cleaned_count = 0; | 3648 | int cleaned_count = 0; |
@@ -3674,8 +3672,6 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, | |||
3674 | prefetch(next_rxd); | 3672 | prefetch(next_rxd); |
3675 | 3673 | ||
3676 | next_buffer = &rx_ring->buffer_info[i]; | 3674 | next_buffer = &rx_ring->buffer_info[i]; |
3677 | next_skb = next_buffer->skb; | ||
3678 | prefetch(next_skb->data - NET_IP_ALIGN); | ||
3679 | 3675 | ||
3680 | cleaned = TRUE; | 3676 | cleaned = TRUE; |
3681 | cleaned_count++; | 3677 | cleaned_count++; |