Root/package/ep80579-drivers/patches/101-iegbe_fix_napi_interface.patch

1--- a/Embedded/src/GbE/iegbe_main.c
2+++ b/Embedded/src/GbE/iegbe_main.c
3@@ -3465,12 +3465,12 @@ static irqreturn_t iegbe_intr_msi(int ir
4         printk("Critical error! ICR = 0x%x\n", icr);
5         return IRQ_HANDLED;
6     }
7- if (likely(netif_rx_schedule_prep(netdev, &adapter->napi))) {
8+ if (likely(napi_schedule_prep(&adapter->napi))) {
9         adapter->total_tx_bytes = 0;
10         adapter->total_tx_packets = 0;
11         adapter->total_rx_bytes = 0;
12         adapter->total_rx_packets = 0;
13- __netif_rx_schedule(netdev, &adapter->napi);
14+ __napi_schedule(&adapter->napi);
15     } else
16         iegbe_irq_enable(adapter);
17 
18@@ -3527,12 +3527,12 @@ iegbe_intr(int irq, void *data)
19         E1000_WRITE_REG(&adapter->hw, IMC, ~0);
20         E1000_WRITE_FLUSH(&adapter->hw);
21     }
22- if (likely(netif_rx_schedule_prep(netdev, &adapter->napi))) {
23+ if (likely(napi_schedule_prep(&adapter->napi))) {
24         adapter->total_tx_bytes = 0;
25         adapter->total_tx_packets = 0;
26         adapter->total_rx_bytes = 0;
27         adapter->total_rx_packets = 0;
28- __netif_rx_schedule(netdev, &adapter->napi);
29+ __napi_schedule(&adapter->napi);
30     } else
31         /* this really should not happen! if it does it is basically a
32          * bug, but not a hard error, so enable ints and continue */
33@@ -3574,7 +3574,7 @@ static int iegbe_clean(struct napi_struc
34     if (work_done < budget) {
35         if (likely(adapter->itr_setting & 3))
36             iegbe_set_itr(adapter);
37- netif_rx_complete(poll_dev, napi);
38+ napi_complete(napi);
39         iegbe_irq_enable(adapter);
40     }
41 
42

Archive Download this file



interactive