Commit 0e8860d2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull networking fixes from Jakub Kicinski:
 "Including fixes from ipsec and netfilter.

  No known outstanding regressions.

  Fixes to fixes:

   - virtio-net: set queues after driver_ok, avoid a potential race
     added by recent fix

   - Revert "vlan: Fix VLAN 0 memory leak", it may lead to a warning
     when VLAN 0 is registered explicitly

   - nf_tables:
      - fix false-positive lockdep splat in recent fixes
      - don't fail inserts if duplicate has expired (fix test failures)
      - fix races between garbage collection and netns dismantle

  Current release - new code bugs:

   - mlx5: Fix mlx5_cmd_update_root_ft() error flow

  Previous releases - regressions:

   - phy: fix IRQ-based wake-on-lan over hibernate / power off

  Previous releases - always broken:

   - sock: fix misuse of sk_under_memory_pressure() preventing system
     from exiting global TCP memory pressure if a single cgroup is under
     pressure

   - fix the RTO timer retransmitting skb every 1ms if linear option is
     enabled

   - af_key: fix sadb_x_filter validation, amment netlink policy

   - ipsec: fix slab-use-after-free in decode_session6()

   - macb: in ZynqMP resume always configure PS GTR for non-wakeup
     source

  Misc:

   - netfilter: set default timeout to 3 secs for sctp shutdown send and
     recv state (from 300ms), align with protocol timers"

* tag 'net-6.5-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (49 commits)
  ice: Block switchdev mode when ADQ is active and vice versa
  qede: fix firmware halt over suspend and resume
  net: do not allow gso_size to be set to GSO_BY_FRAGS
  sock: Fix misuse of sk_under_memory_pressure()
  sfc: don't fail probe if MAE/TC setup fails
  sfc: don't unregister flow_indr if it was never registered
  net: dsa: mv88e6xxx: Wait for EEPROM done before HW reset
  net/mlx5: Fix mlx5_cmd_update_root_ft() error flow
  net/mlx5e: XDP, Fix fifo overrun on XDP_REDIRECT
  i40e: fix misleading debug logs
  iavf: fix FDIR rule fields masks validation
  ipv6: fix indentation of a config attribute
  mailmap: add entries for Simon Horman
  broadcom: b44: Use b44_writephy() return value
  net: openvswitch: reject negative ifindex
  team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
  net: phy: broadcom: stub c45 read/write for 54810
  netfilter: nft_dynset: disallow object maps
  netfilter: nf_tables: GC transaction race with netns dismantle
  netfilter: nf_tables: fix GC transaction races with netns and netlink event exit path
  ...
parents 1ada9c07 820a38d8
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -538,6 +538,8 @@ Shuah Khan <shuah@kernel.org> <shuah.kh@samsung.com>
Sibi Sankar <quic_sibis@quicinc.com> <sibis@codeaurora.org>
Sid Manning <quic_sidneym@quicinc.com> <sidneym@codeaurora.org>
Simon Arlott <simon@octiron.net> <simon@fire.lp0.eu>
Simon Horman <horms@kernel.org> <simon.horman@corigine.com>
Simon Horman <horms@kernel.org> <simon.horman@netronome.com>
Simon Kelley <simon@thekelleys.org.uk>
Sricharan Ramabadhran <quic_srichara@quicinc.com> <sricharan@codeaurora.org>
Srinivas Ramana <quic_sramana@quicinc.com> <sramana@codeaurora.org>
+2 −2
Original line number Diff line number Diff line
@@ -178,10 +178,10 @@ nf_conntrack_sctp_timeout_established - INTEGER (seconds)
	Default is set to (hb_interval * path_max_retrans + rto_max)

nf_conntrack_sctp_timeout_shutdown_sent - INTEGER (seconds)
	default 0.3
	default 3

nf_conntrack_sctp_timeout_shutdown_recd - INTEGER (seconds)
	default 0.3
	default 3

nf_conntrack_sctp_timeout_shutdown_ack_sent - INTEGER (seconds)
	default 3
+8 −0
Original line number Diff line number Diff line
@@ -3034,6 +3034,14 @@ static void mv88e6xxx_hardware_reset(struct mv88e6xxx_chip *chip)

	/* If there is a GPIO connected to the reset pin, toggle it */
	if (gpiod) {
		/* If the switch has just been reset and not yet completed
		 * loading EEPROM, the reset may interrupt the I2C transaction
		 * mid-byte, causing the first EEPROM read after the reset
		 * from the wrong location resulting in the switch booting
		 * to wrong mode and inoperable.
		 */
		mv88e6xxx_g1_wait_eeprom_done(chip);

		gpiod_set_value_cansleep(gpiod, 1);
		usleep_range(10000, 20000);
		gpiod_set_value_cansleep(gpiod, 0);
+3 −5
Original line number Diff line number Diff line
@@ -1793,11 +1793,9 @@ static int b44_nway_reset(struct net_device *dev)
	b44_readphy(bp, MII_BMCR, &bmcr);
	b44_readphy(bp, MII_BMCR, &bmcr);
	r = -EINVAL;
	if (bmcr & BMCR_ANENABLE) {
		b44_writephy(bp, MII_BMCR,
	if (bmcr & BMCR_ANENABLE)
		r = b44_writephy(bp, MII_BMCR,
				 bmcr | BMCR_ANRESTART);
		r = 0;
	}
	spin_unlock_irq(&bp->lock);

	return r;
+6 −3
Original line number Diff line number Diff line
@@ -5194,6 +5194,9 @@ static int __maybe_unused macb_suspend(struct device *dev)
	unsigned int q;
	int err;

	if (!device_may_wakeup(&bp->dev->dev))
		phy_exit(bp->sgmii_phy);

	if (!netif_running(netdev))
		return 0;

@@ -5254,7 +5257,6 @@ static int __maybe_unused macb_suspend(struct device *dev)
	if (!(bp->wol & MACB_WOL_ENABLED)) {
		rtnl_lock();
		phylink_stop(bp->phylink);
		phy_exit(bp->sgmii_phy);
		rtnl_unlock();
		spin_lock_irqsave(&bp->lock, flags);
		macb_reset_hw(bp);
@@ -5284,6 +5286,9 @@ static int __maybe_unused macb_resume(struct device *dev)
	unsigned int q;
	int err;

	if (!device_may_wakeup(&bp->dev->dev))
		phy_init(bp->sgmii_phy);

	if (!netif_running(netdev))
		return 0;

@@ -5344,8 +5349,6 @@ static int __maybe_unused macb_resume(struct device *dev)
	macb_set_rx_mode(netdev);
	macb_restore_features(bp);
	rtnl_lock();
	if (!device_may_wakeup(&bp->dev->dev))
		phy_init(bp->sgmii_phy);

	phylink_start(bp->phylink);
	rtnl_unlock();
Loading