Commit 63467137 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull networking fixes from Paolo Abeni:
 "Including fixes from Netfilter and IPsec.

  Current release - regressions:

   - netfilter: nft_set_pipapo:
      - don't return bogus extension pointer
      - fix null deref for empty set

  Current release - new code bugs:

   - core: prevent deadlocks when enabling NAPIs with mixed kthread
     config

   - eth: netdevsim: Fix wild pointer access in nsim_queue_free().

  Previous releases - regressions:

   - page_pool: allow enabling recycling late, fix false positive
     warning

   - sched: ets: use old 'nbands' while purging unused classes

   - xfrm:
      - restore GSO for SW crypto
      - bring back device check in validate_xmit_xfrm

   - tls: handle data disappearing from under the TLS ULP

   - ptp: prevent possible ABBA deadlock in ptp_clock_freerun()

   - eth:
      - bnxt: fill data page pool with frags if PAGE_SIZE > BNXT_RX_PAGE_SIZE
      - hv_netvsc: fix panic during namespace deletion with VF

  Previous releases - always broken:

   - netfilter: fix refcount leak on table dump

   - vsock: do not allow binding to VMADDR_PORT_ANY

   - sctp: linearize cloned gso packets in sctp_rcv

   - eth:
      - hibmcge: fix the division by zero issue
      - microchip: fix KSZ8863 reset problem"

* tag 'net-6.17-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (54 commits)
  net: usb: asix_devices: add phy_mask for ax88772 mdio bus
  net: kcm: Fix race condition in kcm_unattach()
  selftests: net/forwarding: test purge of active DWRR classes
  net/sched: ets: use old 'nbands' while purging unused classes
  bnxt: fill data page pool with frags if PAGE_SIZE > BNXT_RX_PAGE_SIZE
  netdevsim: Fix wild pointer access in nsim_queue_free().
  net: mctp: Fix bad kfree_skb in bind lookup test
  netfilter: nf_tables: reject duplicate device on updates
  ipvs: Fix estimator kthreads preferred affinity
  netfilter: nft_set_pipapo: fix null deref for empty set
  selftests: tls: test TCP stealing data from under the TLS socket
  tls: handle data disappearing from under the TLS ULP
  ptp: prevent possible ABBA deadlock in ptp_clock_freerun()
  ixgbe: prevent from unwanted interface name changes
  devlink: let driver opt out of automatic phys_port_name generation
  net: prevent deadlocks when enabling NAPIs with mixed kthread config
  net: update NAPI threaded config even for disabled NAPIs
  selftests: drv-net: don't assume device has only 2 queues
  docs: Fix name for net.ipv4.udp_child_hash_entries
  riscv: dts: thead: Add APB clocks for TH1520 GMACs
  ...
parents 0cc53520 4faff709
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -62,11 +62,13 @@ properties:
    items:
      - description: GMAC main clock
      - description: Peripheral registers interface clock
      - description: APB glue registers interface clock

  clock-names:
    items:
      - const: stmmaceth
      - const: pclk
      - const: apb

  interrupts:
    items:
@@ -88,8 +90,8 @@ examples:
        compatible = "thead,th1520-gmac", "snps,dwmac-3.70a";
        reg = <0xe7070000 0x2000>, <0xec003000 0x1000>;
        reg-names = "dwmac", "apb";
        clocks = <&clk 1>, <&clk 2>;
        clock-names = "stmmaceth", "pclk";
        clocks = <&clk 1>, <&clk 2>, <&clk 3>;
        clock-names = "stmmaceth", "pclk", "apb";
        interrupts = <66>;
        interrupt-names = "macirq";
        phy-mode = "rgmii-id";
+1 −1
Original line number Diff line number Diff line
@@ -1420,7 +1420,7 @@ udp_hash_entries - INTEGER
	A negative value means the networking namespace does not own its
	hash buckets and shares the initial networking namespace's one.

udp_child_ehash_entries - INTEGER
udp_child_hash_entries - INTEGER
	Control the number of hash buckets for UDP sockets in the child
	networking namespace, which must be set before clone() or unshare().

