Commit fe9f4ee6c61a for kernel

commit fe9f4ee6c61a1410afd73bf011de5ae618004796
Merge: 1105ef941c1a e83d0a247261
Author: Jakub Kicinski <kuba@kernel.org>
Date:   Thu Jun 25 10:09:02 2026 -0700

    Merge branch 'net-avoid-nested-up-notifier-events'

    Jakub Kicinski says:

    ====================
    net: avoid nested UP notifier events

    syzbot reported that recent ethtool rework leads to deadlock
    on stacked devices. VLANs create nested notifications, confusing
    execution context. Bringing up dummy causes vlan to bring itself
    up as well. Which in turn causes bond to ask for link state -
    a call chain traveling in the opposite direction.

      bond    (3) bond_update_speed_duplex(vlan)
        |           ^                v
      vlan    (2) UP(vlan)    (4) vlan_ethtool_get_link_ksettings()
        |           ^                v
      dummy   (1) UP(dummy)   (5) __ethtool_get_link_ksettings()

    We locked the instance lock of dummy at (1) and will will
    try to lock it again at (5) - which of course deadlocks.

    For non-nested notifications this is avoided because NETDEV_UP
    is always run ops-locked (so that bond asks for link using the
    netif_ API which assumes instance lock already held). The nesting,
    however, makes this problematic, we cannot carry the state of
    the whole chain back in the opposite direction.

    AFAICT vlan is the only driver which causes such issues.
    So let's try a localized fix of deferring vlan auto-open
    to a workqueue.
    ====================

    Link: https://patch.msgid.link/20260624182018.2445732-1-kuba@kernel.org
    Signed-off-by: Jakub Kicinski <kuba@kernel.org>