Commit d44cd822 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull networking fixes from Paolo Abeni:
 "Including fixes from netfiler, xfrm and bluetooth.

  Oddly this includes a fix for a posix clock regression; in our
  previous PR we included a change there as a pre-requisite for
  networking one. That fix proved to be buggy and requires the follow-up
  included here. Thomas suggested we should send it, given we sent the
  buggy patch.

  Current release - regressions:

   - posix-clock: Fix unbalanced locking in pc_clock_settime()

   - netfilter: fix typo causing some targets not to load on IPv6

  Current release - new code bugs:

   - xfrm: policy: remove last remnants of pernet inexact list

  Previous releases - regressions:

   - core: fix races in netdev_tx_sent_queue()/dev_watchdog()

   - bluetooth: fix UAF on sco_sock_timeout

   - eth: hv_netvsc: fix VF namespace also in synthetic NIC
     NETDEV_REGISTER event

   - eth: usbnet: fix name regression

   - eth: be2net: fix potential memory leak in be_xmit()

   - eth: plip: fix transmit path breakage

  Previous releases - always broken:

   - sched: deny mismatched skip_sw/skip_hw flags for actions created by
     classifiers

   - netfilter: bpf: must hold reference on net namespace

   - eth: virtio_net: fix integer overflow in stats

   - eth: bnxt_en: replace ptp_lock with irqsave variant

   - eth: octeon_ep: add SKB allocation failures handling in
     __octep_oq_process_rx()

  Misc:

   - MAINTAINERS: add Simon as an official reviewer"

* tag 'net-6.12-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (40 commits)
  net: dsa: mv88e6xxx: support 4000ps cycle counter period
  net: dsa: mv88e6xxx: read cycle counter period from hardware
  net: dsa: mv88e6xxx: group cycle counter coefficients
  net: usb: qmi_wwan: add Fibocom FG132 0x0112 composition
  hv_netvsc: Fix VF namespace also in synthetic NIC NETDEV_REGISTER event
  net: dsa: microchip: disable EEE for KSZ879x/KSZ877x/KSZ876x
  Bluetooth: ISO: Fix UAF on iso_sock_timeout
  Bluetooth: SCO: Fix UAF on sco_sock_timeout
  Bluetooth: hci_core: Disable works on hci_unregister_dev
  posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime()
  r8169: avoid unsolicited interrupts
  net: sched: use RCU read-side critical section in taprio_dump()
  net: sched: fix use-after-free in taprio_change()
  net/sched: act_api: deny mismatched skip_sw/skip_hw flags for actions created by classifiers
  net: usb: usbnet: fix name regression
  mlxsw: spectrum_router: fix xa_store() error checking
  virtio_net: fix integer overflow in stats
  net: fix races in netdev_tx_sent_queue()/dev_watchdog()
  net: wwan: fix global oob in wwan_rtnl_policy
  netfilter: xtables: fix typo causing some targets not to load on IPv6
  ...