+3 −5
Original line number Diff line number Diff line
@@ -12584,10 +12584,9 @@ S: Supported
F:	drivers/cpufreq/intel_pstate.c
INTEL PTP DFL ToD DRIVER
M:	Tianfei Zhang <tianfei.zhang@intel.com>
L:	linux-fpga@vger.kernel.org
L:	netdev@vger.kernel.org
S:	Maintained
S:	Orphan
F:	drivers/ptp/ptp_dfl_tod.c
INTEL QUADRATURE ENCODER PERIPHERAL DRIVER
@@ -12725,9 +12724,8 @@ S: Maintained
F:	drivers/platform/x86/intel/wmi/thunderbolt.c
INTEL WWAN IOSM DRIVER
M:	M Chetan Kumar <m.chetan.kumar@intel.com>
L:	netdev@vger.kernel.org
S:	Maintained
S:	Orphan
F:	drivers/net/wwan/iosm/
INTEL(R) FLEXIBLE RETURN AND EVENT DELIVERY
@@ -15674,7 +15672,6 @@ MEDIATEK T7XX 5G WWAN MODEM DRIVER
M:	Chandrashekar Devegowda <chandrashekar.devegowda@intel.com>
R:	Chiranjeevi Rapolu <chiranjeevi.rapolu@linux.intel.com>
R:	Liu Haijun <haijun.liu@mediatek.com>
R:	M Chetan Kumar <m.chetan.kumar@linux.intel.com>
R:	Ricardo Martinez <ricardo.martinez@linux.intel.com>
L:	netdev@vger.kernel.org
S:	Supported
@@ -17451,6 +17448,7 @@ F: drivers/net/ethernet/neterion/
NETFILTER
M:	Pablo Neira Ayuso <pablo@netfilter.org>
M:	Jozsef Kadlecsik <kadlec@netfilter.org>
M:	Florian Westphal <fw@strlen.de>
L:	netfilter-devel@vger.kernel.org
L:	coreteam@netfilter.org
S:	Maintained
+6 −4
Original line number Diff line number Diff line
@@ -297,8 +297,9 @@ gmac1: ethernet@ffe7060000 {
			reg-names = "dwmac", "apb";
			interrupts = <67 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "macirq";
			clocks = <&clk CLK_GMAC_AXI>, <&clk CLK_GMAC1>;
			clock-names = "stmmaceth", "pclk";
			clocks = <&clk CLK_GMAC_AXI>, <&clk CLK_GMAC1>,
				 <&clk CLK_PERISYS_APB4_HCLK>;
			clock-names = "stmmaceth", "pclk", "apb";
			snps,pbl = <32>;
			snps,fixed-burst;
			snps,multicast-filter-bins = <64>;
@@ -319,8 +320,9 @@ gmac0: ethernet@ffe7070000 {
			reg-names = "dwmac", "apb";
			interrupts = <66 IRQ_TYPE_LEVEL_HIGH>;
			interrupt-names = "macirq";
			clocks = <&clk CLK_GMAC_AXI>, <&clk CLK_GMAC0>;
			clock-names = "stmmaceth", "pclk";
			clocks = <&clk CLK_GMAC_AXI>, <&clk CLK_GMAC0>,
				 <&clk CLK_PERISYS_APB4_HCLK>;
			clock-names = "stmmaceth", "pclk", "apb";
			snps,pbl = <32>;
			snps,fixed-burst;
			snps,multicast-filter-bins = <64>;
+11 −9
Original line number Diff line number Diff line
@@ -36,15 +36,14 @@

static void ksz_cfg(struct ksz_device *dev, u32 addr, u8 bits, bool set)
{
	regmap_update_bits(ksz_regmap_8(dev), addr, bits, set ? bits : 0);
	ksz_rmw8(dev, addr, bits, set ? bits : 0);
}

static void ksz_port_cfg(struct ksz_device *dev, int port, int offset, u8 bits,
			 bool set)
{
	regmap_update_bits(ksz_regmap_8(dev),
			   dev->dev_ops->get_port_addr(port, offset),
			   bits, set ? bits : 0);
	ksz_rmw8(dev, dev->dev_ops->get_port_addr(port, offset), bits,
		 set ? bits : 0);
}

/**
@@ -1955,16 +1954,19 @@ int ksz8_setup(struct dsa_switch *ds)
	ksz_cfg(dev, S_LINK_AGING_CTRL, SW_LINK_AUTO_AGING, true);

	/* Enable aggressive back off algorithm in half duplex mode. */
	regmap_update_bits(ksz_regmap_8(dev), REG_SW_CTRL_1,
			   SW_AGGR_BACKOFF, SW_AGGR_BACKOFF);
	ret = ksz_rmw8(dev, REG_SW_CTRL_1, SW_AGGR_BACKOFF, SW_AGGR_BACKOFF);
	if (ret)
		return ret;

	/*
	 * Make sure unicast VLAN boundary is set as default and
	 * enable no excessive collision drop.
	 */
	regmap_update_bits(ksz_regmap_8(dev), REG_SW_CTRL_2,
	ret = ksz_rmw8(dev, REG_SW_CTRL_2,
		       UNICAST_VLAN_BOUNDARY | NO_EXC_COLLISION_DROP,
		       UNICAST_VLAN_BOUNDARY | NO_EXC_COLLISION_DROP);
	if (ret)
		return ret;

	ksz_cfg(dev, S_REPLACE_VID_CTRL, SW_REPLACE_VID, false);

Loading