Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9a431ef9 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull networking fixes from David Miller:

 1) Check iwlwifi 9000 reorder buffer out-of-space condition properly,
    from Sara Sharon.

 2) Fix RCU splat in qualcomm rmnet driver, from Subash Abhinov
    Kasiviswanathan.

 3) Fix session and tunnel release races in l2tp, from Guillaume Nault
    and Sabrina Dubroca.

 4) Fix endian bug in sctp_diag_dump(), from Dan Carpenter.

 5) Several mlx5 driver fixes from the Mellanox folks (max flow counters
    cap check, invalid memory access in IPoIB support, etc.)

 6) tun_get_user() should bail if skb->len is zero, from Alexander
    Potapenko.

 7) Fix RCU lookups in inetpeer, from Eric Dumazet.

 8) Fix locking in packet_do_bund().

 9) Handle cb->start() error properly in netlink dump code, from Jason
    A. Donenfeld.

10) Handle multicast properly in UDP socket early demux code. From Paolo
    Abeni.

11) Several erspan bug fixes in ip_gre, from Xin Long.

12) Fix use-after-free in socket filter code, in order to handle the
    fact that listener lock is no longer taken during the three-way TCP
    handshake. From Eric Dumazet.

13) Fix infoleak in RTM_GETSTATS, from Nikolay Aleksandrov.

14) Fix tail call generation in x86-64 BPF JIT, from Alexei Starovoitov.

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (77 commits)
  net: 8021q: skip packets if the vlan is down
  bpf: fix bpf_tail_call() x64 JIT
  net: stmmac: dwmac-rk: Add RK3128 GMAC support
  rndis_host: support Novatel Verizon USB730L
  net: rtnetlink: fix info leak in RTM_GETSTATS call
  socket, bpf: fix possible use after free
  mlxsw: spectrum_router: Track RIF of IPIP next hops
  mlxsw: spectrum_router: Move VRF refcounting
  net: hns3: Fix an error handling path in 'hclge_rss_init_hw()'
  net: mvpp2: Fix clock resource by adding an optional bus clock
  r8152: add Linksys USB3GIGV1 id
  l2tp: fix l2tp_eth module loading
  ip_gre: erspan device should keep dst
  ip_gre: set tunnel hlen properly in erspan_tunnel_init
  ip_gre: check packet length and mtu correctly in erspan_xmit
  ip_gre: get key from session_id correctly in erspan_rcv
  tipc: use only positive error codes in messages
  ppp: fix __percpu annotation
  udp: perform source validation for mcast early demux
  IPv4: early demux can return an error code
  ...
parents 42b76d0e e769fcec
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -21,8 +21,9 @@ Required properties:
	- main controller clock (for both armada-375-pp2 and armada-7k-pp2)
	- GOP clock (for both armada-375-pp2 and armada-7k-pp2)
	- MG clock (only for armada-7k-pp2)
- clock-names: names of used clocks, must be "pp_clk", "gop_clk" and
  "mg_clk" (the latter only for armada-7k-pp2).
	- AXI clock (only for armada-7k-pp2)
- clock-names: names of used clocks, must be "pp_clk", "gop_clk", "mg_clk"
  and "axi_clk" (the 2 latter only for armada-7k-pp2).

The ethernet ports are represented by subnodes. At least one port is
required.
@@ -78,8 +79,9 @@ Example for marvell,armada-7k-pp2:
cpm_ethernet: ethernet@0 {
	compatible = "marvell,armada-7k-pp22";
	reg = <0x0 0x100000>, <0x129000 0xb000>;
	clocks = <&cpm_syscon0 1 3>, <&cpm_syscon0 1 9>, <&cpm_syscon0 1 5>;
	clock-names = "pp_clk", "gop_clk", "gp_clk";
	clocks = <&cpm_syscon0 1 3>, <&cpm_syscon0 1 9>,
		 <&cpm_syscon0 1 5>, <&cpm_syscon0 1 18>;
	clock-names = "pp_clk", "gop_clk", "gp_clk", "axi_clk";

	eth0: eth0 {
		interrupts = <ICU_GRP_NSR 39 IRQ_TYPE_LEVEL_HIGH>,
+1 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ The device node has following properties.

Required properties:
 - compatible: should be "rockchip,<name>-gamc"
   "rockchip,rk3128-gmac": found on RK312x SoCs
   "rockchip,rk3228-gmac": found on RK322x SoCs
   "rockchip,rk3288-gmac": found on RK3288 SoCs
   "rockchip,rk3328-gmac": found on RK3328 SoCs
+2 −2
Original line number Diff line number Diff line
@@ -284,9 +284,9 @@ static void emit_bpf_tail_call(u8 **pprog)
	/* if (index >= array->map.max_entries)
	 *   goto out;
	 */
	EMIT4(0x48, 0x8B, 0x46,                   /* mov rax, qword ptr [rsi + 16] */
	EMIT2(0x89, 0xD2);                        /* mov edx, edx */
	EMIT3(0x39, 0x56,                         /* cmp dword ptr [rsi + 16], edx */
	      offsetof(struct bpf_array, map.max_entries));
	EMIT3(0x48, 0x39, 0xD0);                  /* cmp rax, rdx */
#define OFFSET1 43 /* number of bytes to jump */
	EMIT2(X86_JBE, OFFSET1);                  /* jbe out */
	label1 = cnt;
+6 −0
Original line number Diff line number Diff line
@@ -1100,6 +1100,10 @@ static int mv88e6xxx_port_check_hw_vlan(struct dsa_switch *ds, int port,
	};
	int i, err;

	/* DSA and CPU ports have to be members of multiple vlans */
	if (dsa_is_dsa_port(ds, port) || dsa_is_cpu_port(ds, port))
		return 0;

	if (!vid_begin)
		return -EOPNOTSUPP;

@@ -3947,7 +3951,9 @@ static void mv88e6xxx_remove(struct mdio_device *mdiodev)
	if (chip->irq > 0) {
		if (chip->info->g2_irqs > 0)
			mv88e6xxx_g2_irq_free(chip);
		mutex_lock(&chip->reg_lock);
		mv88e6xxx_g1_irq_free(chip);
		mutex_unlock(&chip->reg_lock);
	}
}

+4 −0
Original line number Diff line number Diff line
@@ -51,6 +51,10 @@

#define AQ_CFG_SKB_FRAGS_MAX   32U

/* Number of descriptors available in one ring to resume this ring queue
 */
#define AQ_CFG_RESTART_DESC_THRES   (AQ_CFG_SKB_FRAGS_MAX * 2)

#define AQ_CFG_NAPI_WEIGHT     64U

#define AQ_CFG_MULTICAST_ADDRESS_MAX     32U
Loading