parents c9a50b90 9efc44fb
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -306,6 +306,11 @@ Jens Axboe <axboe@kernel.dk> <axboe@fb.com>
Jens Axboe <axboe@kernel.dk> <axboe@meta.com>
Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Jernej Skrabec <jernej.skrabec@gmail.com> <jernej.skrabec@siol.net>
Jesper Dangaard Brouer <hawk@kernel.org> <brouer@redhat.com>
Jesper Dangaard Brouer <hawk@kernel.org> <hawk@comx.dk>
Jesper Dangaard Brouer <hawk@kernel.org> <jbrouer@redhat.com>
Jesper Dangaard Brouer <hawk@kernel.org> <jdb@comx.dk>
Jesper Dangaard Brouer <hawk@kernel.org> <netoptimizer@brouer.com>
Jessica Zhang <quic_jesszhan@quicinc.com> <jesszhan@codeaurora.org>
Jilai Wang <quic_jilaiw@quicinc.com> <jilaiw@codeaurora.org>
Jiri Kosina <jikos@kernel.org> <jikos@jikos.cz>
+2 −0
Original line number Diff line number Diff line
@@ -16042,6 +16042,7 @@ M: "David S. Miller" <davem@davemloft.net>
M:	Eric Dumazet <edumazet@google.com>
M:	Jakub Kicinski <kuba@kernel.org>
M:	Paolo Abeni <pabeni@redhat.com>
R:	Simon Horman <horms@kernel.org>
L:	netdev@vger.kernel.org
S:	Maintained
P:	Documentation/process/maintainer-netdev.rst
@@ -16084,6 +16085,7 @@ F: include/uapi/linux/rtnetlink.h
F:	lib/net_utils.c
F:	lib/random32.c
F:	net/
F:	samples/pktgen/
F:	tools/net/
F:	tools/testing/selftests/net/
X:	Documentation/networking/mac80211-injection.rst
+11 −10
Original line number Diff line number Diff line
@@ -2733,26 +2733,27 @@ static u32 ksz_get_phy_flags(struct dsa_switch *ds, int port)
			return MICREL_KSZ8_P1_ERRATA;
		break;
	case KSZ8567_CHIP_ID:
		/* KSZ8567R Errata DS80000752C Module 4 */
	case KSZ8765_CHIP_ID:
	case KSZ8794_CHIP_ID:
	case KSZ8795_CHIP_ID:
		/* KSZ879x/KSZ877x/KSZ876x Errata DS80000687C Module 2 */
	case KSZ9477_CHIP_ID:
		/* KSZ9477S Errata DS80000754A Module 4 */
	case KSZ9567_CHIP_ID:
		/* KSZ9567S Errata DS80000756A Module 4 */
	case KSZ9896_CHIP_ID:
		/* KSZ9896C Errata DS80000757A Module 3 */
	case KSZ9897_CHIP_ID:
		/* KSZ9477 Errata DS80000754C
		 *
		 * Module 4: Energy Efficient Ethernet (EEE) feature select must
		 * be manually disabled
		/* KSZ9897R Errata DS80000758C Module 4 */
		/* Energy Efficient Ethernet (EEE) feature select must be manually disabled
		 *   The EEE feature is enabled by default, but it is not fully
		 *   operational. It must be manually disabled through register
		 *   controls. If not disabled, the PHY ports can auto-negotiate
		 *   to enable EEE, and this feature can cause link drops when
		 *   linked to another device supporting EEE.
		 *
		 * The same item appears in the errata for the KSZ9567, KSZ9896,
		 * and KSZ9897.
		 *
		 * A similar item appears in the errata for the KSZ8567, but
		 * provides an alternative workaround. For now, use the simple
		 * workaround of disabling the EEE feature for this device too.
		 * The same item appears in the errata for all switches above.
		 */
		return MICREL_NO_EEE;
	}
+2 −4
Original line number Diff line number Diff line
@@ -206,6 +206,7 @@ struct mv88e6xxx_gpio_ops;
struct mv88e6xxx_avb_ops;
struct mv88e6xxx_ptp_ops;
struct mv88e6xxx_pcs_ops;
struct mv88e6xxx_cc_coeffs;

struct mv88e6xxx_irq {
	u16 masked;
@@ -408,6 +409,7 @@ struct mv88e6xxx_chip {
	struct cyclecounter	tstamp_cc;
	struct timecounter	tstamp_tc;
	struct delayed_work	overflow_work;
	const struct mv88e6xxx_cc_coeffs *cc_coeffs;

	struct ptp_clock	*ptp_clock;
	struct ptp_clock_info	ptp_clock_info;
@@ -731,10 +733,6 @@ struct mv88e6xxx_ptp_ops {
	int arr1_sts_reg;
	int dep_sts_reg;
	u32 rx_filters;
	u32 cc_shift;
	u32 cc_mult;
	u32 cc_mult_num;
	u32 cc_mult_dem;
};

struct mv88e6xxx_pcs_ops {
+1 −0
Original line number Diff line number Diff line
@@ -1713,6 +1713,7 @@ int mv88e6393x_port_set_policy(struct mv88e6xxx_chip *chip, int port,
	ptr = shift / 8;
	shift %= 8;
	mask >>= ptr * 8;
	ptr <<= 8;

	err = mv88e6393x_port_policy_read(chip, port, ptr, &reg);
	if (err)
Loading