Commit 08d0d346 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull networking fixes from Paolo Abeni:
 "Including fixes from netfilter.

  Current release - regressions:

   - ipmr: free mr_table after RCU grace period.

  Previous releases - regressions:

   - core: add net_iov_init() and use it to initialize ->page_type

   - sched: taprio: fix NULL pointer dereference in class dump

   - netfilter: nf_tables:
      - use list_del_rcu for netlink hooks
      - fix strict mode inbound policy matching

   - tcp: make probe0 timer handle expired user timeout

   - vrf: fix a potential NPD when removing a port from a VRF

   - eth: ice:
      - fix NULL pointer dereference in ice_reset_all_vfs()
      - fix infinite recursion in ice_cfg_tx_topo via ice_init_dev_hw

  Previous releases - always broken:

   - page_pool: fix memory-provider leak in error path

   - sched: sch_cake: annotate data-races in cake_dump_stats()

   - mptcp: fix scheduling with atomic in timestamp sockopt

   - psp: check for device unregister when creating assoc

   - tls: fix strparser anchor skb leak on offload RX setup failure

   - eth:
      - stmmac: prevent NULL deref when RX memory exhausted
      - airoha: do not read uninitialized fragment address
      - rtl8150: fix use-after-free in rtl8150_start_xmit()

  Misc:

   - add Ido Schimmel as IPv4/IPv6 maintainer

   - add David Heidelberg as NFC subsystem maintainer"

* tag 'net-7.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (79 commits)
  net/sched: cls_flower: revert unintended changes
  sfc: fix error code in efx_devlink_info_running_versions()
  net: tls: fix strparser anchor skb leak on offload RX setup failure
  ice: add dpll peer notification for paired SMA and U.FL pins
  ice: fix missing dpll notifications for SW pins
  dpll: export __dpll_pin_change_ntf() for use under dpll_lock
  ice: fix SMA and U.FL pin state changes affecting paired pin
  ice: fix missing SMA pin initialization in DPLL subsystem
  ice: fix infinite recursion in ice_cfg_tx_topo via ice_init_dev_hw
  ice: fix NULL pointer dereference in ice_reset_all_vfs()
  iavf: add VIRTCHNL_OP_ADD_VLAN to success completion handler
  iavf: wait for PF confirmation before removing VLAN filters
  iavf: stop removing VLAN filters from PF on interface down
  iavf: rename IAVF_VLAN_IS_NEW to IAVF_VLAN_ADDING
  page_pool: fix memory-provider leak in page_pool_create_percpu() error path
  bonding: 3ad: implement proper RCU rules for port->aggregator
  net: airoha: Do not return err in ndo_stop() callback
  hv_sock: fix ARM64 support
  MAINTAINERS: update the IPv4/IPv6 entry and add Ido Schimmel
  selftests: drv-net: clarify linters and frameworks in README
  ...
parents 6cd70263 1e01abec
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -188,6 +188,7 @@ operations:
      name: dev-set
      doc: Set the configuration of a PSP device.
      attribute-set: dev
      flags: [admin-perm]
      do:
        request:
          attributes:
@@ -207,6 +208,7 @@ operations:
      name: key-rotate
      doc: Rotate the device key.
      attribute-set: dev
      flags: [admin-perm]
      do:
        request:
          attributes:
