kernel: update kernel 4.4 to version 4.4.110
authorHauke Mehrtens <hauke@hauke-m.de>
Sat, 6 Jan 2018 01:08:42 +0000 (02:08 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 7 Jan 2018 12:37:04 +0000 (13:37 +0100)
This fixes:  CVE-2017-5754

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
37 files changed:
include/kernel-version.mk
target/linux/apm821xx/patches-4.4/801-usb-xhci-add-firmware-loader-for-uPD720201-and-uPD72.patch
target/linux/apm821xx/patches-4.4/802-usb-xhci-force-msi-renesas-xhci.patch
target/linux/ar71xx/patches-4.4/910-unaligned_access_hacks.patch
target/linux/generic/patches-4.4/653-disable_netlink_trim.patch
target/linux/generic/patches-4.4/902-debloat_proc.patch
target/linux/generic/patches-4.4/921-use_preinit_as_init.patch
target/linux/generic/patches-4.4/995-mangle_bootargs.patch
target/linux/ipq806x/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch
target/linux/mvebu/patches-4.4/030-mvneta-consolidate-autoneg-enabling.patch
target/linux/mvebu/patches-4.4/031-mvneta-implement-ethtool-autonegotiation-control.patch
target/linux/mvebu/patches-4.4/032-net-mvneta-Make-the-default-queue-related-for-each-p.patch
target/linux/mvebu/patches-4.4/033-net-mvneta-Associate-RX-queues-with-each-CPU.patch
target/linux/mvebu/patches-4.4/034-net-mvneta-Add-naive-RSS-support.patch
target/linux/mvebu/patches-4.4/035-net-mvneta-Configure-XPS-support.patch
target/linux/mvebu/patches-4.4/036-net-mvneta-fix-trivial-cut-off-issue-in-mvneta_ethto.patch
target/linux/mvebu/patches-4.4/038-net-mvneta-Fix-the-CPU-choice-in-mvneta_percpu_elect.patch
target/linux/mvebu/patches-4.4/039-net-mvneta-Use-on_each_cpu-when-possible.patch
target/linux/mvebu/patches-4.4/040-net-mvneta-Modify-the-queue-related-fields-from-each.patch
target/linux/mvebu/patches-4.4/041-net-mvneta-The-mvneta_percpu_elect-function-should-b.patch
target/linux/mvebu/patches-4.4/042-net-mvneta-Fix-race-condition-during-stopping.patch
target/linux/mvebu/patches-4.4/045-net-mvneta-bm-add-support-for-hardware-buffer-manage.patch
target/linux/mvebu/patches-4.4/046-net-mvneta-Use-the-new-hwbm-framework.patch
target/linux/mvebu/patches-4.4/047-net-mvneta-Fix-spinlock-usage.patch
target/linux/mvebu/patches-4.4/049-net-mvneta-replace-MVNETA_CPU_D_CACHE_LINE_SIZE-with.patch
target/linux/mvebu/patches-4.4/050-net-mvneta-fix-changing-MTU-when-using-per-cpu-proce.patch
target/linux/mvebu/patches-4.4/134-net-mvneta-convert-to-phylink.patch
target/linux/mvebu/patches-4.4/137-net-mvneta-add-nway_reset-support.patch
target/linux/mvebu/patches-4.4/139-net-mvneta-add-flow-control-support-via-phylink.patch
target/linux/mvebu/patches-4.4/140-net-mvneta-enable-flow-control-for-PHY-connections.patch
target/linux/mvebu/patches-4.4/141-net-mvneta-enable-flow-control-for-fixed-connections.patch
target/linux/mvebu/patches-4.4/143-net-mvneta-add-EEE-support.patch
target/linux/mvebu/patches-4.4/145-net-mvneta-add-module-EEPROM-reading-support.patch
target/linux/mvebu/patches-4.4/147-net-mvneta-add-BQL-support.patch
target/linux/mvebu/patches-4.4/400-mvneta-tx-queue-workaround.patch
target/linux/oxnas/patches-4.4/996-ATAG_DTB_COMPAT_CMDLINE_MANGLE.patch
target/linux/x86/64/config-default

index fc7f46f6e2b9328f7dd4bdc10a661182f7abfc03..c6231ce8702f5139d5a47344ae0a897161ec57e5 100644 (file)
@@ -3,10 +3,10 @@
 LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .43
-LINUX_VERSION-4.4 = .108
+LINUX_VERSION-4.4 = .110
 
 LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c
-LINUX_KERNEL_HASH-4.4.108 = 5a001198625ce9f7b0ef1e4b43e033aea859e1ef3509532412cce8f0375ba51a
+LINUX_KERNEL_HASH-4.4.110 = d099175aac5678e6cad2f23cd56ed22a2857143c0c18489390c95ba8c441db58
 
 ifdef KERNEL_PATCHVER
   LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
index e25e15bbbb43876979909f9708d102d60fad4685..91c5c1ff102324dae48013ad8c8c036236c44b7b 100644 (file)
@@ -44,7 +44,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
  
  #include "xhci.h"
  #include "xhci-trace.h"
-@@ -224,6 +226,458 @@ static void xhci_pme_acpi_rtd3_enable(st
+@@ -227,6 +229,458 @@ static void xhci_pme_acpi_rtd3_enable(st
  static void xhci_pme_acpi_rtd3_enable(struct pci_dev *dev) { }
  #endif /* CONFIG_ACPI */
  
@@ -503,7 +503,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
  /* called during probe() after chip reset completes */
  static int xhci_pci_setup(struct usb_hcd *hcd)
  {
-@@ -263,6 +717,22 @@ static int xhci_pci_probe(struct pci_dev
+@@ -266,6 +720,22 @@ static int xhci_pci_probe(struct pci_dev
        struct hc_driver *driver;
        struct usb_hcd *hcd;
  
@@ -526,7 +526,7 @@ Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
        driver = (struct hc_driver *)id->driver_data;
  
        /* Prevent runtime suspending between USB-2 and USB-3 initialization */
-@@ -320,6 +790,16 @@ static void xhci_pci_remove(struct pci_d
+@@ -323,6 +793,16 @@ static void xhci_pci_remove(struct pci_d
  {
        struct xhci_hcd *xhci;
  
index c34108ebad6ea16a4180c0735b502ad155f54f8c..ee56eb34ebd824bd9b829026a5165387d4e2b50d 100644 (file)
@@ -13,8 +13,8 @@ produce a noisy warning.
 
 --- a/drivers/usb/host/xhci-pci.c
 +++ b/drivers/usb/host/xhci-pci.c
-@@ -188,7 +188,7 @@ static void xhci_pci_quirks(struct devic
-       }
+@@ -191,7 +191,7 @@ static void xhci_pci_quirks(struct devic
+               xhci->quirks |= XHCI_TRUST_TX_LENGTH;
        if (pdev->vendor == PCI_VENDOR_ID_RENESAS &&
                        pdev->device == 0x0015)
 -              xhci->quirks |= XHCI_RESET_ON_RESUME;
index 8789b644a66c850c0b1c26704564953796f22cc7..8882b1758fed7ac254116fb0cb0e1b95bbe5259f 100644 (file)
                memcpy(p, foc->val, foc->len);
 --- a/net/ipv4/igmp.c
 +++ b/net/ipv4/igmp.c
-@@ -505,7 +505,7 @@ static struct sk_buff *add_grec(struct s
+@@ -529,7 +529,7 @@ static struct sk_buff *add_grec(struct s
                if (!skb)
                        return NULL;
                psrc = (__be32 *)skb_put(skb, sizeof(__be32));
index 5f46885708adbc2b1d9b56efe3e770b217c61c95..b11104be9e49b542eddd3f1d53f7626f50f70484 100644 (file)
@@ -1,6 +1,6 @@
 --- a/net/netlink/af_netlink.c
 +++ b/net/netlink/af_netlink.c
-@@ -1228,24 +1228,7 @@ void netlink_detachskb(struct sock *sk,
+@@ -1231,24 +1231,7 @@ void netlink_detachskb(struct sock *sk,
  
  static struct sk_buff *netlink_trim(struct sk_buff *skb, gfp_t allocation)
  {
index 5aada68e31e4cb673325df445d21ce1ffb62bf50..248ba8f670faa7a886c3ad6c275803c4b8040dec 100644 (file)
  }
 --- a/mm/vmstat.c
 +++ b/mm/vmstat.c
-@@ -1555,10 +1555,12 @@ static int __init setup_vmstat(void)
+@@ -1556,10 +1556,12 @@ static int __init setup_vmstat(void)
        cpu_notifier_register_done();
  #endif
  #ifdef CONFIG_PROC_FS
index 1f4e6322b1923236901d0c38cf858412beb459b7..3aba9d63ba06816d63206408bbcf348491e08e4c 100644 (file)
@@ -1,6 +1,6 @@
 --- a/init/main.c
 +++ b/init/main.c
-@@ -964,7 +964,8 @@ static int __ref kernel_init(void *unuse
+@@ -966,7 +966,8 @@ static int __ref kernel_init(void *unuse
                panic("Requested init %s failed (error %d).",
                      execute_command, ret);
        }
index 2483e1bb9805a5caf344ccf9d02ea7a48c2f3f7c..e008dd9098dbb14b594f0e4d4fe0da541c4c6284 100644 (file)
@@ -1,6 +1,6 @@
 --- a/init/main.c
 +++ b/init/main.c
-@@ -355,6 +355,29 @@ static inline void setup_nr_cpu_ids(void
+@@ -356,6 +356,29 @@ static inline void setup_nr_cpu_ids(void
  static inline void smp_prepare_cpus(unsigned int maxcpus) { }
  #endif
  
@@ -30,7 +30,7 @@
  /*
   * We need to store the untouched command line for future reference.
   * We also need to store the touched command line since the parameter
-@@ -527,6 +550,7 @@ asmlinkage __visible void __init start_k
+@@ -529,6 +552,7 @@ asmlinkage __visible void __init start_k
        pr_notice("%s", linux_banner);
        setup_arch(&command_line);
        mm_init_cpumask(&init_mm);
index be15ec4772de919bc7d897a1b37726d537585182..29f09f23237a66efe24c29a03e8f891aaef1d734 100644 (file)
@@ -153,7 +153,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  }
 --- a/init/main.c
 +++ b/init/main.c
-@@ -88,6 +88,10 @@
+@@ -89,6 +89,10 @@
  #include <asm/sections.h>
  #include <asm/cacheflush.h>
  
@@ -164,7 +164,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
-@@ -560,6 +564,18 @@ asmlinkage __visible void __init start_k
+@@ -562,6 +566,18 @@ asmlinkage __visible void __init start_k
        page_alloc_init();
  
        pr_notice("Kernel command line: %s\n", boot_command_line);
index c398a47341bf5371d1b898aaa9631e079df435ed..fbee3d2887b74143f9e5a29ede43011337d78658 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -1067,15 +1067,28 @@ static void mvneta_defaults_set(struct m
+@@ -1071,15 +1071,28 @@ static void mvneta_defaults_set(struct m
                       MVNETA_GMAC_AN_SPEED_EN |
                       MVNETA_GMAC_AN_DUPLEX_EN;
                mvreg_write(pp, MVNETA_GMAC_AUTONEG_CONFIG, val);
@@ -43,7 +43,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        }
  
        mvneta_set_ucast_table(pp, -1);
-@@ -3228,9 +3241,6 @@ static int mvneta_port_power_up(struct m
+@@ -3232,9 +3245,6 @@ static int mvneta_port_power_up(struct m
                return -EINVAL;
        }
  
index dc4a224b745bd76301621af09ca3e36e239068db..3154d7cfbef132e71ef83a78a9685249deb31dda 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        u64 ethtool_stats[ARRAY_SIZE(mvneta_statistics)];
  };
-@@ -973,6 +973,44 @@ static void mvneta_set_other_mcast_table
+@@ -977,6 +977,44 @@ static void mvneta_set_other_mcast_table
                mvreg_write(pp, MVNETA_DA_FILT_OTH_MCAST + offset, val);
  }
  
@@ -77,7 +77,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  /* This method sets defaults to the NETA port:
   *    Clears interrupt Cause and Mask registers.
   *    Clears all MAC tables.
-@@ -1058,39 +1096,7 @@ static void mvneta_defaults_set(struct m
+@@ -1062,39 +1100,7 @@ static void mvneta_defaults_set(struct m
        val &= ~MVNETA_PHY_POLLING_ENABLE;
        mvreg_write(pp, MVNETA_UNIT_CONTROL, val);
  
@@ -118,7 +118,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvneta_set_ucast_table(pp, -1);
        mvneta_set_special_mcast_table(pp, -1);
        mvneta_set_other_mcast_table(pp, -1);
-@@ -2954,10 +2960,43 @@ int mvneta_ethtool_get_settings(struct n
+@@ -2958,10 +2964,43 @@ int mvneta_ethtool_get_settings(struct n
  int mvneta_ethtool_set_settings(struct net_device *dev, struct ethtool_cmd *cmd)
  {
        struct mvneta_port *pp = netdev_priv(dev);
index 83782a0b4ff9250cdefb888f57e7c8d26b2ff9db..3be47abc8aeacea7b9151de5f0b4d12b24ce9335 100644 (file)
@@ -28,7 +28,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  }
  
  /* Stop the Ethernet port activity */
-@@ -1067,7 +1068,7 @@ static void mvneta_defaults_set(struct m
+@@ -1071,7 +1072,7 @@ static void mvneta_defaults_set(struct m
        mvreg_write(pp, MVNETA_ACC_MODE, val);
  
        /* Update val of portCfg register accordingly with all RxQueue types */
@@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvreg_write(pp, MVNETA_PORT_CONFIG, val);
  
        val = 0;
-@@ -2101,19 +2102,19 @@ static void mvneta_set_rx_mode(struct ne
+@@ -2105,19 +2106,19 @@ static void mvneta_set_rx_mode(struct ne
        if (dev->flags & IFF_PROMISC) {
                /* Accept all: Multicast + Unicast */
                mvneta_rx_unicast_promisc_set(pp, 1);
@@ -63,7 +63,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                } else {
                        /* Accept only initialized multicast */
                        mvneta_set_special_mcast_table(pp, -1);
-@@ -2122,7 +2123,7 @@ static void mvneta_set_rx_mode(struct ne
+@@ -2126,7 +2127,7 @@ static void mvneta_set_rx_mode(struct ne
                        if (!netdev_mc_empty(dev)) {
                                netdev_for_each_mc_addr(ha, dev) {
                                        mvneta_mcast_addr_set(pp, ha->addr,
@@ -72,7 +72,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                                }
                        }
                }
-@@ -2205,7 +2206,7 @@ static int mvneta_poll(struct napi_struc
+@@ -2209,7 +2210,7 @@ static int mvneta_poll(struct napi_struc
         * RX packets
         */
        cause_rx_tx |= port->cause_rx_tx;
@@ -81,7 +81,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        budget -= rx_done;
  
        if (budget > 0) {
-@@ -2418,17 +2419,17 @@ static void mvneta_cleanup_txqs(struct m
+@@ -2422,17 +2423,17 @@ static void mvneta_cleanup_txqs(struct m
  /* Cleanup all Rx queues */
  static void mvneta_cleanup_rxqs(struct mvneta_port *pp)
  {
@@ -102,7 +102,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                mvneta_cleanup_rxqs(pp);
                return err;
        }
-@@ -2634,7 +2635,7 @@ static int mvneta_set_mac_addr(struct ne
+@@ -2638,7 +2639,7 @@ static int mvneta_set_mac_addr(struct ne
        mvneta_mac_addr_set(pp, dev->dev_addr, -1);
  
        /* Set new addr in hw */
@@ -111,7 +111,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        eth_commit_mac_addr_change(dev, addr);
        return 0;
-@@ -2753,7 +2754,7 @@ static void mvneta_percpu_elect(struct m
+@@ -2757,7 +2758,7 @@ static void mvneta_percpu_elect(struct m
  {
        int online_cpu_idx, cpu, i = 0;
  
@@ -120,7 +120,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        for_each_online_cpu(cpu) {
                if (i == online_cpu_idx)
-@@ -3361,6 +3362,8 @@ static int mvneta_probe(struct platform_
+@@ -3365,6 +3366,8 @@ static int mvneta_probe(struct platform_
                                 strcmp(managed, "in-band-status") == 0);
        pp->cpu_notifier.notifier_call = mvneta_percpu_notifier;
  
index 636c6cf364336fb3c6f7064a40944dc61f572e20..a08d5fdcba63d7b65abb0b68a2b21a2b1ac485dd 100644 (file)
@@ -47,7 +47,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  }
  
  /* Stop the Ethernet port activity */
-@@ -1026,6 +1039,7 @@ static void mvneta_defaults_set(struct m
+@@ -1030,6 +1043,7 @@ static void mvneta_defaults_set(struct m
        int cpu;
        int queue;
        u32 val;
@@ -55,7 +55,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Clear all Cause registers */
        mvreg_write(pp, MVNETA_INTR_NEW_CAUSE, 0);
-@@ -1041,13 +1055,23 @@ static void mvneta_defaults_set(struct m
+@@ -1045,13 +1059,23 @@ static void mvneta_defaults_set(struct m
        /* Enable MBUS Retry bit16 */
        mvreg_write(pp, MVNETA_MBUS_RETRY, 0x20);
  
@@ -85,7 +85,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Reset RX and TX DMAs */
        mvreg_write(pp, MVNETA_PORT_RX_RESET, MVNETA_PORT_RX_DMA_RESET);
-@@ -2174,6 +2198,7 @@ static int mvneta_poll(struct napi_struc
+@@ -2178,6 +2202,7 @@ static int mvneta_poll(struct napi_struc
  {
        int rx_done = 0;
        u32 cause_rx_tx;
@@ -93,7 +93,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        struct mvneta_port *pp = netdev_priv(napi->dev);
        struct mvneta_pcpu_port *port = this_cpu_ptr(pp->ports);
  
-@@ -2205,8 +2230,15 @@ static int mvneta_poll(struct napi_struc
+@@ -2209,8 +2234,15 @@ static int mvneta_poll(struct napi_struc
        /* For the case where the last mvneta_poll did not process all
         * RX packets
         */
@@ -110,7 +110,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        budget -= rx_done;
  
        if (budget > 0) {
-@@ -2419,19 +2451,27 @@ static void mvneta_cleanup_txqs(struct m
+@@ -2423,19 +2455,27 @@ static void mvneta_cleanup_txqs(struct m
  /* Cleanup all Rx queues */
  static void mvneta_cleanup_rxqs(struct mvneta_port *pp)
  {
@@ -145,7 +145,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        }
  
        return 0;
-@@ -2455,6 +2495,19 @@ static int mvneta_setup_txqs(struct mvne
+@@ -2459,6 +2499,19 @@ static int mvneta_setup_txqs(struct mvne
        return 0;
  }
  
@@ -165,7 +165,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static void mvneta_start_dev(struct mvneta_port *pp)
  {
        unsigned int cpu;
-@@ -2472,11 +2525,10 @@ static void mvneta_start_dev(struct mvne
+@@ -2476,11 +2529,10 @@ static void mvneta_start_dev(struct mvne
                napi_enable(&port->napi);
        }
  
@@ -181,7 +181,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvreg_write(pp, MVNETA_INTR_MISC_MASK,
                    MVNETA_CAUSE_PHY_STATUS_CHANGE |
                    MVNETA_CAUSE_LINK_CHANGE |
-@@ -2752,22 +2804,35 @@ static void mvneta_percpu_disable(void *
+@@ -2756,22 +2808,35 @@ static void mvneta_percpu_disable(void *
  
  static void mvneta_percpu_elect(struct mvneta_port *pp)
  {
@@ -227,7 +227,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        }
  };
  
-@@ -2802,12 +2867,22 @@ static int mvneta_percpu_notifier(struct
+@@ -2806,12 +2871,22 @@ static int mvneta_percpu_notifier(struct
                mvreg_write(pp, MVNETA_INTR_MISC_MASK, 0);
                napi_enable(&port->napi);
  
@@ -251,7 +251,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                mvreg_write(pp, MVNETA_INTR_NEW_MASK,
                        MVNETA_RX_INTR_MASK(rxq_number) |
                        MVNETA_TX_INTR_MASK(txq_number) |
-@@ -2858,7 +2933,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2862,7 +2937,7 @@ static int mvneta_percpu_notifier(struct
  static int mvneta_open(struct net_device *dev)
  {
        struct mvneta_port *pp = netdev_priv(dev);
@@ -260,7 +260,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        pp->pkt_size = MVNETA_RX_PKT_SIZE(pp->dev->mtu);
        pp->frag_size = SKB_DATA_ALIGN(MVNETA_RX_BUF_SIZE(pp->pkt_size)) +
-@@ -2888,8 +2963,13 @@ static int mvneta_open(struct net_device
+@@ -2892,8 +2967,13 @@ static int mvneta_open(struct net_device
         */
        mvneta_percpu_disable(pp);
  
index 9d729b50bb21c27d8ae3dc322eba20d7df4bafa7..ee2c71b5e94dc96f9d7dfbab1d1b077c49b7f201 100644 (file)
@@ -34,7 +34,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  /* The mvneta_tx_desc and mvneta_rx_desc structures describe the
-@@ -1067,7 +1074,7 @@ static void mvneta_defaults_set(struct m
+@@ -1071,7 +1078,7 @@ static void mvneta_defaults_set(struct m
                        if ((rxq % max_cpu) == cpu)
                                rxq_map |= MVNETA_CPU_RXQ_ACCESS(rxq);
  
@@ -43,7 +43,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        txq_map = MVNETA_CPU_TXQ_ACCESS_ALL_MASK;
  
                mvreg_write(pp, MVNETA_CPU_MAP(cpu), rxq_map | txq_map);
-@@ -2508,6 +2515,18 @@ static void mvneta_percpu_unmask_interru
+@@ -2512,6 +2519,18 @@ static void mvneta_percpu_unmask_interru
                    MVNETA_MISCINTR_INTR_MASK);
  }
  
@@ -62,7 +62,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static void mvneta_start_dev(struct mvneta_port *pp)
  {
        unsigned int cpu;
-@@ -3229,6 +3248,106 @@ static int mvneta_ethtool_get_sset_count
+@@ -3233,6 +3252,106 @@ static int mvneta_ethtool_get_sset_count
        return -EOPNOTSUPP;
  }
  
@@ -169,7 +169,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static const struct net_device_ops mvneta_netdev_ops = {
        .ndo_open            = mvneta_open,
        .ndo_stop            = mvneta_stop,
-@@ -3253,6 +3372,10 @@ const struct ethtool_ops mvneta_eth_tool
+@@ -3257,6 +3376,10 @@ const struct ethtool_ops mvneta_eth_tool
        .get_strings    = mvneta_ethtool_get_strings,
        .get_ethtool_stats = mvneta_ethtool_get_stats,
        .get_sset_count = mvneta_ethtool_get_sset_count,
@@ -180,7 +180,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  /* Initialize hw */
-@@ -3444,6 +3567,8 @@ static int mvneta_probe(struct platform_
+@@ -3448,6 +3571,8 @@ static int mvneta_probe(struct platform_
  
        pp->rxq_def = rxq_def;
  
index 5b35b6442b2132cca6acfb705e6a9d5438071216..7389466b6d594e058fcde3e42cfe22f38a4cbb47 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  struct mvneta_rx_queue {
-@@ -1062,20 +1066,30 @@ static void mvneta_defaults_set(struct m
+@@ -1066,20 +1070,30 @@ static void mvneta_defaults_set(struct m
        /* Enable MBUS Retry bit16 */
        mvreg_write(pp, MVNETA_MBUS_RETRY, 0x20);
  
@@ -69,7 +69,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
                mvreg_write(pp, MVNETA_CPU_MAP(cpu), rxq_map | txq_map);
        }
-@@ -2362,6 +2376,8 @@ static void mvneta_rxq_deinit(struct mvn
+@@ -2366,6 +2380,8 @@ static void mvneta_rxq_deinit(struct mvn
  static int mvneta_txq_init(struct mvneta_port *pp,
                           struct mvneta_tx_queue *txq)
  {
@@ -78,7 +78,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        txq->size = pp->tx_ring_size;
  
        /* A queue must always have room for at least one skb.
-@@ -2414,6 +2430,14 @@ static int mvneta_txq_init(struct mvneta
+@@ -2418,6 +2434,14 @@ static int mvneta_txq_init(struct mvneta
        }
        mvneta_tx_done_pkts_coal_set(pp, txq, txq->done_pkts_coal);
  
@@ -93,7 +93,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        return 0;
  }
  
-@@ -2836,13 +2860,23 @@ static void mvneta_percpu_elect(struct m
+@@ -2840,13 +2864,23 @@ static void mvneta_percpu_elect(struct m
                        if ((rxq % max_cpu) == cpu)
                                rxq_map |= MVNETA_CPU_RXQ_ACCESS(rxq);
  
index d88336701dea53da9af8538a63c040ca789418bf..e79a11a4f13ba445c89ef141b20d5b7c799abd29 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3240,26 +3240,25 @@ static void mvneta_ethtool_update_stats(
+@@ -3244,26 +3244,25 @@ static void mvneta_ethtool_update_stats(
        const struct mvneta_statistic *s;
        void __iomem *base = pp->base;
        u32 high, low, val;
index 4fc9ccc76a797785783f337ceea922ca239f05f4..3423307c1c2cf5971a87bc443eae70004727774b 100644 (file)
@@ -20,7 +20,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -2847,9 +2847,14 @@ static void mvneta_percpu_disable(void *
+@@ -2851,9 +2851,14 @@ static void mvneta_percpu_disable(void *
  
  static void mvneta_percpu_elect(struct mvneta_port *pp)
  {
@@ -37,7 +37,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        max_cpu = num_present_cpus();
  
        for_each_online_cpu(cpu) {
-@@ -2860,7 +2865,7 @@ static void mvneta_percpu_elect(struct m
+@@ -2864,7 +2869,7 @@ static void mvneta_percpu_elect(struct m
                        if ((rxq % max_cpu) == cpu)
                                rxq_map |= MVNETA_CPU_RXQ_ACCESS(rxq);
  
@@ -46,7 +46,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        /* Map the default receive queue queue to the
                         * elected CPU
                         */
-@@ -2871,7 +2876,7 @@ static void mvneta_percpu_elect(struct m
+@@ -2875,7 +2880,7 @@ static void mvneta_percpu_elect(struct m
                 * the CPU bound to the default RX queue
                 */
                if (txq_number == 1)
index 76257a2a71dc4e864487246689bc30c0090c6568..8d22df0f9cdf4d2dcab092980d100866566003e3 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -2553,7 +2553,7 @@ static void mvneta_percpu_mask_interrupt
+@@ -2557,7 +2557,7 @@ static void mvneta_percpu_mask_interrupt
  
  static void mvneta_start_dev(struct mvneta_port *pp)
  {
@@ -23,7 +23,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        mvneta_max_rx_size_set(pp, pp->pkt_size);
        mvneta_txq_max_tx_size_set(pp, pp->pkt_size);
-@@ -2569,9 +2569,8 @@ static void mvneta_start_dev(struct mvne
+@@ -2573,9 +2573,8 @@ static void mvneta_start_dev(struct mvne
        }
  
        /* Unmask interrupts. It has to be done from each CPU */
@@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvreg_write(pp, MVNETA_INTR_MISC_MASK,
                    MVNETA_CAUSE_PHY_STATUS_CHANGE |
                    MVNETA_CAUSE_LINK_CHANGE |
-@@ -2991,7 +2990,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2995,7 +2994,7 @@ static int mvneta_percpu_notifier(struct
  static int mvneta_open(struct net_device *dev)
  {
        struct mvneta_port *pp = netdev_priv(dev);
@@ -44,7 +44,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        pp->pkt_size = MVNETA_RX_PKT_SIZE(pp->dev->mtu);
        pp->frag_size = SKB_DATA_ALIGN(MVNETA_RX_BUF_SIZE(pp->pkt_size)) +
-@@ -3024,9 +3023,7 @@ static int mvneta_open(struct net_device
+@@ -3028,9 +3027,7 @@ static int mvneta_open(struct net_device
        /* Enable per-CPU interrupt on all the CPU to handle our RX
         * queue interrupts
         */
@@ -55,7 +55,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
  
        /* Register a CPU notifier to handle the case where our CPU
-@@ -3313,9 +3310,7 @@ static int  mvneta_config_rss(struct mvn
+@@ -3317,9 +3314,7 @@ static int  mvneta_config_rss(struct mvn
  
        netif_tx_stop_all_queues(pp->dev);
  
index b025777df9a13f0977078d4dca681c8d801d2926..acb6c94bb265c14b38174cac20a00037de2ff9e6 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -1036,6 +1036,43 @@ static void mvneta_set_autoneg(struct mv
+@@ -1040,6 +1040,43 @@ static void mvneta_set_autoneg(struct mv
        }
  }
  
@@ -61,7 +61,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  /* This method sets defaults to the NETA port:
   *    Clears interrupt Cause and Mask registers.
   *    Clears all MAC tables.
-@@ -1053,14 +1090,10 @@ static void mvneta_defaults_set(struct m
+@@ -1057,14 +1094,10 @@ static void mvneta_defaults_set(struct m
        int max_cpu = num_present_cpus();
  
        /* Clear all Cause registers */
@@ -78,7 +78,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvreg_write(pp, MVNETA_INTR_ENABLE, 0);
  
        /* Enable MBUS Retry bit16 */
-@@ -2526,31 +2559,6 @@ static int mvneta_setup_txqs(struct mvne
+@@ -2530,31 +2563,6 @@ static int mvneta_setup_txqs(struct mvne
        return 0;
  }
  
@@ -110,7 +110,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static void mvneta_start_dev(struct mvneta_port *pp)
  {
        int cpu;
-@@ -2601,13 +2609,10 @@ static void mvneta_stop_dev(struct mvnet
+@@ -2605,13 +2613,10 @@ static void mvneta_stop_dev(struct mvnet
        mvneta_port_disable(pp);
  
        /* Clear all ethernet port interrupts */
@@ -126,7 +126,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        mvneta_tx_reset(pp);
        mvneta_rx_reset(pp);
-@@ -2919,9 +2924,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2923,9 +2928,7 @@ static int mvneta_percpu_notifier(struct
                }
  
                /* Mask all ethernet port interrupts */
@@ -137,7 +137,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                napi_enable(&port->napi);
  
  
-@@ -2936,14 +2939,8 @@ static int mvneta_percpu_notifier(struct
+@@ -2940,14 +2943,8 @@ static int mvneta_percpu_notifier(struct
                 */
                mvneta_percpu_elect(pp);
  
@@ -154,7 +154,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                mvreg_write(pp, MVNETA_INTR_MISC_MASK,
                        MVNETA_CAUSE_PHY_STATUS_CHANGE |
                        MVNETA_CAUSE_LINK_CHANGE |
-@@ -2954,9 +2951,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2958,9 +2955,7 @@ static int mvneta_percpu_notifier(struct
        case CPU_DOWN_PREPARE_FROZEN:
                netif_tx_stop_all_queues(pp->dev);
                /* Mask all ethernet port interrupts */
@@ -165,7 +165,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
                napi_synchronize(&port->napi);
                napi_disable(&port->napi);
-@@ -2972,10 +2967,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2976,10 +2971,7 @@ static int mvneta_percpu_notifier(struct
                /* Check if a new CPU must be elected now this on is down */
                mvneta_percpu_elect(pp);
                /* Unmask all ethernet port interrupts */
index a77bef44e4a9bd24de409b9c299e4bf9150e538c..1d3d6aaf1428b63912fa75b4cf50c97ced5cad5d 100644 (file)
@@ -31,7 +31,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Core clock */
        struct clk *clk;
-@@ -2853,6 +2857,12 @@ static void mvneta_percpu_elect(struct m
+@@ -2857,6 +2861,12 @@ static void mvneta_percpu_elect(struct m
  {
        int elected_cpu = 0, max_cpu, cpu, i = 0;
  
@@ -44,7 +44,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        /* Use the cpu associated to the rxq when it is online, in all
         * the other cases, use the cpu 0 which can't be offline.
         */
-@@ -2896,6 +2906,7 @@ static void mvneta_percpu_elect(struct m
+@@ -2900,6 +2910,7 @@ static void mvneta_percpu_elect(struct m
                i++;
  
        }
@@ -52,7 +52,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  static int mvneta_percpu_notifier(struct notifier_block *nfb,
-@@ -2950,8 +2961,13 @@ static int mvneta_percpu_notifier(struct
+@@ -2954,8 +2965,13 @@ static int mvneta_percpu_notifier(struct
        case CPU_DOWN_PREPARE:
        case CPU_DOWN_PREPARE_FROZEN:
                netif_tx_stop_all_queues(pp->dev);
index 9936ebf3204ec5a979cab1f432cbd5941c52c5db..878229cbf787f3b75d1b1fc4da60df561e3eda4d 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        /* Core clock */
        struct clk *clk;
-@@ -2853,16 +2854,14 @@ static void mvneta_percpu_disable(void *
+@@ -2857,16 +2858,14 @@ static void mvneta_percpu_disable(void *
        disable_percpu_irq(pp->dev->irq);
  }
  
@@ -47,7 +47,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        /* Use the cpu associated to the rxq when it is online, in all
         * the other cases, use the cpu 0 which can't be offline.
         */
-@@ -2906,7 +2905,6 @@ static void mvneta_percpu_elect(struct m
+@@ -2910,7 +2909,6 @@ static void mvneta_percpu_elect(struct m
                i++;
  
        }
@@ -55,7 +55,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  };
  
  static int mvneta_percpu_notifier(struct notifier_block *nfb,
-@@ -2920,6 +2918,14 @@ static int mvneta_percpu_notifier(struct
+@@ -2924,6 +2922,14 @@ static int mvneta_percpu_notifier(struct
        switch (action) {
        case CPU_ONLINE:
        case CPU_ONLINE_FROZEN:
@@ -70,7 +70,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                netif_tx_stop_all_queues(pp->dev);
  
                /* We have to synchronise on tha napi of each CPU
-@@ -2957,6 +2963,7 @@ static int mvneta_percpu_notifier(struct
+@@ -2961,6 +2967,7 @@ static int mvneta_percpu_notifier(struct
                        MVNETA_CAUSE_LINK_CHANGE |
                        MVNETA_CAUSE_PSC_SYNC_CHANGE);
                netif_tx_start_all_queues(pp->dev);
@@ -78,7 +78,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                break;
        case CPU_DOWN_PREPARE:
        case CPU_DOWN_PREPARE_FROZEN:
-@@ -2981,7 +2988,9 @@ static int mvneta_percpu_notifier(struct
+@@ -2985,7 +2992,9 @@ static int mvneta_percpu_notifier(struct
        case CPU_DEAD:
        case CPU_DEAD_FROZEN:
                /* Check if a new CPU must be elected now this on is down */
@@ -88,7 +88,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                /* Unmask all ethernet port interrupts */
                on_each_cpu(mvneta_percpu_unmask_interrupt, pp, true);
                mvreg_write(pp, MVNETA_INTR_MISC_MASK,
-@@ -3033,7 +3042,7 @@ static int mvneta_open(struct net_device
+@@ -3037,7 +3046,7 @@ static int mvneta_open(struct net_device
         */
        on_each_cpu(mvneta_percpu_enable, pp, true);
  
@@ -97,7 +97,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        /* Register a CPU notifier to handle the case where our CPU
         * might be taken offline.
         */
-@@ -3066,9 +3075,18 @@ static int mvneta_stop(struct net_device
+@@ -3070,9 +3079,18 @@ static int mvneta_stop(struct net_device
  {
        struct mvneta_port *pp = netdev_priv(dev);
  
@@ -116,7 +116,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        on_each_cpu(mvneta_percpu_disable, pp, true);
        free_percpu_irq(dev->irq, pp->ports);
        mvneta_cleanup_rxqs(pp);
-@@ -3339,7 +3357,9 @@ static int  mvneta_config_rss(struct mvn
+@@ -3343,7 +3361,9 @@ static int  mvneta_config_rss(struct mvn
        mvreg_write(pp, MVNETA_PORT_CONFIG, val);
  
        /* Update the elected CPU matching the new rxq_def */
index d343b3983f3bb9643911e63b2abc3e02c5545063..a1b5ca8c6a784f0cdf5f581cce5b1c64be45bc53 100644 (file)
@@ -495,7 +495,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  /* Start the Ethernet port RX and TX activity */
  static void mvneta_port_up(struct mvneta_port *pp)
  {
-@@ -1147,9 +1379,17 @@ static void mvneta_defaults_set(struct m
+@@ -1151,9 +1383,17 @@ static void mvneta_defaults_set(struct m
        mvreg_write(pp, MVNETA_PORT_RX_RESET, 0);
  
        /* Set Port Acceleration Mode */
@@ -514,7 +514,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        /* Update val of portCfg register accordingly with all RxQueue types */
        val = MVNETA_PORT_CONFIG_DEFL_VALUE(pp->rxq_def);
        mvreg_write(pp, MVNETA_PORT_CONFIG, val);
-@@ -1516,23 +1756,25 @@ static void mvneta_txq_done(struct mvnet
+@@ -1520,23 +1760,25 @@ static void mvneta_txq_done(struct mvnet
        }
  }
  
@@ -547,7 +547,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  static int mvneta_rx_refill(struct mvneta_port *pp,
                            struct mvneta_rx_desc *rx_desc)
  
-@@ -1540,7 +1782,7 @@ static int mvneta_rx_refill(struct mvnet
+@@ -1544,7 +1786,7 @@ static int mvneta_rx_refill(struct mvnet
        dma_addr_t phys_addr;
        void *data;
  
@@ -556,7 +556,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        if (!data)
                return -ENOMEM;
  
-@@ -1548,7 +1790,7 @@ static int mvneta_rx_refill(struct mvnet
+@@ -1552,7 +1794,7 @@ static int mvneta_rx_refill(struct mvnet
                                   MVNETA_RX_BUF_SIZE(pp->pkt_size),
                                   DMA_FROM_DEVICE);
        if (unlikely(dma_mapping_error(pp->dev->dev.parent, phys_addr))) {
@@ -565,7 +565,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                return -ENOMEM;
        }
  
-@@ -1594,22 +1836,156 @@ static void mvneta_rxq_drop_pkts(struct
+@@ -1598,22 +1840,156 @@ static void mvneta_rxq_drop_pkts(struct
        int rx_done, i;
  
        rx_done = mvneta_rxq_busy_desc_num_get(pp, rxq);
@@ -728,7 +728,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  {
        struct mvneta_pcpu_port *port = this_cpu_ptr(pp->ports);
        struct net_device *dev = pp->dev;
-@@ -1628,21 +2004,29 @@ static int mvneta_rx(struct mvneta_port
+@@ -1632,21 +2008,29 @@ static int mvneta_rx(struct mvneta_port
        /* Fairness NAPI loop */
        while (rx_done < rx_todo) {
                struct mvneta_rx_desc *rx_desc = mvneta_rxq_next_desc_get(rxq);
@@ -760,7 +760,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        dev->stats.rx_errors++;
                        mvneta_rx_error(pp, rx_desc);
                        /* leave the descriptor untouched */
-@@ -1653,7 +2037,7 @@ static int mvneta_rx(struct mvneta_port
+@@ -1657,7 +2041,7 @@ static int mvneta_rx(struct mvneta_port
                        /* better copy a small frame and not unmap the DMA region */
                        skb = netdev_alloc_skb_ip_align(dev, rx_bytes);
                        if (unlikely(!skb))
@@ -769,7 +769,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
                        dma_sync_single_range_for_cpu(dev->dev.parent,
                                                      rx_desc->buf_phys_addr,
-@@ -1671,26 +2055,31 @@ static int mvneta_rx(struct mvneta_port
+@@ -1675,26 +2059,31 @@ static int mvneta_rx(struct mvneta_port
                        rcvd_pkts++;
                        rcvd_bytes += rx_bytes;
  
@@ -807,7 +807,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                if (!skb)
                        goto err_drop_frame;
  
-@@ -2295,7 +2684,10 @@ static int mvneta_poll(struct napi_struc
+@@ -2299,7 +2688,10 @@ static int mvneta_poll(struct napi_struc
  
        if (rx_queue) {
                rx_queue = rx_queue - 1;
@@ -819,7 +819,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        }
  
        budget -= rx_done;
-@@ -2384,9 +2776,17 @@ static int mvneta_rxq_init(struct mvneta
+@@ -2388,9 +2780,17 @@ static int mvneta_rxq_init(struct mvneta
        mvneta_rx_pkts_coal_set(pp, rxq, rxq->pkts_coal);
        mvneta_rx_time_coal_set(pp, rxq, rxq->time_coal);
  
@@ -840,7 +840,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvneta_rxq_fill(pp, rxq, rxq->size);
  
        return 0;
-@@ -2659,6 +3059,9 @@ static int mvneta_change_mtu(struct net_
+@@ -2663,6 +3063,9 @@ static int mvneta_change_mtu(struct net_
        dev->mtu = mtu;
  
        if (!netif_running(dev)) {
@@ -850,7 +850,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                netdev_update_features(dev);
                return 0;
        }
-@@ -2671,6 +3074,9 @@ static int mvneta_change_mtu(struct net_
+@@ -2675,6 +3078,9 @@ static int mvneta_change_mtu(struct net_
        mvneta_cleanup_txqs(pp);
        mvneta_cleanup_rxqs(pp);
  
@@ -860,7 +860,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        pp->pkt_size = MVNETA_RX_PKT_SIZE(dev->mtu);
        pp->frag_size = SKB_DATA_ALIGN(MVNETA_RX_BUF_SIZE(pp->pkt_size)) +
                        SKB_DATA_ALIGN(sizeof(struct skb_shared_info));
-@@ -3563,6 +3969,7 @@ static int mvneta_probe(struct platform_
+@@ -3567,6 +3973,7 @@ static int mvneta_probe(struct platform_
        struct resource *res;
        struct device_node *dn = pdev->dev.of_node;
        struct device_node *phy_node;
@@ -868,7 +868,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        struct mvneta_port *pp;
        struct net_device *dev;
        const char *dt_mac_addr;
-@@ -3690,26 +4097,39 @@ static int mvneta_probe(struct platform_
+@@ -3694,26 +4101,39 @@ static int mvneta_probe(struct platform_
  
        pp->tx_csum_limit = tx_csum_limit;
  
@@ -914,7 +914,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        for_each_present_cpu(cpu) {
                struct mvneta_pcpu_port *port = per_cpu_ptr(pp->ports, cpu);
  
-@@ -3744,6 +4164,13 @@ static int mvneta_probe(struct platform_
+@@ -3748,6 +4168,13 @@ static int mvneta_probe(struct platform_
  
        return 0;
  
@@ -928,7 +928,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  err_free_stats:
        free_percpu(pp->stats);
  err_free_ports:
-@@ -3773,6 +4200,12 @@ static int mvneta_remove(struct platform
+@@ -3777,6 +4204,12 @@ static int mvneta_remove(struct platform
        of_node_put(pp->phy_node);
        free_netdev(dev);
  
index 210504c39e108eab90126b453ed7329c6406a60f..fb9859c5d285f0f0588f36ca30a6ecb31dd486c2 100644 (file)
@@ -64,7 +64,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                goto bm_mtu_err;
        }
        mvneta_bm_pool_bufsize_set(pp, bm_pool->buf_size, bm_pool->id);
-@@ -2064,14 +2066,14 @@ err_drop_frame:
+@@ -2068,14 +2070,14 @@ err_drop_frame:
                }
  
                /* Refill processing */
index a8e78df2e9c29ef928ad8be41128b9eb91980aaf..7058686c20f11a3230d99f0644342639fb7aa94f 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3484,17 +3484,17 @@ static int mvneta_stop(struct net_device
+@@ -3488,17 +3488,17 @@ static int mvneta_stop(struct net_device
        struct mvneta_port *pp = netdev_priv(dev);
  
        /* Inform that we are stopping so we don't want to setup the
@@ -42,7 +42,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        on_each_cpu(mvneta_percpu_disable, pp, true);
        free_percpu_irq(dev->irq, pp->ports);
        mvneta_cleanup_rxqs(pp);
-@@ -4027,6 +4027,7 @@ static int mvneta_probe(struct platform_
+@@ -4031,6 +4031,7 @@ static int mvneta_probe(struct platform_
        dev->ethtool_ops = &mvneta_eth_tool_ops;
  
        pp = netdev_priv(dev);
index c12d98a4e2c275d43f598d1642024cbf50742f58..4b319e26a7a8bee21cb61ed65c18f3e0a0ac433e 100644 (file)
@@ -33,7 +33,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
  #define IS_TSO_HEADER(txq, addr) \
        ((addr >= txq->tso_hdrs_phys) && \
-@@ -2762,9 +2761,6 @@ static int mvneta_rxq_init(struct mvneta
+@@ -2766,9 +2765,6 @@ static int mvneta_rxq_init(struct mvneta
        if (rxq->descs == NULL)
                return -ENOMEM;
  
@@ -43,7 +43,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        rxq->last_desc = rxq->size - 1;
  
        /* Set Rx descriptors queue starting address */
-@@ -2835,10 +2831,6 @@ static int mvneta_txq_init(struct mvneta
+@@ -2839,10 +2835,6 @@ static int mvneta_txq_init(struct mvneta
        if (txq->descs == NULL)
                return -ENOMEM;
  
index 07862008a7498039d8c8a7c95189fbdbe634cafd..fdc5663510bdc8af6128fd8697f3406f744b1dd9 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3040,6 +3040,20 @@ static int mvneta_check_mtu_valid(struct
+@@ -3044,6 +3044,20 @@ static int mvneta_check_mtu_valid(struct
        return mtu;
  }
  
@@ -36,7 +36,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  /* Change the device mtu */
  static int mvneta_change_mtu(struct net_device *dev, int mtu)
  {
-@@ -3064,6 +3078,7 @@ static int mvneta_change_mtu(struct net_
+@@ -3068,6 +3082,7 @@ static int mvneta_change_mtu(struct net_
         * reallocation of the queues
         */
        mvneta_stop_dev(pp);
@@ -44,7 +44,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        mvneta_cleanup_txqs(pp);
        mvneta_cleanup_rxqs(pp);
-@@ -3087,6 +3102,7 @@ static int mvneta_change_mtu(struct net_
+@@ -3091,6 +3106,7 @@ static int mvneta_change_mtu(struct net_
                return ret;
        }
  
@@ -52,7 +52,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        mvneta_start_dev(pp);
        mvneta_port_up(pp);
  
-@@ -3240,20 +3256,6 @@ static void mvneta_mdio_remove(struct mv
+@@ -3244,20 +3260,6 @@ static void mvneta_mdio_remove(struct mv
        pp->phy_dev = NULL;
  }
  
index fac283f3ee00cbc6b155d3e326ae0a5d85aba55e..79f245411e3da239f643a16facb4418ac1ae1766 100644 (file)
@@ -79,7 +79,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  
        struct mvneta_bm *bm_priv;
        struct mvneta_bm_pool *pool_long;
-@@ -1236,44 +1238,6 @@ static void mvneta_set_other_mcast_table
+@@ -1240,44 +1242,6 @@ static void mvneta_set_other_mcast_table
                mvreg_write(pp, MVNETA_DA_FILT_OTH_MCAST + offset, val);
  }
  
@@ -124,7 +124,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  static void mvneta_percpu_unmask_interrupt(void *arg)
  {
        struct mvneta_port *pp = arg;
-@@ -1421,7 +1385,6 @@ static void mvneta_defaults_set(struct m
+@@ -1425,7 +1389,6 @@ static void mvneta_defaults_set(struct m
        val &= ~MVNETA_PHY_POLLING_ENABLE;
        mvreg_write(pp, MVNETA_UNIT_CONTROL, val);
  
@@ -132,7 +132,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        mvneta_set_ucast_table(pp, -1);
        mvneta_set_special_mcast_table(pp, -1);
        mvneta_set_other_mcast_table(pp, -1);
-@@ -2614,26 +2577,11 @@ static irqreturn_t mvneta_isr(int irq, v
+@@ -2618,26 +2581,11 @@ static irqreturn_t mvneta_isr(int irq, v
        return IRQ_HANDLED;
  }
  
@@ -161,7 +161,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  /* NAPI handler
-@@ -2662,12 +2610,11 @@ static int mvneta_poll(struct napi_struc
+@@ -2666,12 +2614,11 @@ static int mvneta_poll(struct napi_struc
                u32 cause_misc = mvreg_read(pp, MVNETA_INTR_MISC_CAUSE);
  
                mvreg_write(pp, MVNETA_INTR_MISC_CAUSE, 0);
@@ -179,7 +179,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        }
  
        /* Release Tx descriptors */
-@@ -2983,7 +2930,7 @@ static void mvneta_start_dev(struct mvne
+@@ -2987,7 +2934,7 @@ static void mvneta_start_dev(struct mvne
                    MVNETA_CAUSE_LINK_CHANGE |
                    MVNETA_CAUSE_PSC_SYNC_CHANGE);
  
@@ -188,7 +188,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        netif_tx_start_all_queues(pp->dev);
  }
  
-@@ -2991,7 +2938,7 @@ static void mvneta_stop_dev(struct mvnet
+@@ -2995,7 +2942,7 @@ static void mvneta_stop_dev(struct mvnet
  {
        unsigned int cpu;
  
@@ -197,7 +197,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  
        for_each_online_cpu(cpu) {
                struct mvneta_pcpu_port *port = per_cpu_ptr(pp->ports, cpu);
-@@ -3161,99 +3108,219 @@ static int mvneta_set_mac_addr(struct ne
+@@ -3165,99 +3112,219 @@ static int mvneta_set_mac_addr(struct ne
        return 0;
  }
  
@@ -490,7 +490,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  /* Electing a CPU must be done in an atomic way: it should be done
-@@ -3501,10 +3568,7 @@ static int mvneta_ioctl(struct net_devic
+@@ -3505,10 +3572,7 @@ static int mvneta_ioctl(struct net_devic
  {
        struct mvneta_port *pp = netdev_priv(dev);
  
@@ -502,7 +502,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  /* Ethtool methods */
-@@ -3514,54 +3578,15 @@ int mvneta_ethtool_get_settings(struct n
+@@ -3518,54 +3582,15 @@ int mvneta_ethtool_get_settings(struct n
  {
        struct mvneta_port *pp = netdev_priv(dev);
  
@@ -559,7 +559,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  /* Set interrupt coalescing for ethtools */
-@@ -3669,7 +3694,8 @@ static void mvneta_ethtool_update_stats(
+@@ -3673,7 +3698,8 @@ static void mvneta_ethtool_update_stats(
  {
        const struct mvneta_statistic *s;
        void __iomem *base = pp->base;
@@ -569,7 +569,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        u64 val64;
        int i;
  
-@@ -3964,14 +3990,13 @@ static int mvneta_probe(struct platform_
+@@ -3968,14 +3994,13 @@ static int mvneta_probe(struct platform_
        const struct mbus_dram_target_info *dram_target_info;
        struct resource *res;
        struct device_node *dn = pdev->dev.of_node;
@@ -585,7 +585,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        int tx_csum_limit;
        int phy_mode;
        int err;
-@@ -3987,31 +4012,11 @@ static int mvneta_probe(struct platform_
+@@ -3991,31 +4016,11 @@ static int mvneta_probe(struct platform_
                goto err_free_netdev;
        }
  
@@ -618,7 +618,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        }
  
        dev->tx_queue_len = MVNETA_MAX_TXD;
-@@ -4022,12 +4027,7 @@ static int mvneta_probe(struct platform_
+@@ -4026,12 +4031,7 @@ static int mvneta_probe(struct platform_
  
        pp = netdev_priv(dev);
        spin_lock_init(&pp->lock);
@@ -632,7 +632,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        pp->cpu_notifier.notifier_call = mvneta_percpu_notifier;
  
        pp->rxq_def = rxq_def;
-@@ -4037,7 +4037,7 @@ static int mvneta_probe(struct platform_
+@@ -4041,7 +4041,7 @@ static int mvneta_probe(struct platform_
        pp->clk = devm_clk_get(&pdev->dev, NULL);
        if (IS_ERR(pp->clk)) {
                err = PTR_ERR(pp->clk);
@@ -641,7 +641,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        }
  
        clk_prepare_enable(pp->clk);
-@@ -4140,6 +4140,14 @@ static int mvneta_probe(struct platform_
+@@ -4144,6 +4144,14 @@ static int mvneta_probe(struct platform_
        dev->priv_flags |= IFF_UNICAST_FLT | IFF_LIVE_ADDR_CHANGE;
        dev->gso_max_segs = MVNETA_MAX_TSO_SEGS;
  
@@ -656,7 +656,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        err = register_netdev(dev);
        if (err < 0) {
                dev_err(&pdev->dev, "failed to register\n");
-@@ -4151,13 +4159,6 @@ static int mvneta_probe(struct platform_
+@@ -4155,13 +4163,6 @@ static int mvneta_probe(struct platform_
  
        platform_set_drvdata(pdev, pp->dev);
  
@@ -670,7 +670,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  
        return 0;
  
-@@ -4169,13 +4170,13 @@ err_netdev:
+@@ -4173,13 +4174,13 @@ err_netdev:
                                       1 << pp->id);
        }
  err_free_stats:
@@ -686,7 +686,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  err_free_irq:
        irq_dispose_mapping(dev->irq);
  err_free_netdev:
-@@ -4194,7 +4195,7 @@ static int mvneta_remove(struct platform
+@@ -4198,7 +4199,7 @@ static int mvneta_remove(struct platform
        free_percpu(pp->ports);
        free_percpu(pp->stats);
        irq_dispose_mapping(dev->irq);
index 034b5964363eccf9aac12a94acc4ca967bb464a8..b2f0ed5da5cd6e6f542cde2e5691f7bb092b5e98 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3589,6 +3589,13 @@ int mvneta_ethtool_set_settings(struct n
+@@ -3593,6 +3593,13 @@ int mvneta_ethtool_set_settings(struct n
        return phylink_ethtool_set_settings(pp->phylink, cmd);
  }
  
@@ -28,7 +28,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  /* Set interrupt coalescing for ethtools */
  static int mvneta_ethtool_set_coalesce(struct net_device *dev,
                                       struct ethtool_coalesce *c)
-@@ -3853,6 +3860,7 @@ const struct ethtool_ops mvneta_eth_tool
+@@ -3857,6 +3864,7 @@ const struct ethtool_ops mvneta_eth_tool
        .get_link       = ethtool_op_get_link,
        .get_settings   = mvneta_ethtool_get_settings,
        .set_settings   = mvneta_ethtool_set_settings,
index 75cd46e3da612056b82fe59333f0e14df4e60711..328dd0e18d6bb762eac1f727d47e7685e10a013e 100644 (file)
@@ -14,7 +14,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3208,6 +3208,8 @@ static void mvneta_mac_config(struct net
+@@ -3212,6 +3212,8 @@ static void mvneta_mac_config(struct net
  
        if (state->advertising & ADVERTISED_Pause)
                new_an |= MVNETA_GMAC_ADVERT_SYM_FLOW_CTRL;
@@ -23,7 +23,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  
        switch (mode) {
        case MLO_AN_SGMII:
-@@ -3232,7 +3234,7 @@ static void mvneta_mac_config(struct net
+@@ -3236,7 +3238,7 @@ static void mvneta_mac_config(struct net
                         /* The MAC only supports FD mode */
                         MVNETA_GMAC_CONFIG_FULL_DUPLEX;
  
@@ -32,7 +32,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                        new_an |= MVNETA_GMAC_AN_FLOW_CTRL_EN;
                break;
  
-@@ -3685,6 +3687,22 @@ static int mvneta_ethtool_set_ringparam(
+@@ -3689,6 +3691,22 @@ static int mvneta_ethtool_set_ringparam(
        return 0;
  }
  
@@ -55,7 +55,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  static void mvneta_ethtool_get_strings(struct net_device *netdev, u32 sset,
                                       u8 *data)
  {
-@@ -3866,6 +3884,8 @@ const struct ethtool_ops mvneta_eth_tool
+@@ -3870,6 +3888,8 @@ const struct ethtool_ops mvneta_eth_tool
        .get_drvinfo    = mvneta_ethtool_get_drvinfo,
        .get_ringparam  = mvneta_ethtool_get_ringparam,
        .set_ringparam  = mvneta_ethtool_set_ringparam,
index e10574c753d967654a7025be1219cff148dbe05d..9314c304a0e1883506592efa970116fc7dfdcf75 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3127,12 +3127,14 @@ static int mvneta_mac_support(struct net
+@@ -3131,12 +3131,14 @@ static int mvneta_mac_support(struct net
                state->supported = PHY_10BT_FEATURES |
                                   PHY_100BT_FEATURES |
                                   SUPPORTED_1000baseT_Full |
index 16ffab3d46ea0ce4302c88a83dc6e3ce7aaf5c7f..07588005939c6aba6079079b31ee7b8ae6b193f1 100644 (file)
@@ -15,7 +15,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3114,9 +3114,9 @@ static int mvneta_mac_support(struct net
+@@ -3118,9 +3118,9 @@ static int mvneta_mac_support(struct net
        switch (mode) {
        case MLO_AN_8023Z:
                state->supported = SUPPORTED_1000baseT_Full |
@@ -27,7 +27,7 @@ Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
                state->an_enabled = 1;
                break;
  
-@@ -3127,18 +3127,21 @@ static int mvneta_mac_support(struct net
+@@ -3131,18 +3131,21 @@ static int mvneta_mac_support(struct net
                state->supported = PHY_10BT_FEATURES |
                                   PHY_100BT_FEATURES |
                                   SUPPORTED_1000baseT_Full |
index b9043561d0711a4244fa5bcbad826ff0866712e8..47763ba92e9977fd3585dd9d0489afcb629f3de8 100644 (file)
@@ -68,7 +68,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
        u64 ethtool_stats[ARRAY_SIZE(mvneta_statistics)];
  
        u32 indir[MVNETA_RSS_LU_TABLE_SIZE];
-@@ -3276,6 +3293,18 @@ static void mvneta_mac_config(struct net
+@@ -3280,6 +3297,18 @@ static void mvneta_mac_config(struct net
                mvreg_write(pp, MVNETA_GMAC_AUTONEG_CONFIG, new_an);
  }
  
@@ -87,7 +87,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  static void mvneta_mac_link_down(struct net_device *ndev, unsigned int mode)
  {
        struct mvneta_port *pp = netdev_priv(ndev);
-@@ -3289,6 +3318,9 @@ static void mvneta_mac_link_down(struct
+@@ -3293,6 +3322,9 @@ static void mvneta_mac_link_down(struct
                val |= MVNETA_GMAC_FORCE_LINK_DOWN;
                mvreg_write(pp, MVNETA_GMAC_AUTONEG_CONFIG, val);
        }
@@ -97,7 +97,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  static void mvneta_mac_link_up(struct net_device *ndev, unsigned int mode,
-@@ -3305,6 +3337,11 @@ static void mvneta_mac_link_up(struct ne
+@@ -3309,6 +3341,11 @@ static void mvneta_mac_link_up(struct ne
        }
  
        mvneta_port_up(pp);
@@ -109,7 +109,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  }
  
  static const struct phylink_mac_ops mvneta_phylink_ops = {
-@@ -3744,6 +3781,13 @@ static void mvneta_ethtool_update_stats(
+@@ -3748,6 +3785,13 @@ static void mvneta_ethtool_update_stats(
                        val64 = (u64)high << 32 | low;
                        pp->ethtool_stats[i] += val64;
                        break;
@@ -123,7 +123,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
                }
        }
  }
-@@ -3867,6 +3911,47 @@ static int mvneta_ethtool_get_rxfh(struc
+@@ -3871,6 +3915,47 @@ static int mvneta_ethtool_get_rxfh(struc
        return 0;
  }
  
@@ -171,7 +171,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  static const struct net_device_ops mvneta_netdev_ops = {
        .ndo_open            = mvneta_open,
        .ndo_stop            = mvneta_stop,
-@@ -3898,6 +3983,8 @@ const struct ethtool_ops mvneta_eth_tool
+@@ -3902,6 +3987,8 @@ const struct ethtool_ops mvneta_eth_tool
        .get_rxnfc      = mvneta_ethtool_get_rxnfc,
        .get_rxfh       = mvneta_ethtool_get_rxfh,
        .set_rxfh       = mvneta_ethtool_set_rxfh,
index b3f9039081898ec4508f079df72a35ada6b3b282..428e460e26024dbde32b184f5c3132eb19b8ad9a 100644 (file)
@@ -10,7 +10,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
 
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3911,6 +3911,22 @@ static int mvneta_ethtool_get_rxfh(struc
+@@ -3915,6 +3915,22 @@ static int mvneta_ethtool_get_rxfh(struc
        return 0;
  }
  
@@ -33,7 +33,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  static int mvneta_ethtool_get_eee(struct net_device *dev,
                                  struct ethtool_eee *eee)
  {
-@@ -3983,6 +3999,8 @@ const struct ethtool_ops mvneta_eth_tool
+@@ -3987,6 +4003,8 @@ const struct ethtool_ops mvneta_eth_tool
        .get_rxnfc      = mvneta_ethtool_get_rxnfc,
        .get_rxfh       = mvneta_ethtool_get_rxfh,
        .set_rxfh       = mvneta_ethtool_set_rxfh,
index 7bd25935378e45b4083653c28b920ebe26e9c1b1..5405eefc9f80b8f5e279402defc04ab51fe3ab7b 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -1695,8 +1695,10 @@ static struct mvneta_tx_queue *mvneta_tx
+@@ -1699,8 +1699,10 @@ static struct mvneta_tx_queue *mvneta_tx
  
  /* Free tx queue skbuffs */
  static void mvneta_txq_bufs_free(struct mvneta_port *pp,
@@ -12,7 +12,7 @@
        int i;
  
        for (i = 0; i < num; i++) {
-@@ -1704,6 +1706,11 @@ static void mvneta_txq_bufs_free(struct
+@@ -1708,6 +1710,11 @@ static void mvneta_txq_bufs_free(struct
                        txq->txq_get_index;
                struct sk_buff *skb = txq->tx_skb[txq->txq_get_index];
  
@@ -24,7 +24,7 @@
                mvneta_txq_inc_get(txq);
  
                if (!IS_TSO_HEADER(txq, tx_desc->buf_phys_addr))
-@@ -1714,6 +1721,8 @@ static void mvneta_txq_bufs_free(struct
+@@ -1718,6 +1725,8 @@ static void mvneta_txq_bufs_free(struct
                        continue;
                dev_kfree_skb_any(skb);
        }
@@ -33,7 +33,7 @@
  }
  
  /* Handle end of transmission */
-@@ -1727,7 +1736,7 @@ static void mvneta_txq_done(struct mvnet
+@@ -1731,7 +1740,7 @@ static void mvneta_txq_done(struct mvnet
        if (!tx_done)
                return;
  
@@ -42,7 +42,7 @@
  
        txq->count -= tx_done;
  
-@@ -2334,6 +2343,8 @@ out:
+@@ -2338,6 +2347,8 @@ out:
                struct mvneta_pcpu_stats *stats = this_cpu_ptr(pp->stats);
                struct netdev_queue *nq = netdev_get_tx_queue(dev, txq_id);
  
@@ -51,7 +51,7 @@
                txq->count += frags;
                mvneta_txq_pend_desc_add(pp, txq, frags);
  
-@@ -2358,9 +2369,10 @@ static void mvneta_txq_done_force(struct
+@@ -2362,9 +2373,10 @@ static void mvneta_txq_done_force(struct
                                  struct mvneta_tx_queue *txq)
  
  {
@@ -63,7 +63,7 @@
  
        /* reset txq */
        txq->count = 0;
-@@ -2841,6 +2853,8 @@ static int mvneta_txq_init(struct mvneta
+@@ -2845,6 +2857,8 @@ static int mvneta_txq_init(struct mvneta
  static void mvneta_txq_deinit(struct mvneta_port *pp,
                              struct mvneta_tx_queue *txq)
  {
@@ -72,7 +72,7 @@
        kfree(txq->tx_skb);
  
        if (txq->tso_hdrs)
-@@ -2852,6 +2866,8 @@ static void mvneta_txq_deinit(struct mvn
+@@ -2856,6 +2870,8 @@ static void mvneta_txq_deinit(struct mvn
                                  txq->size * MVNETA_DESC_ALIGNED_SIZE,
                                  txq->descs, txq->descs_phys);
  
index 5dba311d93a6d325fc110b8218d56209bd78e9dd..a0627309c2ad30a0ba1ec8973b60a5bf9d61ff11 100644 (file)
@@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 ---
 --- a/drivers/net/ethernet/marvell/mvneta.c
 +++ b/drivers/net/ethernet/marvell/mvneta.c
-@@ -3984,6 +3984,16 @@ static int mvneta_ethtool_set_eee(struct
+@@ -3988,6 +3988,16 @@ static int mvneta_ethtool_set_eee(struct
        return phylink_ethtool_set_eee(pp->phylink, eee);
  }
  
@@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  static const struct net_device_ops mvneta_netdev_ops = {
        .ndo_open            = mvneta_open,
        .ndo_stop            = mvneta_stop,
-@@ -3994,6 +4004,7 @@ static const struct net_device_ops mvnet
+@@ -3998,6 +4008,7 @@ static const struct net_device_ops mvnet
        .ndo_fix_features    = mvneta_fix_features,
        .ndo_get_stats64     = mvneta_get_stats64,
        .ndo_do_ioctl        = mvneta_ioctl,
index 2a607c6c62f80ca86fb95f8406d0d416238c0776..6bffa6fe6a12518cbb3ec1460c8f3b2b158fe008 100644 (file)
@@ -153,7 +153,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  }
 --- a/init/main.c
 +++ b/init/main.c
-@@ -88,6 +88,10 @@
+@@ -89,6 +89,10 @@
  #include <asm/sections.h>
  #include <asm/cacheflush.h>
  
@@ -164,7 +164,7 @@ Signed-off-by: Adrian Panella <ianchi74@outlook.com>
  static int kernel_init(void *);
  
  extern void init_IRQ(void);
-@@ -560,6 +564,18 @@ asmlinkage __visible void __init start_k
+@@ -562,6 +566,18 @@ asmlinkage __visible void __init start_k
        page_alloc_init();
  
        pr_notice("Kernel command line: %s\n", boot_command_line);
index b7028e49d5827e2ac0aa4dd0997e107ec1f48f0b..7d38df30305be464bfe4081beba1793b1bed1f21 100644 (file)
@@ -226,6 +226,7 @@ CONFIG_NR_CPUS=8
 # CONFIG_NUMA is not set
 CONFIG_OUTPUT_FORMAT="elf64-x86-64"
 CONFIG_PADATA=y
+CONFIG_PAGE_TABLE_ISOLATION=y
 CONFIG_PARAVIRT=y
 CONFIG_PARAVIRT_CLOCK=y
 # CONFIG_PARAVIRT_DEBUG is not set