+52 −18
Original line number Diff line number Diff line
@@ -18672,19 +18672,59 @@ F: net/xfrm/
F:	tools/testing/selftests/net/ipsec.c
NETWORKING [IPv4/IPv6]
M:	"David S. Miller" <davem@davemloft.net>
M:	David Ahern <dsahern@kernel.org>
M:	Ido Schimmel <idosch@nvidia.com>
L:	netdev@vger.kernel.org
S:	Maintained
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git
F:	arch/x86/net/*
F:	include/linux/ip.h
F:	include/linux/ipv6*
F:	Documentation/netlink/specs/rt-addr.yaml
F:	Documentation/netlink/specs/rt-neigh.yaml
F:	Documentation/netlink/specs/rt-route.yaml
F:	Documentation/netlink/specs/rt-rule.yaml
F:	include/linux/inetdevice.h
F:	include/linux/mroute*
F:	include/net/addrconf.h
F:	include/net/arp.h
F:	include/net/fib*
F:	include/net/if_inet6.h
F:	include/net/inetpeer.h
F:	include/net/ip*
F:	include/net/lwtunnel.h
F:	include/net/ndisc.h
F:	include/net/netns/nexthop.h
F:	include/net/nexthop.h
F:	include/net/route.h
F:	net/ipv4/
F:	net/ipv6/
F:	include/uapi/linux/fib_rules.h
F:	include/uapi/linux/in_route.h
F:	include/uapi/linux/mroute*
F:	include/uapi/linux/nexthop.h
F:	net/core/fib*
F:	net/core/lwtunnel.c
F:	net/ipv4/arp.c
F:	net/ipv4/devinet.c
F:	net/ipv4/fib*
F:	net/ipv4/icmp.c
F:	net/ipv4/igmp.c
F:	net/ipv4/inet_fragment.c
F:	net/ipv4/inetpeer.c
F:	net/ipv4/ip*
F:	net/ipv4/metrics.c
F:	net/ipv4/netlink.c
F:	net/ipv4/nexthop.c
F:	net/ipv4/route.c
F:	net/ipv6/addr*
F:	net/ipv6/anycast.c
F:	net/ipv6/exthdrs.c
F:	net/ipv6/exthdrs_core.c
F:	net/ipv6/fib*
F:	net/ipv6/icmp.c
F:	net/ipv6/ip*
F:	net/ipv6/mcast*
F:	net/ipv6/ndisc.c
F:	net/ipv6/output_core.c
F:	net/ipv6/reassembly.c
F:	net/ipv6/route.c
F:	tools/testing/selftests/net/fib*
F:	tools/testing/selftests/net/forwarding/
NETWORKING [LABELED] (NetLabel, Labeled IPsec, SECMARK)
M:	Paul Moore <paul@paul-moore.com>
@@ -18819,18 +18859,11 @@ F: Documentation/networking/net_failover.rst
F:	drivers/net/net_failover.c
F:	include/net/net_failover.h
NEXTHOP
M:	David Ahern <dsahern@kernel.org>
L:	netdev@vger.kernel.org
S:	Maintained
F:	include/net/netns/nexthop.h
F:	include/net/nexthop.h
F:	include/uapi/linux/nexthop.h
F:	net/ipv4/nexthop.c
NFC SUBSYSTEM
L:	netdev@vger.kernel.org
S:	Orphan
M:	David Heidelberg <david+nfc@ixit.cz>
L:	oe-linux-nfc@lists.linux.dev
S:	Maintained
T:	git https://codeberg.org/linux-nfc/linux.git
F:	Documentation/devicetree/bindings/net/nfc/
F:	drivers/nfc/
F:	include/net/nfc/
@@ -20774,6 +20807,7 @@ M: Dominik Brodowski <linux@dominikbrodowski.net>
S:	Odd Fixes
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/brodo/linux.git
F:	Documentation/pcmcia/
F:	drivers/net/ethernet/8390/pcnet_cs.c
F:	drivers/pcmcia/
F:	include/pcmcia/
F:	tools/pcmcia/
+10 −0
Original line number Diff line number Diff line
@@ -900,11 +900,21 @@ int dpll_pin_delete_ntf(struct dpll_pin *pin)
	return dpll_pin_event_send(DPLL_CMD_PIN_DELETE_NTF, pin);
}

/**
 * __dpll_pin_change_ntf - notify that the pin has been changed
 * @pin: registered pin pointer
 *
 * Context: caller must hold dpll_lock. Suitable for use inside pin
 *          callbacks which are already invoked under dpll_lock.
 * Return: 0 if succeeds, error code otherwise.
 */
int __dpll_pin_change_ntf(struct dpll_pin *pin)
{
	lockdep_assert_held(&dpll_lock);
	dpll_pin_notify(pin, DPLL_PIN_CHANGED);
	return dpll_pin_event_send(DPLL_CMD_PIN_CHANGE_NTF, pin);
}
EXPORT_SYMBOL_GPL(__dpll_pin_change_ntf);

/**
 * dpll_pin_change_ntf - notify that the pin has been changed
+0 −2
Original line number Diff line number Diff line
@@ -11,5 +11,3 @@ int dpll_device_delete_ntf(struct dpll_device *dpll);
int dpll_pin_create_ntf(struct dpll_pin *pin);

int dpll_pin_delete_ntf(struct dpll_pin *pin);

int __dpll_pin_change_ntf(struct dpll_pin *pin);
+3 −0
Original line number Diff line number Diff line
@@ -529,6 +529,9 @@ static int bareudp_fill_metadata_dst(struct net_device *dev,
		struct in6_addr saddr;
		struct socket *sock = rcu_dereference(bareudp->sock);

		if (!sock)
			return -ESHUTDOWN;

		dst = udp_tunnel6_dst_lookup(skb, dev, bareudp->net, sock,
					     0, &saddr, &info->key,
					     sport, bareudp->port, info->key.tos,
Loading